def controlador_accion_Confirmar(hermes, MensajeIntent, conf): global Snips Snips.log(None, Snips.usuario, 'Voz', 'Evento aceptado', '') evento = ultimoEventoRecordatorioPorUsuario() print(evento.__str__()) if (evento): if (Snips.EventoActivo(evento)): mensaje = 'Aceptando ' + evento.__str__() if (not evento.rep): Snips.EventoFinalizado(evento) job = 'Evento no repetitivo: recordando tomar ' + evento.med + ' a ' + evento.usuario else: Snips.NingunaVez(evento) job = 'Evento repetitivo: recordando tomar ' + evento.med + ' a ' + evento.usuario + ' cada ' + evento.cuando if (existe_Trabajo1(job)): Snips.planificador1.remove_job(job) hermes.publish_end_session(MensajeIntent.session_id, mensaje) else: hermes.publish_end_session( MensajeIntent.session_id, 'No existe ningún recordatorio a confirmar') else: hermes.publish_end_session( MensajeIntent.session_id, 'No existe ningún recordatorio a confirmar')
def run(self): while True: estado = GPIO.input(self.BOTON) if estado: global Snips Snips.log(None, Snips.usuario, 'Botón', 'Evento aceptado', '') evento = ultimoEventoRecordatorioPorUsuario() print(evento.__str__()) if (evento): if (Snips.EventoActivo(evento)): print('Activo') mensaje = 'Aceptando ' + evento.__str__() if (not evento.rep): # print('No repetitivo') Snips.EventoFinalizado(evento) trabajo = 'Evento no repetitivo: recordando tomar ' + evento.med + ' a ' + evento.usuario else: # print('Repetitivo') Snips.NingunaVez(evento) trabajo = 'Evento repetitivo: recordando tomar ' + evento.med + ' a ' + evento.usuario + ' cada ' + evento.cuando if (self.existe_Trabajo(trabajo)): Snips.planificador1.remove_job(trabajo) say('default', mensaje) else: say('default', 'No existe ningún recordatorio a confirmar') else: say('default', 'No existe ningún recordatorio a confirmar') time.sleep(1)
def recordatorioTomar(e, intentMessage, Snips): if (Snips.EventoActivo(e)): if (e.usuario == Snips.usuario): with Hermes(mqtt_options=MqttOptions()) as clienteMQTT: if (e.veces < 6): Snips.log(e, Snips.usuario, '', 'Recordatorio', '') clienteMQTT.publish_start_session_action( site_id=intentMessage, session_init_text=e.usuario + '¿ te has tomado ' + e.med + '?', session_init_intent_filter=[ "caguilary:Confirmar", "caguilary:Negar" ], session_init_can_be_enqueued=True, session_init_send_intent_not_recognized=True, custom_data=None) mensaje = "" print(e.usuario + '¿te has tomado ' + e.med + '?:Vez ' + str(e.veces)) Snips.Incrementar(e) e.IncrementarVeces() clienteMQTT.publish_end_session(intentMessage, mensaje) else: mensaje = e.usuario + ' ha ignorado el evento tomar ' + e.med say(intentMessage, mensaje) if (not e.rep): Snips.EventoFinalizado(e) else: Snips.NingunaVez(e) if (e.rep): Snips.planificador1.remove_job( 'Evento repetitivo: recordando tomar ' + e.med + ' a ' + e.usuario + ' cada ' + e.cuando) else: Snips.planificador1.remove_job( 'Evento no repetitivo: recordando tomar ' + e.med + ' a ' + e.usuario) clienteMQTT.publish_end_session(intentMessage, mensaje) else: print("Usuario actual distinto al del evento") if (e.rep): Snips.planificador1.remove_job( 'Evento repetitivo: recordando tomar ' + e.med + ' a ' + e.usuario + ' cada ' + e.cuando) else: Snips.planificador1.remove_job( 'Evento no repetitivo: recordando tomar ' + e.med + ' a ' + e.usuario) else: print("El evento ya ha sido confirmado") if (e.rep): Snips.planificador1.remove_job( 'Evento repetitivo: recordando tomar ' + e.med + ' a ' + e.usuario + ' cada ' + e.cuando) else: Snips.planificador1.remove_job( 'Evento no repetitivo: recordando tomar ' + e.med + ' a ' + e.usuario)