File size: 1,609 Bytes
ea6d989
2303553
ea6d989
120ba68
3b87fd3
ea6d989
19cc9ea
 
ea6d989
 
3615528
ea6d989
19cc9ea
ea6d989
120ba68
3615528
120ba68
68b760b
151409b
19cc9ea
c399bc6
 
 
 
 
19cc9ea
661e819
19cc9ea
c399bc6
151409b
c399bc6
151409b
19cc9ea
6b2b610
 
 
 
661e819
641c2e2
6330b0a
6b2b610
 
120ba68
53bbd44
68b760b
6b2b610
 
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
47
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, cuantos):

    #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, cuantos)
    #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()
            number_input = gr.Number()
            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, number_input], outputs=text_output, api_name="debitTokens")

demo.launch()