Git Product home page Git Product logo

skill-naptime's Introduction

Naptime

Put Mycroft to sleep when you don't want to be disturbed

About

Tell Mycroft to sleep when you don't want to be disturbed in any way. This stops all calls to Speech to Text system, guaranteeing your voice won't be sent anywhere on an accidental activation.

When sleeping, Mycroft will only listen locally for the phrase "Hey Mycroft, wake up". Otherwise the system will be totally silent and won't bother you.

On a Mark 1 this also dims the eyes.

Examples

  • "Go to sleep"
  • "Nap time"
  • "Wake up"

Credits

Mycroft AI (@MycroftAI)

Category

Daily Configuration

Tags

#nap #naptime #sleep #donotdisturb #do-not-disturb

skill-naptime's People

Contributors

aleale99 avatar augustnmonteiro avatar e-gor avatar forslund avatar goldyfruit avatar jarbasal avatar kathyreid avatar krisgesling avatar luke5sky avatar matthewscholefield avatar tony763 avatar zelmon64 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

skill-naptime's Issues

Volume not reset on device reboot if device is in sleep state when reboot occurs

Description of fault in object deviation format

If a Device is put to sleep with the sleep command - Hey Mycroft, go to sleep, then the Device is rebooted before the stand up command is given - Hey Mycroft, wake up, then the 'sleep' state is cleared by the reboot, but the volume level is not re-instated.

This was observed by Kathy when she had her Mark 1 asleep overnight, and the 18.2.6b release was pushed to the Device, and the Device rebooted. The Device's volume was entirely muted when the Device rebooted.

This results in the Device coming back up with the volume muted.

Workaround

The workaround is to:

  • ssh into the Device
  • run the command alsamixer
  • use alsamixer to increase the volume
Expected behaviour

The expected behavior is that the Device's volume returns to that which it was set to before sleeping, if the sleep state is also cleared.

This Issue is being added to the Naptime Skill, because this Skill requests the muting

Naptime skill should respond and consume command to "wake up" even if already awake

If you trigger the Naptime skill by saying "go to sleep", the Naptime skill will be in a napping state, and will then listen ONLY for the special phrase "wake up" from that point forward.

If you are not sure whether Mycroft is functioning correctly, you may try "wake up" just in case it is in a napping state. In the case that Naptime is active, "wake up" will properly return Mycroft to a wakeful state and listen for any/all commands once again.

In the case that Naptime is NOT active, then "wake up" will be mis-interpreted by some other fallback skill. For example, DuckDuckGo may decide you intended to learn something about the 2009 movie, Wake Up Sid. There is virtually no situation where "wake up" will be useful for any other intent.

Proposed: when wakeful, Naptime should recognize and consume "wake up". It can reply briefly, "I am already awake" but should not allow the command to fall back to some other skill.

Device volume is very low on wake up

Describe the bug
Flagged in #44

To Reproduce
From @hariedo:

On the first try, "Hey, Mycroft. Wake up." I got "I am already awake" at my current volume, and no spurious fallback. Good.

Then I put it to sleep. And then wake it up. Barely audible message (I am awake now)and the face goes away. The volume is back down to a very low value, likely 0 or 1.

Then I tried to do "Hey, Mycroft. Wake up." I get a barely audible message (already awake), but also no spurious fallback as reported above.

Expected behavior
Device volume should not change by going to sleep unless user changes it via touch screen or volume button.

Mycroft Mark II screen does not reflect the "gone to sleep" status.

After specifying "Mycroft, go to sleep", the naptime skill suppresses most voice interaction until unlocked with one phrase, "Mycroft, wake up." There is no visual indication on Mark II screen, even though there seems to be a "face" directory. Thus, family members who didn't know it was put to sleep may be frustrated by lack of response.

If Naptime is a sovereign modal skill (blocking out all other skills from running), it needs to display something on the screen (or go fully black with a gentle breathing white LED pattern). If Naptime is not sovereign, then the idle homescreen needs to be informed, and should do this visual work instead.

Environment (please complete the following information):

  • Device type: Mark II
  • OS: Mark II
  • Mycroft-core version: 2021-12-13
  • Other versions: 2021-12-13

Cannot wake Picroft after "Mycroft, go to sleep"

Describe the bug
Cannot wake Picroft after "Mycroft, go to sleep" as "Mycroft, wake up" always triggers the plain "Hey Mycroft" wakeword, could also be that "go to sleep" is triggering the muting but not setting the sleep state.

"Wake up" seems to be implemented with pocketsphinx according to the log.

To Reproduce
Steps to reproduce the behavior:

  1. "Hey Mycroft, go to sleep"
  2. Let time pass (few minutes)
  3. "Hey Mycroft, wake up"
  4. "Mycroft, wake up"
  5. "Wake up"
  6. Get fed up and just reboot

Expected behavior

  1. "Hey Mycroft, go to sleep"
  2. Let time pass (few minutes)
  3. "Hey Mycroft, wake up"
  4. Mycroft is awake and responsive

Log files
If possible, add log files from /var/log/mycroft/ to help explain your problem.

You may also include screenshots, however screenshots of log files are often difficult to read and parse.

If you are running Mycroft, the Support Skill helps to automate gathering this information. Simply say "Create a support ticket" and the Skill will put together a support package and email it to you.

Environment (please complete the following information):

  • Device type: Raspberry Pi 4B 1GB
  • OS: Picroft
  • Mycroft-core version: 21.2.2

No way to wake up without button

As there is no keyword for any wake up call, it is improbable that mycroft will "wake up" again by words after having gone to bed.

The vocal reminder how to wake up reflects default wake phrase.

If the user has specified "yo, tambourine man" as the wake phrase, then the vocal reminder on sleeping should reflect it: "Say yo, tambourine man, wake up to get my attention". The configurable wake word has a plaintext as well as a phoneme set, so you should be able to fetch that setting.

Naptime mutes entire system

Maybe this is just a problem with my setup, but when I tell Mycroft to go to sleep, it mutes everything on the system, not just Mycroft-related sounds. Can this be changed, or made configurable?

Wake word acknowledgment chirp is not muted while asleep (Desktop)

I'm not sure whether this is intended functionality, but when Mycroft is sleeping, I still hear chirps when I say "hey, Mycroft." I would like to use the naptime skill to temporarily mute all of Mycroft's sounds, including the chirp, and only have it wake up and make noise again once I say "hey Mycroft, wake up."

Save volume state

After a nap Mycroft should be able to restore the previous volume state.

Steps to reproduce:
1 - Say "hey... set volume to 10"
2 - Say "hey... go to sleep"
3 - Say "hey... wake up"
4 - Say "hey... raise volume"

Volume increased to 7

Expected result:

Volume increased to 11

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.