Moibe
Ready for prod
19cc9ea
raw
history blame
1.54 kB
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 debitToken(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)
#Aplica las reglas de 茅sta app para debitar lo correspondiente.
resultado_debitado = avaimet.aplicaReglas(sftpListo, caja, tokens)
#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()
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=debitToken, inputs=text_input, outputs=text_output, api_name="debitTokens")
demo.launch()