💾 Archived View for gmi.bacardi55.io › blog › 2017 › 11 › 07 › kalliope-reminder-with-snooze captured on 2024-06-16 at 13:04:27. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-01-29)
-=-=-=-=-=-=-
Posted on 2017-11-07
Quick blog post to talk about how I setup Kalliope to remind me stuff, but with a snooze feature.
The default setup of the neurotimer[1] let you ask Kalliope to remind you stuff after some time (minutes or hours).
1: https://github.com/kalliope-project/kalliope/tree/dev/kalliope/neurons/neurotimer
I really like it because I have a poor short term memory, so when I have something to do in 30min, I use the kalliope neurotimer module to help me remember... But sometime, I want Kalliope to remind me again after 5 min because I didn't have the time to do at the time Kalliope reminded me.
Let's take a real life use case:
Let's say I am in a game (starcraft2 fan here ^^) and someone is calling me. When in a game, I can't (don't want to) pick up the phone, but I want to remember to call back the person. For this I'm using the neurotimer to do so, with a sentence like "Remind me in XX minutes to YYY".
This is the default setup explained in the neurotimer README file here[2].
2: https://github.com/kalliope-project/kalliope/tree/dev/kalliope/neurons/neurotimer
But that is not enough for me, because I may be still in game when being reminded by Kalliope, so I want to have the ability to tell kalliope to remind me again in X minutes, without re-asking the full order like before.
The workflow I want:
Me: "Kalliope… remind me in 10 minutes to call back dad" Kalliope: "I'll remind you in 10 minutes to call back dad" [… 10minutes later …] Kalliope: "You asked me to remind you call back dad" Kalliope: "Do you want me to remind you again?" option1: (I want another reminder) Me: "Yes" Kalliope: "When?" Me: "In 5 minutes" [… 5 minutes later …] Kalliope: "You asked me to remind you to call back dad" *Option: Again, I'm in a sort of a loop here, so as long as I say "yes", it will remind me again until I say no (or anything other than yes).* Option2: Me: "No" Kalliope: "Ok, I won't remind you again."
So how does it work? I'm using the Neurotimer module, with the Neurotransmitter and the Kalliope memory to do so.
It does bring a limitation though, as you can't have multi reminder with "snooze" as the memory will only remember the last one.
My configuration to do so is the following:
Brain file:
{% raw %} --- - name: "reminder-synapse" signals: - order: "remind me to {{ remember }} in {{ time }} minutes" neurons: - neurotimer: minutes: "{{ time }}" synapse: "reminder-todo" forwarded_parameters: remember: "{{ remember }}" kalliope_memory: reminder_2: "{{ remember }}" - say: message: - "Ok sir, reminder setup" - name: "reminder-todo" signals: - order: "reminder_todo_no_order" neurons: - say: message: - "Sir, you asked me to remind you to {{ remember }}" - say: message: "Do you want me to remind you again ?" - neurotransmitter: from_answer_link: - synapse: "reminder2" answers: - "oui" - synapse: "no-response" answers: - "non" default: "no-response" - name: "reminder2" signals: - order: "reminder2-no-order" neurons: - say: message: "When do I have to remind you to {{ kalliope_memory['reminder_2'] }} ?" - neurotransmitter: from_answer_link: - synapse: "reminder-via-memory" answers: - "in {{time}} minutes" - synapse: "reminder-via-memory" answers: - "dans {{time}} minutes" default: "no-response" - name: "reminder-via-memory" signals: - order: "reminder-via-memory-no-order" neurons: - neurotimer: minutes: "{{ time }}" synapse: "reminder-todo" forwarded_parameters: remember: "{{ kalliope_memory['reminder_2'] }}" - say: message: - "Ok, I'll remind you in {{time}} minutes to {{ kalliope_memory['reminder_2'] }}" {% endraw %}
Nota: The "no-response" is a default synapse I created that simply answer "ok sir" or something like this :).
And voilĂ :)