Spaces:
Running
Running
import time | |
import avaimet | |
import gradio as gr | |
def getAccess(userfile): | |
#Genera conexi贸n inicial. | |
sshListo, sftpListo = avaimet.conecta() | |
#Obtiene la caja donde est谩 guardados los tokens. | |
caja = avaimet.obtenCaja(userfile) | |
#Obtiene los tokens que hay en esa caja. | |
tokens = avaimet.obtenTokens(sftpListo, caja) | |
#Cierra la conexi贸n. | |
avaimet.cierraConexion(sshListo, sftpListo) | |
return tokens | |
def debitTokens(userfile, work): | |
print(f"Task received : {work}, type: {type(work)} ...") | |
#Genera conexi贸n inicial. | |
sshListo, sftpListo = avaimet.conecta() | |
#Obtiene la caja donde est谩 guardados los tokens. | |
caja = avaimet.obtenCaja(userfile) | |
#Obtiene los tokens que hay en esa caja. | |
tokens = avaimet.obtenTokens(sftpListo, caja) | |
#Aplica las reglas de 茅sta app para debitar lo correspondiente. | |
resultado_debitado = avaimet.restaToken(sftpListo, caja, tokens, work) | |
#Cierra la conexi贸n. | |
avaimet.cierraConexion(sshListo, sftpListo) | |
return resultado_debitado | |
#Interfaz Gr谩fica | |
with gr.Blocks() as demo: | |
with gr.Row(): | |
with gr.Column(): | |
text_input = gr.Textbox() | |
work_catalogue = gr.Dropdown( | |
["picswap", "dog", "bird"], label="Catalogo", info="Will add more works later!" | |
) | |
access_btn = gr.Button(value="Submit") | |
debit_btn = gr.Button(value="Debit") | |
with gr.Column(): | |
text_output = gr.Textbox() | |
access_btn.click(fn=getAccess, inputs=text_input, outputs=text_output, api_name="getTokens") | |
debit_btn.click(fn=debitTokens, inputs=[text_input, work_catalogue], outputs=text_output, api_name="debitTokens") | |
demo.launch() |