File size: 1,535 Bytes
75c509f
629fd46
75c509f
bc14969
cfb5a4a
75c509f
2108703
 
75c509f
 
93db0ec
75c509f
2108703
75c509f
bc14969
93db0ec
bc14969
2675d83
80e2b08
2108703
2675d83
 
 
 
 
2108703
2675d83
2108703
2675d83
80e2b08
2675d83
80e2b08
2108703
867e2cf
 
 
 
1746e25
91783aa
867e2cf
 
bc14969
9e739ef
2108703
867e2cf
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
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()