Commit Graph

2870 Commits (32a3860bce07c8e647310ebc68b51c325f92f02c)

Author SHA1 Message Date
Steve Penrod 718703c94b Silence Codacy complaints
More import cleanup
2018-07-18 13:46:27 +02:00
Steve Penrod 1029881a78 Minor code cleanup
* Add support for "o'clock" variations
* Clean up imports
* Simplified some overly-complex code
* Normalize line endings
2018-07-18 13:46:27 +02:00
Steve Penrod 3624680698 Enhance extract_datetime(), add time utilities
Many cases that were missed in the unittests for extract_datetime()
from the original source.  Restored those tests and made code
adjustments to support them all.

Also adding the mycroft.util.time module.  This supports:
* mycroft.util.time.default_timezone()
  Returns the user-configured timezone based on location
* mycroft.util.time.now_utc()
  Returns the time in UTC
* mycroft.util.time.now_local()
  Returns the time in the user's timezone
* mycroft.util.time.to_utc()
  Converts to UTC
* mycroft.util.time.to_local()
  Converts to user's timezone

NOTE: Several skills should be updated to use these now.

==== Fixed Issues ====
Several issues for skills regarding parsing of "today"

====  Documentation Notes ====
Note the new module:  mycroft.util.time

==== Localization Notes ====
Localized versions of extract_datetime() likely need to be
updated, as most were based on the original English implementation
2018-07-18 13:46:27 +02:00
penrods 6aa83418ec Correct voc files (copy/paste error) 2018-07-17 01:47:17 -05:00
penrods 18ab343b80 Add new MycroftSkill.ask_yesno() method
New function allows simple yes/no queries to be asked, capturing common
affirmations (e.g. "yes", "yeah", "yep", "sure", ...) and rejections
("no", "nope", ...) that are consistent across all skills.

The method will return a normalized 'yes', 'no' or whatever else is spoken
for further parsing.  None is also possible.

This also adds the MycroftSkill.is_match() method to assist in matching
translated synonyms within an utterance.
2018-07-17 01:35:55 -05:00
jwallace00 ccf52f7ace MAXCORES bug fix in dev_setup.sh (#1684)
* Ensure number of  CORES is set to 1 at a minimum when building mimic in dev_setup.sh
2018-07-16 07:10:04 +02:00
Åke 9c8c6b8852
Merge pull request #1686 from JarbasAl/feature/padatious_enable_disable
Make it possible to enable/disable padatious intents
2018-07-14 11:52:12 +02:00
JarbasAI 0e121f8bcd allow disabling intent registered with decorator in initialize (#1685) 2018-07-14 11:36:16 +02:00
Åke Forslund 4b2a25df2c Fix audiotest launching
Launch using python -m instead of python SCRIPT_PATH
2018-07-14 08:43:17 +02:00
Åke Forslund fad890ff39 Clean up setup scripts
- Remove setup scripts for mycroft-skills-sdk since it's not used anymore
- Rename mycroft-base-setup.in/MANIFEST.in to setup.py and MANIFEST.in
- Remove skill-container, since it hasn't been used or kept up to date since 17.08 and the cli commands to remove and activate skills is easier to work with

==== Environment Notes ====
Small update of the packaging script is needed due to this change
2018-07-14 08:36:50 +02:00
jarbasal 56efe5e489 padatious enable/disable 2018-07-14 04:31:39 +01:00
jarbasal c4cdb85599 padatious enable/disable 2018-07-14 04:00:21 +01:00
Steve Penrod 223c88b4dd CLI Updates: Restore VT100 support, help, etc. (#1667)
* Restored VT100 function key support
* ESC now clears the entry line
* Spoken commands now become part of the history
* Enhanced help screen with auto word-wrap
* Bugfix: "Show meter" setting didn't persist, now it does
2018-07-12 09:38:29 +02:00
Steve Penrod bcb1e795ef Add 'venv-activate.sh' script (#1682)
Add 'venv-activate.sh' script

This script in the root makes it easier for devs to discover the
virtual environment which Mycroft should run under.  Virtual
environments are new to many, so the commands aren't obvious even
if they are only one liners.

====  Documentation Notes ====
Should probably be mentioned in the Getting Started docs for
Github users.  This mirrors the 'mycroft-venv-activate' alias found
under Mark 1/Picroft.
2018-07-12 09:15:17 +02:00
Åke 14349cfb25 Remove stray lock.release() (#1680)
This fixes a stray lock.release() causing a silent

RuntimeError: release unlocked lock

after TTS execution but just before reporting the timing for the TTS system.
2018-07-10 12:28:45 -05:00
Åke Forslund 0ae9ccda9a Make vlc ducking configurable 2018-07-10 11:21:33 +02:00
Åke Forslund 8f979df5b1 Reduce log level to debug 2018-07-10 11:21:33 +02:00
Åke Forslund 78dbdf1fb0 Restore volume when stopping playback 2018-07-10 11:20:41 +02:00
Åke Forslund bb2c727485 Add comments and basic docstrings 2018-07-10 11:19:54 +02:00
Åke Forslund 775c536de5 Fix vlc lowering volume while not playing. 2018-07-10 11:19:54 +02:00
Åke 23fcc631c4 Bugfix mycroft-use github (#1659)
* Fix startup scripts

- change start.sh to the new start-mycroft.sh
- fix startup of messagebus service
- fix startup of enclosure

* Fix running dev_setup.sh as root

Use --allow-root when calling dev_setup.sh

* Correct default directory for user

On the Mark-1 the script would create the mycroft-core repo in /home/root instead of /root when running the script as root

* Skip mimic installation correctly

* Allow doing the github install without root

Running mycroft under root stumbles into issues accessing the audio. allowing unstall under pi user is also more intuitive.

* Change ownership of the webcache

* fix starting/stopping wifi-service

* Fix switching permissions

* Correct startup order

- load messagebus before enclosure
- reboot to workaround audio input issue

* Disable updates when switched to github install

* Fix identity update

identity updates weren't transfered back to the mycroft user since the linked file was overwritten. Now the identity folder is linked instead.
2018-07-10 03:26:30 -05:00
Åke f8eb7587df Handle stop correctly in the audio service. (#1677)
* Handle stop correctly in the audio service.

This allows for example the news skill playback to be stopped without
the listening being triggered.

* Handle case where service stops at end of playlist

- Fix issue when receiving multiple stop signals
- Stop method of services now returns True or False depending on if audio was playing
2018-07-10 03:23:41 -05:00
JarbasAI 6cf2ed814c feature/allow to pronounce ordinals and very small fractions (#1663)
* allow to pronounce ordinals

* cleanup

* long scale / short scale very small fractions
2018-07-10 02:54:04 -05:00
Åke 1093383443 Fix extraction of 0 in extract_number() (#1673)
0 was not detected as a valid number when checking if the function should proceed to check for fractions.
2018-07-10 02:26:25 -05:00
devs-mycroft 83254d2f89 Version bump from 18.2.9 to 18.2.10 2018-07-06 09:31:59 +00:00
Åke 779012e693
Merge pull request #1675 from MycroftAI/feature/fix-unknown-platform
Fix crash during initial skill download
2018-07-06 09:04:52 +02:00
Åke 1b01eac7b0
Merge pull request #1657 from MycroftAI/feature/rewrite-precise
Refactor Precise engine and support engine timeouts
2018-07-06 08:52:45 +02:00
penrods e0dc373915 Fix crash during initial skill download
When running on a platform for which there was not DEFAULT.platform
file in the mycroft-skills repo, the downloading of skills would
crash.  Now an informational message is shown and the DEFAULT
skills alone are loaded.
2018-07-06 01:42:16 -05:00
Matthew Scholefield 189e0f10ab Refactor Precise engine and support engine timeouts 2018-07-06 00:05:28 -05:00
Steve Penrod 17aab53fae Enhance the behavior of the Mark 1 button (#1668)
The Mark 1 button press can now be "consumed" when a skill handles
the Stop command.  When this happens, the button press will not
trigger listening mode.  An additional press would be needed to
trigger listening.

This introduces the "mycroft.stop.handled" messagebus message.  It
carries a data field called "by" which identifies who handled it.
Currently the values are "TTS" for when speaking ends or the name
of a skill which implements Stop and returns True from the call.

Also fixed a potential bug when the flag to clear queued visemes
was left set after a button press.
2018-07-05 20:56:54 +02:00
JarbasAI db4740d407 Add Responsive voice tts (#1565)
Adds responsive voice as an optional TTS service.

See https://responsivevoice.org/text-to-speech-sdk/text-to-speech-widget/
2018-07-04 13:21:34 +02:00
Åke eb091ea87a
Update requests to bleeding edge (2.19.1) (#1661) 2018-07-04 09:54:28 +02:00
Åke 622748d7d3 Bugfix/parse corrections (#1670)
* Restore extractdatetime to return False

- Restore extractdatetime to return False if no time was found
- Add tests to make sure this is true
- Add a extract_datetime function to keep coherency with the rest of the functions. (the old extractdatetime still exists for compatibility)
- Update documentation to match

* Minor corrections to docstrings.
2018-07-02 02:44:28 -05:00
Michael Nguyen 8a26a3769a
Merge pull request #1666 from MycroftAI/feature/upgrade-msm-1
Upgrade msm
2018-06-28 17:00:17 -05:00
Matthew D. Scholefield 6a26af1ec5
Upgrade msm
This fixes a bug in msk with extract_author
2018-06-28 16:38:19 -05:00
Michael Nguyen 4522f9adcb
Merge pull request #1662 from MycroftAI/feature/upgrade-padaos-1
Upgrade Padaos
2018-06-27 14:54:49 -05:00
Matthew D. Scholefield 2cae3c91e2
Update Padaos
This fixed issues with Python 3.4
2018-06-27 13:19:09 -05:00
JarbasAI d69e73ced9 govivace_stt (#1654)
* Add support for Govivace STT (https://www.govivace.com/)
2018-06-27 16:09:56 +02:00
Aditya Mehra 3ae4746099 Feature add query mic status (#1656)
* Feature: Add query mic status

Adds the message bus message `mycroft.mic.get_status` which responds with data on if mic is muted or not.
2018-06-27 15:51:33 +02:00
JarbasAI fa4173a2d3 fix extract date (#1651)
* Fix errors when spaces are missing "3pm" "5seconds"
* Fix relative times "in 15 minutes" is now from current time not from midnight

Resolves #1650
2018-06-26 11:45:39 +02:00
Michael Nguyen cf847d1bf2
Merge pull request #1660 from MycroftAI/feature/upgrade-padaos
Lock padaos version
2018-06-25 16:00:48 -05:00
Matthew D. Scholefield 8afde98c7f
Lock padaos version
This forces users to get the new version when they run `dev_setup.sh`.
2018-06-25 15:28:34 -05:00
Carsten Agerskov 5994644085 Feature/nice date (#1635)
* Added nice_date, nice_date_time, nice_year
2018-06-25 17:43:24 +02:00
Åke b1408617bc CLI Feature: skill commands (#1612)
* Update format for skill listing

Now send the skills with id and active status

* Add commands to activate/deactivate skills

* Add "unload all except one" functionallity

* Update after rebasing

- fix identifying skills

* Unload skills if they're removed from disk

* Rename _shutdown to default_shutdown

The method is not intended to be non-public, and this should shut up
codacy bot.

* Handle keep command without argument

* Add new commands to help

- Split help into multiple pages as needed

* Support :activate all
2018-06-22 00:59:51 -05:00
jarbasal 57a86a7fe6 pep8 2018-06-22 01:03:32 +01:00
jarbasal 1710803bb0 pronounce scientific notation 2018-06-22 01:03:32 +01:00
jarbasal 2f05b0b820 fix extra zero 2018-06-22 01:01:59 +01:00
jarbasal 8637236490 codacy 2018-06-21 19:15:11 +01:00
jarbasal f95c7cf805 py3.4 compatibility 2018-06-21 17:19:54 +01:00
devs-mycroft a085bfeee6 Version bump from 18.2.8 to 18.2.9 2018-06-21 11:49:07 +00:00