Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -10,6 +10,7 @@ from streamlit_player import st_player
|
|
| 10 |
import smtplib
|
| 11 |
from email.mime.multipart import MIMEMultipart
|
| 12 |
from email.mime.text import MIMEText
|
|
|
|
| 13 |
|
| 14 |
# Configuraci贸n de la interfaz
|
| 15 |
st.set_page_config(page_title="SURVEY ASSISTANT", layout="wide")
|
|
@@ -182,7 +183,7 @@ def encuesta_asistente():
|
|
| 182 |
st.session_state.historial.append({"role": "assistant", "content": respuesta_asistente})
|
| 183 |
|
| 184 |
# Verificar si el asistente hace una pregunta adicional
|
| 185 |
-
if "pregunta"
|
| 186 |
st.session_state.preguntas_adicionales.append(respuesta_asistente)
|
| 187 |
st.session_state.respuestas_adicionales_completadas = False
|
| 188 |
|
|
@@ -202,7 +203,6 @@ def encuesta_asistente():
|
|
| 202 |
st.write("Gracias por responder todas las preguntas. Haz clic en 'Registrar Encuesta' para finalizar y generar el archivo descargable.")
|
| 203 |
if st.button("Registrar Encuesta"):
|
| 204 |
st.session_state.encuesta_completada = True
|
| 205 |
-
generar_documento() # Generar el documento al finalizar la encuesta
|
| 206 |
enviar_correo(resumen)
|
| 207 |
st.success("Encuesta completada exitosamente. Haz clic en 'Obtener Resultado de la Encuesta' para descargar el archivo.")
|
| 208 |
|
|
@@ -241,14 +241,29 @@ def encuesta_asistente():
|
|
| 241 |
""",
|
| 242 |
unsafe_allow_html=True
|
| 243 |
)
|
| 244 |
-
|
| 245 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 246 |
doc = Document()
|
| 247 |
doc.add_heading('Respuestas de la Encuesta', 0)
|
| 248 |
-
|
|
|
|
| 249 |
doc.add_heading(pregunta, level=1)
|
| 250 |
doc.add_paragraph(respuesta)
|
|
|
|
|
|
|
| 251 |
doc.save(temp_file.name)
|
|
|
|
| 252 |
with open(temp_file.name, "rb") as file:
|
| 253 |
st.download_button(
|
| 254 |
label="Descargar Archivo",
|
|
@@ -258,13 +273,6 @@ def encuesta_asistente():
|
|
| 258 |
key="btn_descargar_archivo"
|
| 259 |
)
|
| 260 |
|
| 261 |
-
def generar_resumen(respuestas):
|
| 262 |
-
# Generar un resumen en formato de texto
|
| 263 |
-
resumen = "Este es el asistente configurado de acuerdo a sus respuestas:\n\n"
|
| 264 |
-
for pregunta, respuesta in respuestas.items():
|
| 265 |
-
resumen += f"{pregunta}: {respuesta}\n"
|
| 266 |
-
return resumen
|
| 267 |
-
|
| 268 |
def enviar_correo(resumen):
|
| 269 |
remitente = "tucorreo@gmail.com"
|
| 270 |
destinatario = "josedcape@gmail.com"
|
|
@@ -288,7 +296,7 @@ def enviar_correo(resumen):
|
|
| 288 |
|
| 289 |
# Funci贸n para incrustar video en la p谩gina principal
|
| 290 |
def incrustar_video_principal():
|
| 291 |
-
video_url = "https://www.youtube.com/watch?v=uGzZe1LxVPk"
|
| 292 |
st_player(video_url, playing=True, volume=100)
|
| 293 |
|
| 294 |
# Estilos personalizados
|
|
@@ -391,14 +399,5 @@ def main():
|
|
| 391 |
elif page == "video":
|
| 392 |
pagina_ver_video()
|
| 393 |
|
| 394 |
-
# Bot贸n para deshacer cambios y volver al men煤 principal
|
| 395 |
-
if st.sidebar.button("Deshacer cambios"):
|
| 396 |
-
st.session_state.clear()
|
| 397 |
-
st.experimental_rerun()
|
| 398 |
-
|
| 399 |
-
if st.sidebar.button("Volver al men煤 principal"):
|
| 400 |
-
st.experimental_set_query_params(page="principal")
|
| 401 |
-
st.experimental_rerun()
|
| 402 |
-
|
| 403 |
if __name__ == "__main__":
|
| 404 |
main()
|
|
|
|
| 10 |
import smtplib
|
| 11 |
from email.mime.multipart import MIMEMultipart
|
| 12 |
from email.mime.text import MIMEText
|
| 13 |
+
from email.mime.application import MIMEApplication
|
| 14 |
|
| 15 |
# Configuraci贸n de la interfaz
|
| 16 |
st.set_page_config(page_title="SURVEY ASSISTANT", layout="wide")
|
|
|
|
| 183 |
st.session_state.historial.append({"role": "assistant", "content": respuesta_asistente})
|
| 184 |
|
| 185 |
# Verificar si el asistente hace una pregunta adicional
|
| 186 |
+
if "pregunta" in respuesta_asistente.lower() and len(st.session_state.preguntas_adicionales) < 3:
|
| 187 |
st.session_state.preguntas_adicionales.append(respuesta_asistente)
|
| 188 |
st.session_state.respuestas_adicionales_completadas = False
|
| 189 |
|
|
|
|
| 203 |
st.write("Gracias por responder todas las preguntas. Haz clic en 'Registrar Encuesta' para finalizar y generar el archivo descargable.")
|
| 204 |
if st.button("Registrar Encuesta"):
|
| 205 |
st.session_state.encuesta_completada = True
|
|
|
|
| 206 |
enviar_correo(resumen)
|
| 207 |
st.success("Encuesta completada exitosamente. Haz clic en 'Obtener Resultado de la Encuesta' para descargar el archivo.")
|
| 208 |
|
|
|
|
| 241 |
""",
|
| 242 |
unsafe_allow_html=True
|
| 243 |
)
|
| 244 |
+
generar_documento()
|
| 245 |
+
|
| 246 |
+
def generar_resumen(respuestas):
|
| 247 |
+
# Generar un resumen en formato de texto
|
| 248 |
+
resumen = "Este es el asistente configurado de acuerdo a sus respuestas:\n\n"
|
| 249 |
+
for pregunta, respuesta in respuestas.items():
|
| 250 |
+
resumen += f"{pregunta}: {respuesta}\n"
|
| 251 |
+
return resumen
|
| 252 |
+
|
| 253 |
+
def generar_documento():
|
| 254 |
+
if 'respuestas' in st.session_state:
|
| 255 |
+
respuestas = st.session_state.respuestas
|
| 256 |
+
|
| 257 |
doc = Document()
|
| 258 |
doc.add_heading('Respuestas de la Encuesta', 0)
|
| 259 |
+
|
| 260 |
+
for pregunta, respuesta in respuestas.items():
|
| 261 |
doc.add_heading(pregunta, level=1)
|
| 262 |
doc.add_paragraph(respuesta)
|
| 263 |
+
|
| 264 |
+
temp_file = tempfile.NamedTemporaryFile(delete=False, suffix=".docx")
|
| 265 |
doc.save(temp_file.name)
|
| 266 |
+
|
| 267 |
with open(temp_file.name, "rb") as file:
|
| 268 |
st.download_button(
|
| 269 |
label="Descargar Archivo",
|
|
|
|
| 273 |
key="btn_descargar_archivo"
|
| 274 |
)
|
| 275 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 276 |
def enviar_correo(resumen):
|
| 277 |
remitente = "tucorreo@gmail.com"
|
| 278 |
destinatario = "josedcape@gmail.com"
|
|
|
|
| 296 |
|
| 297 |
# Funci贸n para incrustar video en la p谩gina principal
|
| 298 |
def incrustar_video_principal():
|
| 299 |
+
video_url = "https://www.youtube.com/watch?v=uGzZe1LxVPk"
|
| 300 |
st_player(video_url, playing=True, volume=100)
|
| 301 |
|
| 302 |
# Estilos personalizados
|
|
|
|
| 399 |
elif page == "video":
|
| 400 |
pagina_ver_video()
|
| 401 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 402 |
if __name__ == "__main__":
|
| 403 |
main()
|