Commit Graph

1059 Commits (a100d2a6dca9b225c41a2c46dcc21059b3422dd5)

Author SHA1 Message Date
Åke Forslund 839803c958 Rename messages.
As requested by Augusto Monteiro
2017-07-31 13:37:17 +02:00
Åke Forslund 86a557e1ac Docstrings! 2017-07-31 13:37:17 +02:00
Åke Forslund e9a8eb01ca Handle file:// uri's in mpg123 backend 2017-07-31 13:37:17 +02:00
Åke Forslund c81ad57ebf Populate AudioService class with more methods
Pause, resume, next and previous added to the interface.
The play method was updated to add 'file://' to uri's lacking uri type.
2017-07-31 13:37:17 +02:00
Åke Forslund 5c874677cc Add check for valid type of tracks 2017-07-31 13:37:17 +02:00
Åke Forslund 0749b3c088 Only display message bus messages related to audio service 2017-07-31 13:37:17 +02:00
Åke Forslund 44a7c5ec0c Fix playback_control skill 2017-07-31 13:37:17 +02:00
Åke Forslund 2270448fff Fix pep8 errors 2017-07-31 13:37:17 +02:00
Åke Forslund bddccad7b9 Make service loading more robust 2017-07-31 13:37:17 +02:00
Åke Forslund aab65d8178 Add docstrings. 2017-07-31 13:37:17 +02:00
Åke Forslund 177187bee6 Rename manual_load to load_service. 2017-07-31 13:37:17 +02:00
Åke Forslund bccc9f78d8 Handle stop 2017-07-31 13:37:17 +02:00
Åke Forslund a39033fa98 Re-add resume functionality 2017-07-31 13:37:17 +02:00
Åke Forslund 3001dd5a83 Move backend base class to audio/services 2017-07-31 13:37:17 +02:00
Åke Forslund 7dc746370a Load all audio services in the service directory 2017-07-31 13:37:17 +02:00
Åke Forslund c7ad6b11bb Move audio service to separate process. 2017-07-31 13:37:17 +02:00
Åke Forslund ac5bd17041 Add chromecast service
Chromecast can be manually added with a backend entry with type set to "chromecast" or the service can autodetect all chromecast and register them with their names by setting the Audio configuration parameter autodetect-chromecast set to true.

Currently this implementation is very basic and is using the default media controller. This limits the usable uri's to http(s), adding support for local files and hopefully more services will be added later.
2017-07-31 13:37:17 +02:00
Åke Forslund 67502372bf fix pep8 issues 2017-07-31 13:37:17 +02:00
Åke Forslund 51b98a11b7 Fix trailing comma in default config 2017-07-31 13:37:17 +02:00
Åke Forslund e55cd018f2 Activate default-backend option 2017-07-31 13:37:17 +02:00
Åke Forslund b098f2ad30 Make sure mopidy startup doesn't block 2017-07-31 13:37:17 +02:00
Åke Forslund ee5141ed6f Make all audio backend build on the base class
Abstract base class is now a bit more lenient
2017-07-31 13:37:16 +02:00
Åke Forslund 34dd679d3e Fix mopidy configuration 2017-07-31 13:37:16 +02:00
Åke Forslund 6d36cf4cd1 Add default configuration 2017-07-31 13:37:16 +02:00
Åke Forslund 8686cade3b Update service alias to use config name 2017-07-31 13:37:16 +02:00
Åke Forslund 06a9eb7ee5 Initial update to follow changes in mycroft 2017-07-31 13:37:16 +02:00
Åke Forslund e6723b2a56 Add backend selection
The user can now specify which backend to use to play media. default the keywords are the name of the backend (vlc, mpg123, mopidy) but can be set with the config.

Example:
audio.mopidy.name = "livingroom"

A possible user interaction might be

- "Hey mycroft, play the news in the livingroom"

The detection is very basic and not very elegant but works as a proof of concept.
2017-07-31 13:37:16 +02:00
Åke Forslund 8078bdd4c2 Correct return value from track_info 2017-07-31 13:37:16 +02:00
Åke Forslund 37b8c17121 Add name property to VlcService 2017-07-31 13:37:16 +02:00
Åke Forslund 4af620c968 Add configuration handling for mpg123 backend 2017-07-31 13:37:16 +02:00
Åke Forslund 7ea387988d Add vocab dir to project 2017-07-31 13:37:16 +02:00
Åke Forslund a28a435ddf Add configuration options 2017-07-31 13:37:16 +02:00
Åke Forslund 26e63cdff3 Add abstract base class for audio backends 2017-07-31 13:37:16 +02:00
Åke Forslund 717c6fa49b Add track_info to audio service connection 2017-07-31 13:37:16 +02:00
Åke Forslund f596992a88 Remove unused vocabulary. 2017-07-31 13:37:16 +02:00
Åke Forslund 89d4cc5f0a Add basic configuration to activate services 2017-07-31 13:37:16 +02:00
Åke Forslund 89adf6e8ac Initial commit of audio service
Three backends have been added, mopidy, vlc and mpg123. Depending on uri type an apporpriate service is selected when media playback is requested. (for example mopidy service can handle spotify://... and local://...)

A playback Control skill can pause, resume, stop change track, etc any started media. So for example if the NPR news skill used this after starting playing the news the user can say "Hey Mycroft, pause" and the playback will pause. The playback control also handles stuff like lowering the volume of the playback if mycroft is asked another question.

Currently the different backend runs under the playbeck control, this was made most for convenience and the services should be moved in the future.

Usage:
The user needs to import the audioservice interface
`from mycroft.skills.audioservice import AudioService`

and initialize an instance in the skill `initialize` method

`self.audio_service = AudioService(self.emitter)`

Then playing an uri is as simple as

`self.audio_service.play(uri)`

TODO:
* Configuration (Alias for the different backends, service specific config, active services, etc.)
* Manual selection of backend (This is prepared in the audioservice interface biut not implemented)
* More feature complete audio service interface (playback control, get trackname etc)
* Separate audio services from the playback control
* Probably lots more
2017-07-31 13:37:16 +02:00
Michael Nguyen 05852f30ef removed logger messages 2017-07-28 15:08:33 -05:00
Michael Nguyen 0c0bc6fd34 fixed bugs 2017-07-28 13:42:18 -05:00
Michael Nguyen 1e8ee03674 fixed pep8 issues 2017-07-27 16:38:24 -05:00
Michael Nguyen 37ada28dbd refactored skill settings and fixed test 2017-07-27 16:28:32 -05:00
Arron Atchison 2a595931ba bump enclosure version to 1.0.0 2017-07-24 17:16:32 -05:00
Steve Penrod e8e0853825 Merge pull request from MycroftAI/feature/display_state_manager
Feature/display state manager
2017-07-21 19:58:07 -05:00
Arron Atchison dc386a432e bump version to 0.8.19 2017-07-20 19:05:24 -05:00
Åke Forslund 6f41964796 Make name parameter optional.
==== Fixed Issues ====

==== Tech Notes ====
Uses supplied name parameter if present, otherwise uses name of class.

==== Documentation Notes ====
The skill creation documentation should mention that the name parameter
is only an option.

==== Localization Notes ====
NONE

==== Environment Notes ====
NONE

=== Protocol Notes ====
NONE
2017-07-19 16:47:26 -05:00
Åke Forslund f843e758d3 Make expect respones trigger when mycroft stops speaking 2017-07-19 11:36:03 -05:00
Åke Forslund 6f3e1e0d55 Fix filename for cache lookup 2017-07-19 10:43:57 -05:00
Matthew D. Scholefield 90aff68034 Reverting "Add intent fallback system ()"
This is because this will break wolfra alpha skill unless they update
skills, but if they update before getting the new version, it will also
break wolfram

This reverts commit 6ca4161335.
2017-07-14 17:53:42 -05:00
Matthew D. Scholefield 6ca4161335 Add intent fallback system ()
* Create new FallbackSkill base class for implementing fallback behavior
Also removes multi utterance intent fail. Only makes sense to emit an intent_failure regardless of the amount of intents
2017-07-14 17:27:26 -05:00
Augusto Monteiro a5d349aff5 Merge pull request from Teagan42/kaldi-stt
Kaldi STT
2017-07-13 13:14:39 -04:00
Michael Nguyen 6eb1c194cb add try except 2017-07-11 18:19:21 -05:00
Michael Nguyen 00bde77400 fixed test 2017-07-11 16:19:05 -05:00
Michael Nguyen b891e03511 implement patch functionality, chaged json structure 2017-07-11 15:25:43 -05:00
penrods e307df2bb4 Duplicate service hack #2... performing check in the Enclosure client after a
60 second delay.  The packaging system was preventing the previous approach
from rebooting.
2017-07-10 23:22:29 -05:00
penrods 8cbc73e98c Added same kind of hack for mycroft-speech-client 2017-07-10 22:12:59 -05:00
penrods b6cc47a1a4 Hack to deal with a silly problem happening during upgrade of a Mark 1 from a
0.8.17 or earlier build.  A Series of Unfortunate Events leads to two instances
of the mycroft-skills service running.  This causes double-answers, which is
confusing to everyone.  The root problem that lead to this is corrected in
release 0.8.18, but resolving it in packaging is ridiculously difficult.

So, we'll do this simple hack for the interim.  It is harmless and useless if
not running in the Mark 1 environment.
2017-07-10 22:12:59 -05:00
Connor Penrod 41698d4dbe Adds the ExtractDateTime parse function from Christopher (plus relevant tests) ()
Adds the ExtractDateTime parse function from Christopher.  When imported from mycroft/util/parse.py, it'll take a sentence like "What's the weather like 5 weeks from next Wednesday?" and will extract a python datetime object for that date.

* Added requirements.txt change for importing dateutil
2017-07-10 15:33:21 -05:00
Sujan Patel 668eefe74f Issue-895 - Adding uppercase support to wake words 2017-07-08 11:35:58 -04:00
Arron Atchison 3a6b9be389 version bump to 0.8.18 2017-07-07 12:12:59 -05:00
Ethan Ward ec7bc6d512 Refactor setup_base to use CORE_VERSION_STR 2017-07-07 10:46:45 -05:00
Michael Nguyen bb0dd95b55 changed server from test to prod in mycroft.conf 2017-07-07 10:27:03 -05:00
Åke dd30d586e1 Check queue empty with self.queue.empty() instead of len() ()
* Check queue empty with self.queue.empty() instead of len()

* Add error logging of exceptions in tts thread.

* Limit the number of audio_output_start messages.

recognizer_loop:audio_output_start message will only be sent if the
queue has been empty since last loop.
2017-07-07 09:08:28 -05:00
Matthew D. Scholefield 63d90cef4f Only output audio end when all audio has been spoken 2017-07-06 20:18:59 -05:00
Matthew D. Scholefield 0a09e6b91e Move audio output start and end messages to TTS class
This prevents them from being outputted too early if playback is run on another thread
2017-07-06 20:18:59 -05:00
Michael Nguyen f62a771e28 merge changes 2017-07-06 16:59:26 -05:00
Michael Nguyen 25a457083d fixed function names 2017-07-06 16:58:24 -05:00
Åke Forslund 28c15eb64e Fix subprocess.call() issue and add error logging. 2017-07-06 15:29:19 -05:00
Michael Nguyen f361392628 Merge branch 'dev' of https://github.com/MycroftAI/mycroft-core into feature/skill-configuration 2017-07-06 12:40:50 -05:00
Michael Nguyen bf48d7b6fb [WIP] need to implement PATCH 2017-07-06 12:40:21 -05:00
Åke 7bab1d1e21 Merge pull request from forslund/feature/issue-803
TTS playback thread
2017-07-06 12:15:48 +02:00
Åke Forslund f714a5a882 Stop current sentence immediately by terminating playback 2017-07-06 11:49:47 +02:00
Åke Forslund 7143e5ef93 Return True when button is pressed as well. 2017-07-06 11:48:40 +02:00
Åke Forslund 3be91fb84c Allow "Stop" to clear playback queue 2017-07-06 09:41:22 +02:00
Åke Forslund fb6fa54fd8 refactor Google tts to take advantage of playback thread 2017-07-06 09:39:28 +02:00
Åke Forslund e528fa0bd3 Stop tts playback thread when needed
When
- Updating tts config
- KeyboardInterrupt
2017-07-06 09:39:28 +02:00
Åke Forslund d378c9d1a6 Refactor Mimic class to keep caching functions in base class 2017-07-06 09:39:28 +02:00
Åke Forslund 0de3f49a82 Add threading for mimic tts 2017-07-06 09:34:33 +02:00
Matthew D. Scholefield a33cc35b39 Fully fix wake up functionality 2017-07-05 17:37:26 -05:00
Matthew D. Scholefield e11bb52853 Fix wake up 2017-07-05 17:11:26 -05:00
Matthew D. Scholefield c2b2134a12 Make Wake Word detection modular ()
This separates Pocketsphinx into its own class allowing other wake word recognizes to be switched in easier.
2017-07-05 14:26:34 -05:00
Åke Forslund 653d1e6f5e Change logging level for missing dialog/vocab to debug 2017-07-05 19:37:33 +02:00
Åke Forslund 54783a1dd1 Minor cleanup 2017-07-05 19:35:26 +02:00
Åke Forslund a2644bc97c Load data files and decorated intent handlers automatically. 2017-07-05 19:35:26 +02:00
Åke Forslund eb6cd79e52 Minor cosmetic fixes
- underscore in front of variables/methods not intended for users
- docstrings
- remove debug printout
2017-07-05 19:35:26 +02:00
Åke Forslund 7955feaec7 Add support for decorating handlers with intents 2017-07-05 19:35:26 +02:00
Teagan Glenn e0a88667ee Configs for kaldi 2017-07-05 10:02:35 -06:00
Teagan Glenn 5d1cb4dbdf Use config var 2017-07-05 09:10:15 -06:00
Teagan Glenn a64862cf41 Fixes based on PR comments 2017-07-05 09:06:08 -06:00
Teagan Glenn f795ea0237 Kaldi STT 2017-07-04 15:46:08 -06:00
Michael Nguyen b6a7234be3 Merge branch 'dev' of https://github.com/MycroftAI/mycroft-core into feature/skill-configuration 2017-06-30 17:36:08 -05:00
Michael Nguyen 01d8a0caf7 [WIP] need to add PATCH for settingsmeta.json 2017-06-30 17:36:04 -05:00
Åke 97af70bb86 Merge pull request from JarbasAI/patch-16
Read Blacklisted skills from config
2017-06-30 22:08:01 +02:00
Jarbas 2c0ed93e4b pep8 2017-06-30 20:27:33 +01:00
kfezer cc129f615d Update message.py 2017-06-30 10:03:24 -07:00
Art McGee 3872dafd81 This add comments to document the message class
Signed-off-by: Art McGee <amcgee7@jaguarlandrover.com>

	mycroft/messagebus/message.py
2017-06-30 09:57:00 -07:00
Art McGee 94e8705264 Fixes and Typeo's
Signed-off-by: Art McGee <amcgee7@jaguarlandrover.com>

	mycroft/messagebus/message.py
2017-06-30 09:54:15 -07:00
Arron Atchison 14df7e6846 Update __init__.py 2017-06-30 09:37:06 -05:00
Steve Penrod 96c08189ed Revert "This add comments to document the message class" 2017-06-30 00:41:20 +02:00
penrods 0eee71d90f Fixed the allow_timeout (used in out-of-the-box); and a wifi setup disconnect tweak
* The allow_timeout value was tested poorly, preventing it from actually doing anything
* Upped the number of arp/ping test failures from 3 to 6 when validating the connection.  This makes falsely detecting a wifi setup disconnect pretty unlikely.
2017-06-29 17:10:14 -05:00
Jarbas ebe1c7fcea use get 2017-06-29 21:44:21 +01:00
Jarbas d4177d43a0 Update mycroft.conf 2017-06-29 21:42:05 +01:00
Jarbas 6b9c2d8e74 add blacklisted skills 2017-06-29 20:39:09 +01:00
Jarbas 8af5ce09cf read blacklisted skills from config 2017-06-29 20:36:02 +01:00
Åke b98b020da2 Merge pull request from forslund/gregmccoy-feature/issue-788
Gregmccoy feature/issue 788
2017-06-29 20:32:08 +02:00
Art McGee 355225ee3d Merge branch 'dev' into amcgee7_docs 2017-06-29 07:17:19 -07:00
Åke Forslund 10e4660e3e Add some safety to remove_all_listers
The same websocket client object is often used between many different
parts of the software. (for example skills) This will reduce the risk
that all listeners are removed for all events by mistake. It it still
possible toi do this by calling
`WebsocketClient.ws.remove_all_listers()` if there would be need for
this mechanism.
2017-06-29 08:09:23 +02:00
Greg McCoy d7d0dbec5e Issues 788 - Adding remove_all_listeners 2017-06-29 07:54:05 +02:00
Michael Nguyen d3621b7fca [WIP] refactored 2017-06-28 17:31:35 -05:00
Michael Nguyen 344d53cc7e [WIP] 2017-06-28 11:35:25 -05:00
Michael Nguyen e3b4e7c6e3 [WIP] modify settings.py to post metadata to api, and get settings form api 2017-06-28 11:32:19 -05:00
Art McGee 8323f193f0 Merge branch 'amcgee7_docs' of https://github.com/amcgee7/mycroft-core into amcgee7_docs 2017-06-26 13:55:27 -07:00
Art McGee 57ae8bac4c Fixes and Typeo's
Signed-off-by: Art McGee <amcgee7@jaguarlandrover.com>
2017-06-26 13:52:52 -07:00
Art McGee 11c6ae4a07 This add comments to document the message class
Signed-off-by: Art McGee <amcgee7@jaguarlandrover.com>
2017-06-26 13:52:52 -07:00
kfezer@gmail.com 12ebabb70f Changing how SSH is enabled.
Now using systemctl for both enabling and disabling\
	modified:   mycroft/client/wifisetup/main.py
2017-06-26 13:52:52 -07:00
Arron Atchison cf14c64f5a Update main.py 2017-06-26 13:52:52 -07:00
Arron Atchison 9d36ad5d20 Update version.txt 2017-06-26 13:52:52 -07:00
kfezer@gmail.com 517034bd73 Added command line calls to enable/ disable ssh
Fixed issue where ssh.enable was emitting wrong message
	Tested mycroft.dialog.get
	modified:   mycroft/client/enclosure/__init__.py
	modified:   mycroft/client/wifisetup/main.py
2017-06-26 13:52:52 -07:00
Arron Atchison b6fb405499 Version bump to 0.8.12 2017-06-26 13:52:52 -07:00
penrods 7b1cfbca1f Minor code restructure to simplify _record_phrase()
Basically just moved the signal-related code into a helper method.
2017-06-26 13:52:52 -07:00
penrods bd4e3836d3 Improved handling of button press
Improved the way the button press is handled.  Now the listener gives the rest
of the system a moment to consume the button press before it interprets it
as a request to begin listening.

Also replaced the use of the "buttonPress" signal when "expect_response"
was indicated with an utterance.  Now the signal "startListening" is
created, differentiating it from a buttonPress.
2017-06-26 13:52:52 -07:00
penrods 8bd28e11ce Support for Mark 1 SSH > BLOCK menu item
This implements the handler for the Mark 1 menu item SSH > BLOCK (the inverse of SSH > ALLOW)
* Added handler for "unit.disable-ssh" on the serial line. This turns around and emits "mycroft.disable.ssh" on the messagebus.
* Removed the automatic reboot, just let the user know it will be different after a restart
* Made the spoken message translatable
* Changed mycroft.dialog.get() to not require the "lang" parameter.  It will default to the mycroft.conf value.
2017-06-26 13:52:52 -07:00
penrods fa32ff303a Restore the drawing of icons when showing weather.py
This implements the image drawing functionality of the lastest Mark 1 enclosure instead of the old numeric weather icon codes.
2017-06-26 13:52:52 -07:00
Åke Forslund e7b2665f80 Enable config updates for skills in container 2017-06-26 13:52:52 -07:00
Augusto Monteiro 'Sparky 55780dbc4a Fixing demo mode, sending two events on message bus 2017-06-26 13:52:52 -07:00
Arron Atchison 8483c33154 Update __init__.py 2017-06-26 13:52:52 -07:00
kfezer@gmail.com c851461c4e increases boot delay on reboot after ssh and reset
modified:   mycroft/client/enclosure/__init__.py
2017-06-26 13:52:52 -07:00
Arron Atchison 0cdfaf3ae7 bump enclosure version to 0.1.22 2017-06-26 13:52:52 -07:00
SoloVeniaASaludar cf1a98b2da + 2017-06-26 13:52:52 -07:00
SoloVeniaASaludar 4220026672 + 2017-06-26 13:52:52 -07:00
Augusto Monteiro 'Sparky bd93b1f2dc Adding demo mode
* Sending an event to messagebus when demo button is pressed
2017-06-26 13:52:52 -07:00
kfezer@gmail.com 551b4d4da3 Fixes error with wpa_supplicant string
modified:   mycroft/client/wifisetup/main.py
2017-06-26 13:52:52 -07:00
Augusto Monteiro 'Sparky d92e40b39a - Device api find is passing self to get 2017-06-26 13:52:52 -07:00
Steve Penrod faa3070f3c Adding localization mechanism for strings embedded in mycroft-core code ()
* Adding localization mechanism for strings embedded in mycroft-core code

Added mycroft.dialog.get() function.  This behaves much like the localization
mechanism for dialogs in Skills.  So you can do things like this:

   lang = "en-us"
   str = mycroft.dialog.get("how are you", lang)

Which will look in mycroft/res/text for the dialog file containing strings to
use as templates for the actual output.  This depends on the language being
currently used.  When operating in English this would be:

   mycroft/res/text/en-us/how are you.dialog

This function will pick a random line from that file to assign to str.

A more advanced use is to embed placeholders in the strings within the
template file.

   lang = "en-us"
   ctx = {"time" : "noon"}
   str = mycroft.dialog.get("current time", lang, ctx)

And the random template line picked was "the current time is {{time}} ", then
the output would be:

   "the current time is noon"
2017-06-26 13:52:52 -07:00
SoloVeniaASaludar 07ffe301c5 + 2017-06-26 13:52:52 -07:00
kfezer@gmail.com 0a358faf79 modified: mycroft/client/wifisetup/main.py 2017-06-26 13:52:52 -07:00
SoloVeniaASaludar 1e470369c7 + 2017-06-26 13:52:52 -07:00
SoloVeniaASaludar 5893f1db92 normalize_es 2017-06-26 13:52:52 -07:00
kfezer@gmail.com 1cc2964999 modified: mycroft/client/enclosure/__init__.py 2017-06-26 13:52:52 -07:00
kfezer@gmail.com bc94caab84 modified: mycroft/client/wifisetup/main.py 2017-06-26 13:52:52 -07:00
kfezer@gmail.com cd75da2b5b modified: mycroft/client/wifisetup/main.py 2017-06-26 13:52:52 -07:00
kfezer@gmail.com b5ec28ed27 modified: mycroft/client/enclosure/__init__.py
modified:   mycroft/client/wifisetup/main.py
2017-06-26 13:52:52 -07:00
kfezer@gmail.com 579ddef45a modified: mycroft/client/wifisetup/main.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com 93b7b84642 modified: mycroft/client/wifisetup/main.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com c6302cfe1f modified: mycroft/client/wifisetup/main.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com 227d9c6772 modified: mycroft/client/enclosure/__init__.py
modified:   mycroft/client/wifisetup/main.py
2017-06-26 13:50:06 -07:00
kfezer@gmail.com 19529472d7 modified: mycroft/client/wifisetup/main.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com 96caff8d32 modified: mycroft/client/enclosure/__init__.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com fa404d8ada modified: mycroft/client/wifisetup/main.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com 73f6442b8d modified: mycroft/client/enclosure/__init__.py
modified:   mycroft/client/wifisetup/main.py
2017-06-26 13:50:06 -07:00
penrods f900032e1a Renaming DeviceApi.find() to DeviceApi.get()
Developers do not expect a function called "find" to execute an API request, this is a "get".  (I verified this with several other devs.)  Renamed and added a Deprecated comment for now.  Also:
* Added missing standard mycroft-core copyright.
* Added docstrings for basic objects and the STTApi in particular.
2017-06-26 13:50:06 -07:00
kfezer@gmail.com b3a5990c08 modified: mycroft/client/enclosure/__init__.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com 52dc611aea modified: mycroft/client/enclosure/__init__.py 2017-06-26 13:50:06 -07:00
kfezer@gmail.com 176c8ffdb9 modified: mycroft/client/enclosure/__init__.py 2017-06-26 13:50:06 -07:00
Augusto Monteiro 'Sparky a4cfd76639 - checking network connection 2017-06-26 13:48:09 -07:00
Augusto Monteiro 'Sparky 8e49947a03 - saying that isn't connected 2017-06-26 13:48:09 -07:00
kfezer 900d12138a Update __init__.py
Adds delay to the wifi reset
2017-06-26 13:48:09 -07:00
Augusto Monteiro 'Sparky 6485018bb7 - fixing on raspberry msm 2017-06-26 13:48:09 -07:00
kfezer@gmail.com ec47a9de34 modified: mycroft/client/wifisetup/main.py 2017-06-26 13:48:09 -07:00
kfezer@gmail.com 05e42938e9 deleted: mycroft/client/wifisetup/wpa_supplicant.conf.master 2017-06-26 13:48:09 -07:00
kfezer@gmail.com 7b9ec9c326 modified: mycroft/client/enclosure/__init__.py
modified:   mycroft/client/speech/mic.py
	modified:   mycroft/client/wifisetup/main.py
	new file:   mycroft/client/wifisetup/wpa_supplicant.conf.master
2017-06-26 13:48:09 -07:00
Augusto Monteiro 'Sparky 253e3bdc66 - Using configuration to get msm bin 2017-06-26 13:48:09 -07:00
Åke Forslund 5e5f17ddce Add short docstring to create_file() 2017-06-26 13:48:09 -07:00
Åke Forslund d0c277015e Ensure that signal directory exists when creating signal.
Also add test cases for ipc signals
2017-06-26 13:48:09 -07:00
Åke Forslund 856d3b3dff Stop multi-sentence speech 2017-06-26 13:48:09 -07:00
SoloVeniaASaludar 638c0ec40c + 2017-06-26 13:48:09 -07:00
Augusto Monteiro 'Sparky d09febf3eb - checking connection 2017-06-26 13:48:09 -07:00
Augusto Monteiro 'Sparky e34608e2f9 - listening on connected 2017-06-26 13:45:23 -07:00
Augusto Monteiro 'Sparky ec9746d933 - installing skills on connect 2017-06-26 13:45:23 -07:00
Chris ca9116f87c Fixed typo
There was a typo ("Lodaded" instead of "Loaded") which I have fixed
2017-06-26 13:45:23 -07:00
SoloVeniaASaludar f3fd34c7c5 bugfix/issue-688 2017-06-26 13:45:23 -07:00
SoloVeniaASaludar 7d05431bfd + 2017-06-26 13:45:23 -07:00
Åke Forslund 72dcc233d1 Enforce float as threshold value to pocked sphinx 2017-06-26 13:45:23 -07:00
Åke Forslund 9f5c1d1582 Move ignore SIGCHLD to entry points.
Ignoring SIGCHLD trips up unittests, this was done as the unittest loaded mycroft.skills.core
2017-06-26 13:45:23 -07:00
Ethan Ward b8dcd34711 Update audio accuracy test 2017-06-26 13:45:23 -07:00
Augusto Monteiro 8629bb9e71 Merge pull request from forslund/bugfix/issue-836
Allow service to reload as intended
2017-06-26 16:10:41 -04:00
Augusto Monteiro aee9ffebfa Merge pull request from forslund/bugfix/issue-843
Check if settings have changed with simple hash
2017-06-23 18:48:04 -04:00
Augusto Monteiro 4256c16e11 Merge pull request from forslund/feature/issue-827
Add local cache fallback for remote config.
2017-06-23 18:34:04 -04:00
matlar 7b05b73e5d Issue-685 - Using load_commented_json in log.py 2017-06-22 12:45:38 +00:00
Åke Forslund 5ac2e5f51e Check if settings have changed with simple hash 2017-06-22 08:36:33 +02:00
Michael Nguyen eeda583576 rename functions, delete extra code comment 2017-06-21 13:19:00 -05:00
Matthew D. Scholefield fc3ede120c Fix cli bugs
- Add keycode 127 as backspace
 - Run tts in another thread to suppress output
2017-06-20 13:37:51 -05:00
Michael Nguyen 09cd00a31b darn pep8 2017-06-16 16:14:16 -05:00
Michael Nguyen 3ce86ebba4 fixed bugs in display manager 2017-06-16 15:54:55 -05:00
Michael Nguyen a2853e2288 fixed merge conflict 2017-06-16 13:34:40 -05:00
Michael Nguyen c0b603ab51 state manager implemented 2017-06-16 13:31:44 -05:00
Åke Forslund 728391427e Add test for PID locks
Catch IOError in delete method if pid-file doesn't exist
2017-06-16 14:17:43 +02:00
Åke Forslund 2791b3242b Allow service to reload as intended
- Add reload hook to delete PID lock
- Correctly detect PID in lock file
2017-06-16 12:26:54 +02:00
Åke Forslund 3ff2b1b787 Add local cache fallback for remote config. 2017-06-14 11:33:29 +02:00
Arron Atchison 5bb7d25765 bump version to 0.8.16 2017-06-13 18:16:52 -05:00
Arron Atchison 78563a4df3 Revert "Refactor setup_base.py to use new versioning method ()"
This reverts commit ba5b255b0e.
2017-06-13 18:01:34 -05:00
Ethan Ward c9893806ea Change has_been_paired to load the current identity file ()
* Change has_been_paired to load the current identity file

* Add clarifying comment and fix pep8
2017-06-13 17:32:14 -05:00
Ethan Ward ba5b255b0e Refactor setup_base.py to use new versioning method () 2017-06-13 13:30:20 -05:00
Åke Forslund b38af90fac fix pep8 2017-06-13 14:17:21 +02:00
penrods 582b77891e One more pass at onboarding, including a major bug fix:
* BUGFIX: The big bug was calling is_paired() during wake_word_in_audio().  When not paired, that call hit the server, taking about a second.  Since it happened multiple times a second, the audio buffers got backed up hugely.  This resulted in weird behavior later as the buffers get cleared out.
* Added mycroft.api.has_been_paired(), which just looks for the pairing key (it does not validate it is still active with the server, like is_paired())
* The enclosure now checks for internet connectivity and kicks off the wifisetup process, not the wifisetup client itself.
* During the "onboarding" process, the microphone is muted using the new "mycroft.mic.mute" message.  After pairing completes, the "mycroft.mic.unmute" is expected to be sent from the pairing skill.  Unmuting again after a re-pairing is harmless.
* mute_and_speak() is smart enough to not unmute itself when complete if muted before
* util.check_for_signal() now accepts -1 as the lifetime.  This means it never times out.
* util.stop_speaking() is more intelligent about shutting down the spoken text (including text that has been split at periods) and visemes
2017-06-13 05:35:06 -05:00
penrods 32e32ed185 Minor onboarding refinements
* The wifi setup no longer stops after 5 minutes unless already paired (i.e. still onboarding)
* The mouth resets on wifisetup stop (clearing the scrolling home.mycroft.ai)
* Changed several ConfigurationManager.get() calls to ConfigurationManager.instance().  Exactly the same, but .instance() is clearer/preferred.
* Added a mycroft.util.stop_speaking() method.  Not perfect, but works for now and can be replaced later when AudioManager is in place.

A forthcoming change to the pairing skill will utilize the stop_speaking method.
2017-06-12 02:57:22 -05:00
Michael Nguyen a6917c7712 added info to docstring information 2017-06-08 14:35:31 -05:00
Michael Nguyen 6fc9e034f7 extracted encode png function into mouth_display_png function for a cleaner interface 2017-06-08 12:39:42 -05:00
Michael Nguyen c4f8fa0b92 Merge branch 'dev' of https://github.com/MycroftAI/mycroft-core into mouth_display_feature 2017-06-08 10:35:08 -05:00
Arron Atchison a5592d8216 bump version to 0.8.15 2017-06-07 21:13:28 -05:00
Steve Penrod c824c03611 Feature/onboarding bug ()
* Implementing changes to out-of-the-box experience, providing an "onboarding" process.

* Added a mycroft.api.is_paired() method
* Added mycroft.util.is_speaking and mycroft.util.wait_while_speaking() methods
* RESET now waits for the spoken notice to complete
* Stopped the "Checking for updates" and "Skills updated" prompts (commented out for now, probably will eliminate)
* Wifi setup filters out hidden ("x00") networks
* Visemes should keep up better if they get behind (will skip)
* Mimic is now searched for on the users path
* Onboarding process:
  - wifi setup starts automatically
  - User is walked through the process
  - wake word and button pressing are ignored
  - At end, a short tutorial is given

* Fixing pep8 whitespace errors... grrr

* Typo in onboarding changes prevented pairing for auto-starting

The command "pair my device" needed to be sent as an array, ["pair my device"]
2017-06-07 19:40:34 -05:00