Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Uh - shouldn't a reminder "remind"? #30

Open
muonIT opened this issue Oct 31, 2019 · 3 comments
Open

Uh - shouldn't a reminder "remind"? #30

muonIT opened this issue Oct 31, 2019 · 3 comments

Comments

@muonIT
Copy link

muonIT commented Oct 31, 2019

Hi,
I'm diving a little deeper into mycroft and am a little puzzled: if I set a reminder for e.g. tomorrow at 9 am, I expect mycroft to remind me. Then, and if I don't acknowledge it, in (e.g. increasingly large) intervals.
But after an initial announcement right before the event, 3 beeps at (1 min) intervals after the event - I get nothing.
Why not utter the reminder again at/after the event, at 1min, 2, 3, 5, 10, 15, 30, 1h until acknowledged?
I ask if there is a reason for this behaviour, I might be able to fix it myself - but my python isn't too good.
Cheers,
Udo

@forslund
Copy link
Collaborator

Earlier it continued to remind (at 1 minute intervals)...But it was deemed too annoying if an the reminder wasn't acknowleded (user wasn't at home or something) So it was shortened to three retries. An escalating period might be an improvement... And maybe a presentation when the user activates the unit. "There is one overdue reminder: ..."

Or something similar?

@muonIT
Copy link
Author

muonIT commented Dec 17, 2019

My suggestion would be sth like this:

  • increasing intervals on the same day/within 24h: 1 Min, 2, 4, 8, 16, 32, 64, 128, 256, 512 (easy to implement)
  • After that, when the user interacts with mycroft, add at the end of the other request: "BTW, you had a reminder at <...> for ..."
    That would't be too annoying and would really fulfill the word "reminder" ;-)

@muonIT
Copy link
Author

muonIT commented Dec 20, 2019

diff /opt/mycroft/skills/mycroft-reminder.mycroftai/__init__.py.bak /opt/mycroft/skills/mycroft-reminder.mycroftai/__init__.py.

bak 
16a17
> import math
127c128
<         """ The reminder is removed and rescheduled to repeat in 2 minutes.
---
>         """ The reminder is removed and rescheduled to repeat in x minutes.
132c133
<             Repeats a maximum of 3 times.
---
>             Repeats a maximum of 10 times with 2^repeats minutes in between
141c142
<             if repeats < 3:
---
>             if repeats < 10:
143c144,147
<                 new_time = deserialize(r[1]) + timedelta(minutes=2)
---
>                 # new_time = deserialize(r[1]) + timedelta(minutes=2)
>                 interval_reminder = math.pow(2,repeats)
>                 new_time = deserialize(r[1]) + timedelta(minutes=interval_reminder)
>                 self.speak("muon reminder: interval_reminder is " + str(interval_reminder) + ", repeats is " + str(repeats))

Something like this...
But python and me don't get along too well yet...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants