Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -15,30 +15,8 @@ def gmail_interface(accion, parametros):
|
|
| 15 |
except json.JSONDecodeError as e:
|
| 16 |
return "Error al decodificar JSON: " + str(e), "" # Devolver dos valores
|
| 17 |
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
print(f"Auth code recibido: {auth_code}") # Depuraci贸n
|
| 21 |
-
try:
|
| 22 |
-
flow = InstalledAppFlow.from_client_secrets_file(
|
| 23 |
-
'credentials.json', comunicacion_gmail.SCOPES) # Accede a SCOPES desde comunicacion_gmail
|
| 24 |
-
flow.fetch_token(code=auth_code)
|
| 25 |
-
creds = flow.credentials
|
| 26 |
-
with open('token.pickle', 'wb') as token:
|
| 27 |
-
pickle.dump(creds, token)
|
| 28 |
-
except Exception as e:
|
| 29 |
-
return f"Error en la autorizaci贸n OAuth: {e}"
|
| 30 |
-
# Vuelve a llamar a gmail_tool para ejecutar la acci贸n original (sin el auth_code)
|
| 31 |
-
del parametros["auth_code"] # Eliminar auth_code antes de la siguiente llamada
|
| 32 |
-
resultado = comunicacion_gmail.gmail_tool(accion, parametros)
|
| 33 |
-
else:
|
| 34 |
-
resultado = comunicacion_gmail.gmail_tool(accion, parametros)
|
| 35 |
-
else: # Si no hay par谩metros, llama a gmail_tool
|
| 36 |
-
resultado = comunicacion_gmail.gmail_tool(accion) # No enviar parametros vac铆os
|
| 37 |
-
|
| 38 |
-
if "requires_auth" in resultado and resultado["requires_auth"]:
|
| 39 |
-
auth_url = resultado["auth_url"]
|
| 40 |
-
return gr.update(visible=True, value=f"Por favor, visita esta URL para autorizar la aplicaci贸n:\n{auth_url}\n\nLuego, copia el c贸digo de autorizaci贸n y p茅galo aqu铆 como par谩metro JSON: {{\"auth_code\": \"TU_CODIGO\"}}."), gr.update(visible=True) # Deja el campo para pegar el c贸digo visible
|
| 41 |
-
|
| 42 |
|
| 43 |
# Formatear la respuesta de gmail_tool
|
| 44 |
if accion == "leer_correos":
|
|
@@ -81,4 +59,4 @@ iface = gr.Interface(
|
|
| 81 |
allow_flagging="never",
|
| 82 |
)
|
| 83 |
|
| 84 |
-
iface.queue().launch(share=True) #
|
|
|
|
| 15 |
except json.JSONDecodeError as e:
|
| 16 |
return "Error al decodificar JSON: " + str(e), "" # Devolver dos valores
|
| 17 |
|
| 18 |
+
|
| 19 |
+
resultado = comunicacion_gmail.gmail_tool(accion)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 20 |
|
| 21 |
# Formatear la respuesta de gmail_tool
|
| 22 |
if accion == "leer_correos":
|
|
|
|
| 59 |
allow_flagging="never",
|
| 60 |
)
|
| 61 |
|
| 62 |
+
iface.queue(concurrency_count=5).launch(share=True) # A帽ade concurrency_count para manejar m煤ltiples solicitudes
|