Commit Graph

1964 Commits (136f1af8c3a82beb669ada69e188ae447c98ebec)

Author SHA1 Message Date
Åke Forslund 4e7defa89f Fix pep8 issues. 2017-08-17 02:05:02 -05:00
Åke Forslund 1c5da3e25d Move messagebus test to integration tests 2017-08-17 02:05:02 -05:00
Art McGee 828d305e6c This tests the messagebus for mycroft.
This is just a basic test of sending between websocket clients.  It makes sure the message gets to the other side. It doesn't check for correct ness.  More testing sure could be done.

Signed-off-by: Art McGee <amcgee7@jaguarlandrover.com>
2017-08-17 02:05:02 -05:00
Åke Forslund 4157585c0a Move lock tests into unittest directory 2017-08-17 02:05:02 -05:00
harika 173bee9f95 Fixed pep8 format 2017-08-17 02:05:02 -05:00
harika 4c3dd3aa7c Updating skill_tester to automate skills testing(regression) 2017-08-17 02:05:02 -05:00
harika 632df2a498 Update tests 2017-08-17 02:05:02 -05:00
harika cbbe3fe1cd __init__.py must be present 2017-08-17 02:05:02 -05:00
harika e2811ccde2 added some stuffs --arron says it's awesome! 2017-08-17 02:05:02 -05:00
Åke Forslund c8dd1a9b46 Make discover test directory settable
The skill directory can be specified when calling the discovery_test

`PYTHONPATH=./ python test/integrationtests/skills/discovery_test.py
 SKILL_DIR`
2017-08-17 02:05:02 -05:00
Åke Forslund f0a7a71e01 Fix shutdown error.
None type can be in skill list
2017-08-17 02:05:02 -05:00
Åke Forslund 39d0451143 Separate tests into unittests and integrationtests 2017-08-17 02:05:02 -05:00
Åke Forslund 949c3f91f4 Cleanup
- Load skills only once
- Fix find skill name method
- pep8 fix
2017-08-17 02:05:02 -05:00
Åke Forslund 73c53aa8ea Hackish first step to getting skill tester up and running 2017-08-17 02:05:02 -05:00
Steve Penrod 4a82b5b4a6 Deal with case of nor pre-existing .pth file
Add support for a perfectly clean virtualenv that doesn't have a
_virtualenv_path_extensions.pth file already.
2017-08-16 23:47:28 -07:00
Augusto Monteiro 873b231a54 Merge pull request #990 from forslund/feature/downloader
Add class for handling downloads
2017-08-16 12:54:18 -04:00
Steve Penrod 29ee8bb26d Changed from .pth to add2virtualenv equivalent
The mycroft-core.pth file wasn't addequate to get Python to fully
accept mycroft-core into the system path.  For example, some of
the integration tests would fail in odd ways.

So switched to using add2virtualenv, which is was fine.  But you
can't call that within the dev_setup.sh script since it is a
shell function.  So instead this code does essentially what
add2virtualenv does.
2017-08-16 02:02:39 -07:00
Åke Forslund f19ac28a5c Add some safety to the add/remove context methods
====  Tech Notes ====
Invalid context or word arguments will now raise ValueError
2017-08-15 21:27:19 -05:00
Åke Forslund b1082d4b27 Only use latest meaning of each keyword 2017-08-15 21:27:19 -05:00
Åke Forslund ddb514e470 Add basic tests for context manager 2017-08-15 21:27:19 -05:00
Åke Forslund 242770aa94 Update context config options
- options grouped under "context"
- added option to activate "greedy" context gathering
2017-08-15 21:27:19 -05:00
Åke Forslund d7cbe3065a Add decorators making context management easier 2017-08-15 21:27:19 -05:00
Åke Forslund c9b19cb97e Fix remove_context
Also remove debug prints
2017-08-15 21:27:19 -05:00
Åke Forslund 471a8d8360 Add configuration settings for using adapt's context 2017-08-15 21:27:19 -05:00
Åke Forslund b9a054e669 Manual context injection
A skill can inject context to enable and disable intent handlers
automatically depending on previous conversation.
2017-08-15 21:27:19 -05:00
Steve Penrod dd2aa0900c Add mycroft-core to virtualenv path
Add the insertion of mycroft-core in the virtualenv created by
dev_setup.sh.  It becomes part of the python2.7 site-packages.
This is needed for running mycroft-core pieces directly from
the command line, after performing "workon mycroft".
2017-08-15 18:54:11 -07:00
Augusto Monteiro 47232ca2d7 Merge pull request #991 from forslund/subscription-api
Add subscription endpoint to DeviceApi
2017-08-15 14:57:27 -04:00
Åke Forslund 025a771fe1 Add class for handling downloads
====  Tech Notes ====
Downloader() is a Thread subclass starting and handling a download. The
property done and status is set when the download is completed or
failed.
download manager ensuring continuation of started downloads (per process)
complete_action, a function to be called after download is complete can be
supplied to the downloader
2017-08-15 14:42:32 +02:00
Åke Forslund e40ad7e4dc Add subscription endpoint to DeviceApi
====  Tech Notes ====
The DeviceApi now has a `get_subscription()` method returning the entire
subscription structure and the property `is_subscriber` returning True
if the device is connected to a paying account and False if it's a free
account.
2017-08-15 09:03:30 +02:00
Steve Penrod 5e2567c481 General cleanup of Mycroft Skill Manager (msm) (#973)
Clean-up of many things about MSM:
* Improve help message, documenting all options
* Make the DEFAULT_SKILLS list readable (wrapped lines)
* Prefix messages with ERROR or WARNING
* Fix return codes, they can't be > 255.  301 and 303 are now 201 and 203
* Cache list of skills (instead of hitting web repeatedly)
* Improve code spacing, comments
* Improve format of output messages
* Sort skills from 'list' and 'search' commands
* Return result codes (was always 0)

====  Tech Notes ====
The "install" skill will be updated to use result codes instead
of searching for specific message strings.  It was already
broken due to mismatch of the success message string.

==== Localization Notes ====
With error codes, output strings are less important
2017-08-14 17:02:41 -05:00
Åke 6fc6c7e1fb Merge pull request #988 from MycroftAI/feature/issue-984
#984 -- no need to clone all mimic branches for the dev_setup
2017-08-14 07:55:33 +02:00
aatchison 2124d730d2 Commit headline -- not longer than this line (50)
==== Fixed Issues ====
984 - install_mimic.sh -- Mimic shouldn't have to clone all branches
====  Tech Notes ====
This modification clones the mimic repository with a depth of one in
order to reduce download times and local size. A side affect might be
that this would make it harder for developers to checkout different
mimic branches, as they would have to tech them first.
2017-08-14 09:04:52 +09:00
penrods ece734b55a Prevent unneeded mimic compilation in dev_setup.sh
The code that detected existing mimic installs and asked for
confirmation before rebuilding had a few holes:
* A source install of mimic under the mycroft-core tree was missed
* Hitting "enter" or "spacebar" would be interpreted as "yes, rebuild",
  which didn't match the prompt.
2017-08-12 06:40:24 -05:00
Augusto Monteiro 8b1fb5de76 Merge pull request #981 from forslund/pulse-volume
Add handlers for lowering/restoring pulseaudio vol
2017-08-11 11:01:59 -04:00
Åke Forslund 44b68e3f3f Add handlers for lowering/restoring pulseaudio vol
====  Tech Notes ====
pulse_lower_volume() scans through the list of running input sinks and
reduces the volume to 30% of original volume skipping over the stream
named 'mycroft-voice'

pulse_restore_volume() restores the volume again.

If activated with the 'pulseaudio' config parameter they will be called
when mycroft starts/stops listening and starts/stops speaking

==== Environment Notes ====
The Audio->pulseaudio configuration parameter can now be set to 'lower'
to activate this feature
2017-08-11 16:44:24 +02:00
Augusto Monteiro bbde78cee8 Merge pull request #976 from forslund/feature/easier-fallback
Feature/easier fallback
2017-08-10 15:25:14 -04:00
Augusto Monteiro 540adbd195 Merge pull request #959 from forslund/bugfix/issue-958
Make visime stream end together with audio
2017-08-09 13:57:35 -04:00
Augusto Monteiro f2e9d6b2cf Merge pull request #971 from reginaneon/patch-1
Fixing wakeword save
2017-08-09 13:53:58 -04:00
Augusto Monteiro 2b171b4d34 Merge pull request #970 from forslund/bugfix/issue-969
Fix message bus logging for audio service
2017-08-09 13:42:10 -04:00
Augusto Monteiro a5c35c785c Merge pull request #974 from forslund/feature/msm-man-page
Add manual page for msm
2017-08-09 13:40:36 -04:00
Augusto Monteiro bd162a8fde Merge pull request #979 from forslund/bugfix/issue-978
Fix mute mycroft-voice
2017-08-09 13:39:22 -04:00
Åke Forslund dc8b01f61f Fix mute mycroft-voice
====  Fixed Issues ====
#978

====  Tech Notes ====
We name the stream insted of the client. Now mycroft-voice is excluded
from mute.
2017-08-09 17:28:42 +02:00
Åke Forslund 1d7d02161d Add a default shutdown method for fallback skills
====  Tech Notes ====
Adds a shutdown method that removes all handlers registered by the
current instance.
2017-08-09 14:24:21 +02:00
Åke Forslund c363662b67 Remove need for name parameter
====  Tech Notes ====
If name is not provided the class name will be used
2017-08-09 14:18:14 +02:00
Åke 639d365cbe Merge pull request #975 from forslund/bugfix/Mycroft-skill-double-init
Fix double __init__ in MycroftSkill
2017-08-09 13:52:02 +02:00
Åke Forslund 7f5f1ac2c1 Fix double __init__ in MycroftSkill
==== Fixed Issues ====
NONE

====  Tech Notes ====
During earlier rebase it seems like a double instance of __init__ got
into MycroftSkill.

====  Documentation Notes ====
NONE

==== Localization Notes ====
NONE

==== Environment Notes ====
NONE

==== Protocol Notes ====
NONE
2017-08-09 13:31:55 +02:00
Åke Forslund 3dee3b5680 Add manual page for msm
==== Fixed Issues ====
#966

====  Tech Notes ====
Adds a basic manual page for msm, required for packaging for some OS'es

====  Documentation Notes ====
NONE

==== Localization Notes ====
Might need translation at some point

==== Environment Notes ====
msm/man1/msm should be copied into the manual man1 directory
(/usr/local/share/man/man1) and mandb needs to be run after a package
install.

==== Protocol Notes ====
NONE
2017-08-09 12:39:52 +02:00
el-tocino 08e76e538d added actions to the help section of msm. (#972)
Add actions to the help section of msm.
2017-08-09 08:09:18 +02:00
reginaneon c96d0a3d5b Bug Fix
Bug fix proposed for success wake-word recording. 
Opt: Suggestion to change the save location of recording files as well. 
Otherwise, the user could potentially get the permission denial. 
-NeonGecko.com Inc
2017-08-08 15:38:58 -07:00
Åke ab22106659 Merge pull request #938 from MycroftAI/feature/fallbacks
Add intent fallback system

==== Fixed Issues ====
NONE - replace with issue numbers, e.g. #123, #304

====  Tech Notes ==== 
NONE - explain new algorithms in detail, tool changes, etc.

====  Documentation Notes ==== 
The FallbackSkill needs to be documented in detail for skill creators.


==== Environment Notes ==== 
NONE

==== Protocol Notes ====
multi_utterance_intent_failure replaced with complete_intent_failure
2017-08-08 21:00:51 +02:00