Commit Graph

1778 Commits (0bf3d9a66884a8dc7791454607847f87e5a5cb9b)

Author SHA1 Message Date
Michael Nguyen 157c113678 fixed timer bug 2017-10-13 13:43:55 -05:00
Åke ca878d76d3 Merge pull request #1152 from MycroftAI/feature/SkillManager
SkillManager, msm messagebus notifications
2017-10-13 16:02:42 +02:00
Åke Forslund b40e03d859 Fix update interval after success
The interval was previously not updated after success (unless speak was set to
true). This caused the skills to continuously update.

Also set speak = false as default since that's the most commonly used
case right now.
2017-10-13 15:53:10 +02:00
Åke Forslund 7c0a3b2fe5 Fix codacy warnings. 2017-10-13 11:22:01 +02:00
penrods 3d64509b25 SkillManager, msm messagebus notifications
Significantly reworked the loading/updating of Skills.  Unified
all management under a single SkillManager class.  This class
runs as a thread that initially loads, upgrades (via MSM)
and reloads skills.

Removed the independent threads that were being run.  The skill
updating still happens once an hour, but works in conjunction
with the scan to reload modified skills.  Also added messagebus
notifications from MSM so mycroft-core can pause reloading
skills until the installation is complete.

Added a new mycroft.messagebus.send module to allow command
line interaction with the messagebus, e.g.:
   python -m mycroft.messagebus.send mycroft.wifi.start
   python -m mycroft.messagebus.send speak '{"utterance":"hello"}'

==== Fixed Issues ====
MSM installs that have PIP dependencies were failing, as the
load would occur after code was retrieved but before PIP install
completed.  Restart was required to load new skills.

====  Tech Notes ====
TODO: Change the way we manage modules.  The auto-load of the
remote configuration for the module is silly, slow and wasteful.

I made the WebsocketClient.build_url() method static in
anticipation of being able to do this more efficiently when the
submodule load doesn't hit the remove API automatically.

==== Localization Notes ====
Modified 'sorry I couldn't install default skills' message.

==== Protocol Notes ====
MSM now generates:
  msm.updating
  msm.installing
  msm.install.succeeded     { "skill" : name }
  msm.install.failed        { "skill" : name, "error" : code }
  msm.installed
  msm.updated
  msm.removing
  msm.remove.succeeded      { "skill" : name }
  msm.remove.failed { "skill" : name, "error" : code }
  msm.removed

An update can now be forced by posting 'skillmanager.update' to the
messagebus.
2017-10-13 02:21:58 -05:00
Michael Nguyen 614cc57d01 made some changes 2017-10-12 14:36:23 -05:00
Michael Nguyen cec098c442 update docstring 2017-10-12 13:32:50 -05:00
Michael Nguyen f3dacfb204 ==== Tech Notes ====
added capability to auto upload changes from settingsmeta.json to home.mycroft.ai

====  Documentation Notes ====
If a developer make changes to the settingsmeta.json, then this will be auto uploaded to home.mycroft.ai

==== Protocol Notes ====
hash and uuid are now stored as variables in files located in ~/.mycroft/skills/{skill-name}
2017-10-12 12:35:50 -05:00
Harald Sitter 00e5f74222 typo fix
installation is spelled with two l
2017-10-11 22:59:51 -05:00
Augusto Monteiro 'Sparky beaea7557b Fixing random extra space 2017-10-11 14:36:12 -05:00
Augusto Monteiro 'Sparky e39c38ff3c Updating version when device is update 2017-10-11 14:36:12 -05:00
Augusto Monteiro 3be3e1320e Merge pull request #1129 from MycroftAI/feature/duckduckgo
Add DuckDuckGo as default skill
2017-10-11 14:25:04 -04:00
Åke Forslund a5b96ba285 Correct stop_speaking() to handle threaded tts OK
====  Tech Notes ====
Now the stop_speaking() method sends a signal to the speech module to
stop speech instead of killing all aplay/paplay instances
2017-10-10 14:02:18 -05:00
Åke Forslund 0daee0eb53 Fix bug in stop_speaking()
====  Tech Notes ====
stop_speaking would not run properly due to two missing imports
2017-10-10 14:02:18 -05:00
Åke a006a3d5b6 Merge pull request #1120 from MycroftAI/feature/fix-log-autocomplete
Fix log autocomplete

==== Tech Notes ====
Due to the use of setattr(), IDEs like PyCharm couldn't use autocomplete on the LOG class. This unrolls the loop so that the logging attributes appear in the autocomplete menu.
2017-10-07 13:06:15 +02:00
Matthew D. Scholefield ef1a6e24c3 Upgrade padatious to fix travis build 2017-10-06 00:06:08 -05:00
Michael Nguyen 33277fef34 Merge pull request #1132 from MycroftAI/bugfix/padatious-load-vs-add
Padatious fixes
2017-10-05 16:34:45 -05:00
Arron Atchison 896470c18f Update __init__.py 2017-10-05 20:38:39 +09:00
Arron Atchison 2a8aeeb459 version bump to 9.0.0 2017-10-05 20:36:09 +09:00
Åke Forslund ad0e9870c2 Add notifications when starting/stopping recording
====  Tech Notes ====
Add text notifying start and stop of recording
2017-10-04 21:56:02 -05:00
Matthew D. Scholefield b6bc4ee482 Increment padatious version number to 0.3.3
This adds a bugfix for empty containers
2017-10-04 21:50:54 -05:00
Matthew D. Scholefield 43a59b0d88 Fix Padatious to load intents and entities
Doesn't make sense to add intents since no sample lines are provided
2017-10-04 21:45:21 -05:00
Matthew D. Scholefield 6a3297e9b1 Add DuckDuckGo as default skill 2017-10-04 18:56:59 -05:00
Åke 6acc0adb40 Merge pull request #1128 from MycroftAI/feature/to-apache-license
Change to Apache 2.0 license from GPLv3.0
2017-10-04 09:13:40 +02:00
penrods d49ec3616f Fixing PEP8 whitespace errors 2017-10-04 01:44:58 -05:00
penrods 8f2e5d9498 Change to Apache 2.0 license from GPLv3.0
This commit officially switches the mycroft-core repository from
GPLv3.0 licensing to Apache 2.0.  All dependencies on GPL'ed code
have been removed and we have contacted all previous contributors
with still-existing code in the repository to agree to this change.

Going forward, all contributors will sign a Contributor License
Agreement (CLA) by visiting https://mycroft.ai/cla, then they will
be included in the Mycroft Project's overall Contributor list,
found at: https://github.com/MycroftAI/contributors.  This cleanly
protects the project, the contributor and all who use the technology
to build upon.

Futher discussion can be found at this blog post:
https://mycroft.ai/blog/right-license/

This commit also removes all __author__="" from the code.  These
lines are painful to maintain and the etiquette surrounding their
maintainence is unclear.  Do you remove a name from the list if the
last line of code the wrote gets replaced?  Etc.  Now all
contributors are publicly acknowledged in the aforementioned repo,
and actual authorship is maintained by Github in a much more
effective and elegant way!

Finally, a few references to "Mycroft AI" were changed to the correct
legal entity name "Mycroft AI Inc."

==== Fixed Issues ====
#403 Update License.md and file headers to Apache 2.0
#400 Update LICENSE.md

====  Documentation Notes ====
Deprecated the ScheduledSkill and ScheduledCRUDSkill classes.
These capabilities have been superceded by the more flexible MycroftSkill
class methods schedule_event(), schedule_repeating_event(), update_event(),
and cancel_event().
2017-10-04 01:28:44 -05:00
Åke b850143824 Merge pull request #1117 from forslund/bugfix/inspect-failure
Add workaround for inspect-decorator problem
2017-10-04 07:08:15 +02:00
Matthew D. Scholefield 32ac6a83da Fix Padatious parameter 2017-10-03 19:31:37 -05:00
Augusto Monteiro 7252f5e7dd Merge pull request #1127 from MycroftAI/feature/detect-opt-in
Use opt in value to record wake words
2017-10-03 13:33:40 -05:00
Michael Nguyen 2d1411a86d Merge pull request #1125 from MycroftAI/feature/upgrade-padatious
Upgrade Padatious to 0.3.2 which brings in entity support
2017-10-03 13:28:23 -05:00
Matthew D. Scholefield 0569ba40f7 Use opt in value to record wake words 2017-10-03 13:24:09 -05:00
Matthew D. Scholefield 403aeb9360 Upgrade Padatious to 0.3.2 which brings in entity support 2017-10-03 12:17:02 -05:00
Matthew D. Scholefield 8cc569eb79 Add pep8speaks config file 2017-10-02 23:02:25 -05:00
Åke dfaed4f610 Merge pull request #1119 from MycroftAI/bugfix/fix-save
Fix configuration manager saving

==== Tech Notes ====
Fixes ConfigurationManager.save() method. Previously incorrect use of dict update method resulted in empty config. Now the saved dict is recursively merged to only update affected fields.
2017-09-29 09:45:36 +02:00
Matthew D. Scholefield 9483d0a50e Unroll loop to explicitly show attributes in LOG
This allows IDEs to use autocomplete on the LOG class
2017-09-29 02:01:22 -05:00
Matthew D. Scholefield da448c4bdd Change update to merge_conf
This prevents replacing sub-dicts rather than recursively merging
2017-09-29 01:39:16 -05:00
Matthew D. Scholefield a6709033d4 Remove wifi setup 2017-09-29 15:12:47 +09:00
Matthew D. Scholefield 4c1a0d471b Fix configuration manager saving 2017-09-28 22:29:17 -05:00
Anunayj 4b4a48f796 Added Alternate path for Virtual Wrapper Python
Some user reported problems with the previous ones saying that virtualenvwrapper is a drectory (which it apperantly was)
2017-09-28 11:47:23 -05:00
Patrick Freeman 4f4547182b issue-1091 - Provide Dutch translations of dialog files 2017-09-28 11:28:45 -05:00
Åke Forslund 605f0640ec Make sure structure for wake word exist before use
==== Fixed Issues ====
#1105

====  Tech Notes ====
Verify that the sub-config for the set wake word exist before writing to
it.
2017-09-28 11:22:41 -05:00
Jarbas f5806b86c5 fallback start, end, failure messages (#1108)
==== Tech Notes ====
Add mycroft.skill.handler.start and mycroft.skill.handler.complete to fallback handler. handler in data field will be called "fallback" upon completion the used handler will be reported in the "fallback_handler" data entry.

* fix

* pep8

* fallback handler name
2017-09-28 17:53:57 +02:00
Åke Forslund 838e2dd7d8 Remove repeating events from saved schedule
====  Tech Notes ====
Repeating events are not saved to make sure repeating events aren't
stacked over and over.
2017-09-28 02:24:34 -05:00
Åke Forslund 5d9574ea4f Reorder canceling and adding event handling
====  Tech Notes ====
If cancel + add event messages arrive at roughly the same time the add
would be overridden by the cancel. More intuitive to handle cancel first
and add new arrived events after.
2017-09-28 02:24:34 -05:00
Åke Forslund 1d0e65dfb1 Fix update_event and cancel_event methods
====  Tech Notes ====
update_event and cancel_event did not use a name unique to the skill
forcing the user to build it themselves. Now the unique name is
constructed in the method _unique_name() for all event scheduling
methods.
2017-09-28 02:24:34 -05:00
Steve Penrod 0709aa8b9e Update for new scripts
Significant edit:
* Remove mentions of old start.sh / mycroft.sh
* Enhanced getting started instructions with more explicit steps
* Reorganized to place most commonly wanted information up front.
2017-09-28 01:57:46 -05:00
Steve Penrod 37a798385e Remove unused variable noticed by Codacy
Removed the unused exit_code variable
2017-09-28 01:08:20 -05:00
Steve Penrod f0086d8881 Remove "restart", auto-restart running services
Remove the "restart" option, instead all of the background services
now automatically check to see if they are already running and will
be stopped then restarted if so.

Also fixed a few Codacy complaints.
2017-09-28 01:08:20 -05:00
Steve Penrod 26559388ea Enhance help message, remove extra whitespace 2017-09-28 01:08:20 -05:00
Steve Penrod 4afa64427d Change default to 'help', add 'debug' option
The default when no parameter is entered is now to display the help.
To start services you can use 'all', or 'debug' to start them followed
but starting the CLI
2017-09-28 01:08:20 -05:00