diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..85bea1f --- /dev/null +++ b/.gitignore @@ -0,0 +1,34 @@ +dev.env +.dev_opts.json +.idea +*.code-workspace +*.pyc +*.swp +*~ +mimic +/skills +pocketsphinx-python +*.egg-info/ +build +dist +tornado.web +tornado.ioloop +mycroft/__version__.py +scripts/logs/* +logs/* +.coverage +/htmlcov +test/audio_accuracy/data +scripts/*.screen +doc/_build/ +.installed +.mypy_cache +.vscode +.theia +.venv/ + +# Created by unit tests +test/unittests/skills/test_skill/settings.json +test_conf.json +.pytest_cache/ +/.gtm/ diff --git a/LICENSE b/LICENSE index c5ebd49..1486acc 100644 --- a/LICENSE +++ b/LICENSE @@ -187,7 +187,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright [yyyy] [name of copyright owner] + Copyright 2024 Casimiro Ferreira Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -200,5 +200,3 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - -======================================================================= diff --git a/README.md b/README.md index d30ca20..c12f8ab 100644 --- a/README.md +++ b/README.md @@ -18,28 +18,6 @@ If you like what you hear on SomaFM and want to help, please consider visiting t * "play secret agent" * "play metal detector" -# Platform support - -- :heavy_check_mark: - tested and confirmed working -- :x: - incompatible/non-functional -- :question: - untested -- :construction: - partial support - -| platform | status | tag | version | last tested | -|:---------------:|:----------:|:-----:|:-------:|:-----------:| -| [Chatterbox](https://hellochatterbox.com) | :question: | dev | | never | -| [HolmesV](https://github.com/HelloChatterbox/HolmesV) | :question: | dev | | never | -| [LocalHive](https://github.com/JarbasHiveMind/LocalHive) | :question: | dev | | never | -| [Mycroft Mark1](https://github.com/MycroftAI/enclosure-mark1) | :question: | dev | | never | -| [Mycroft Mark2](https://github.com/MycroftAI/hardware-mycroft-mark-II) | :question: | dev | | never | -| [NeonGecko](https://neon.ai) | :question: | dev | | never | -| [OVOS](https://github.com/OpenVoiceOS) | :question: | dev | | never | -| [Picroft](https://github.com/MycroftAI/enclosure-picroft) | :question: | dev | | never | -| [Plasma Bigscreen](https://plasma-bigscreen.org/) | :question: | dev | | never | - -- `tag` - link to github release / branch / commit -- `version` - link to release/commit of platform repo where this was tested - ## Credits - JarbasAl diff --git a/__init__.py b/__init__.py index 75b89cf..1311efb 100755 --- a/__init__.py +++ b/__init__.py @@ -1,20 +1,30 @@ from os.path import join, dirname import radiosoma + +from ovos_utils import classproperty +from ovos_utils.ocp import MediaType, PlaybackType from ovos_utils.parse import fuzzy_match -from ovos_workshop.skills.common_play import OVOSCommonPlaybackSkill, \ - MediaType, PlaybackType, ocp_search, MatchConfidence, ocp_featured_media from ovos_utils.process_utils import RuntimeRequirements -from ovos_utils import classproperty +from ovos_workshop.decorators.ocp import ocp_search, ocp_featured_media +from ovos_workshop.skills.common_play import OVOSCommonPlaybackSkill class SomaFMSkill(OVOSCommonPlaybackSkill): - def __init__(self): - super().__init__("SomaFM") - self.supported_media = [MediaType.GENERIC, - MediaType.MUSIC, - MediaType.RADIO] + + def __init__(self, *args, **kwargs): + self.supported_media = [MediaType.MUSIC, MediaType.RADIO] self.skill_icon = join(dirname(__file__), "ui", "somafm.png") + super().__init__(*args, **kwargs) + self.load_ocp_keywords() + + def load_ocp_keywords(self): + # register with OCP to help classifier pick MediaType.RADIO + self.register_ocp_keyword(MediaType.RADIO, + "radio_station", [s.title for s in radiosoma.get_stations()]) + self.register_ocp_keyword(MediaType.RADIO, + "radio_streaming_provider", + ["SomaFM", "Soma FM", "Soma"]) @classproperty def runtime_requirements(self): @@ -79,7 +89,7 @@ def search_somafm(self, phrase, media_type): for ch in radiosoma.get_stations(): score = round(base_score + fuzzy_match(ch.title.lower(), phrase.lower()) * 100) - if score <= MatchConfidence.AVERAGE_LOW.value: + if score < 50: continue yield { "match_confidence": min(100, score), @@ -93,7 +103,3 @@ def search_somafm(self, phrase, media_type): "author": "SomaFM", "length": 0 } - - -def create_skill(): - return SomaFMSkill() diff --git a/build/lib/skill_ovos_somafm/CHANGELOG.md b/build/lib/skill_ovos_somafm/CHANGELOG.md deleted file mode 100644 index 581553d..0000000 --- a/build/lib/skill_ovos_somafm/CHANGELOG.md +++ /dev/null @@ -1,22 +0,0 @@ -# Changelog - -## [V0.0.1a2](https://github.com/OpenVoiceOS/skill-ovos-somafm/tree/V0.0.1a2) (2023-03-08) - -[Full Changelog](https://github.com/OpenVoiceOS/skill-ovos-somafm/compare/V0.0.1a1...V0.0.1a2) - -**Merged pull requests:** - -- Stable Dependencies [\#3](https://github.com/OpenVoiceOS/skill-ovos-somafm/pull/3) ([NeonDaniel](https://github.com/NeonDaniel)) - -## [V0.0.1a1](https://github.com/OpenVoiceOS/skill-ovos-somafm/tree/V0.0.1a1) (2023-02-23) - -[Full Changelog](https://github.com/OpenVoiceOS/skill-ovos-somafm/compare/8656c7cd58062601897972f0062bdf6c575d5481...V0.0.1a1) - -**Merged pull requests:** - -- feat/runtime\_requirements [\#2](https://github.com/OpenVoiceOS/skill-ovos-somafm/pull/2) ([JarbasAl](https://github.com/JarbasAl)) -- ovos-core 0.0.6 Compatibility, Automation [\#1](https://github.com/OpenVoiceOS/skill-ovos-somafm/pull/1) ([NeonDaniel](https://github.com/NeonDaniel)) - - - -\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)* diff --git a/build/lib/skill_ovos_somafm/LICENSE b/build/lib/skill_ovos_somafm/LICENSE deleted file mode 100644 index c5ebd49..0000000 --- a/build/lib/skill_ovos_somafm/LICENSE +++ /dev/null @@ -1,204 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -======================================================================= diff --git a/build/lib/skill_ovos_somafm/MANIFEST.in b/build/lib/skill_ovos_somafm/MANIFEST.in deleted file mode 100644 index 870b808..0000000 --- a/build/lib/skill_ovos_somafm/MANIFEST.in +++ /dev/null @@ -1,9 +0,0 @@ -recursive-include dialog * -recursive-include vocab * -recursive-include locale * -recursive-include res * -recursive-include ui * -include README.md -include requirements.txt -include CHANGELOG.md -include LICENSE diff --git a/build/lib/skill_ovos_somafm/README.md b/build/lib/skill_ovos_somafm/README.md deleted file mode 100644 index d30ca20..0000000 --- a/build/lib/skill_ovos_somafm/README.md +++ /dev/null @@ -1,54 +0,0 @@ -# SomaFM - -OCP skill for SomaFM - -## About - -![somabanner](http://somafm.com/linktous/728x90sfm.jpg) - -SomaFM is a listener-supported Internet-only radio station. That means no advertising or annoying commercial interruptions. SomaFM's mission is to search for and expose great new music which people may otherwise never encounter. - -If you like what you hear on SomaFM and want to help, please consider visiting their site and [making a donation](https://somafm.com/support/). - -![](./gui.png) - -## Examples - -* "play soma fm radio" -* "play secret agent" -* "play metal detector" - -# Platform support - -- :heavy_check_mark: - tested and confirmed working -- :x: - incompatible/non-functional -- :question: - untested -- :construction: - partial support - -| platform | status | tag | version | last tested | -|:---------------:|:----------:|:-----:|:-------:|:-----------:| -| [Chatterbox](https://hellochatterbox.com) | :question: | dev | | never | -| [HolmesV](https://github.com/HelloChatterbox/HolmesV) | :question: | dev | | never | -| [LocalHive](https://github.com/JarbasHiveMind/LocalHive) | :question: | dev | | never | -| [Mycroft Mark1](https://github.com/MycroftAI/enclosure-mark1) | :question: | dev | | never | -| [Mycroft Mark2](https://github.com/MycroftAI/hardware-mycroft-mark-II) | :question: | dev | | never | -| [NeonGecko](https://neon.ai) | :question: | dev | | never | -| [OVOS](https://github.com/OpenVoiceOS) | :question: | dev | | never | -| [Picroft](https://github.com/MycroftAI/enclosure-picroft) | :question: | dev | | never | -| [Plasma Bigscreen](https://plasma-bigscreen.org/) | :question: | dev | | never | - -- `tag` - link to github release / branch / commit -- `version` - link to release/commit of platform repo where this was tested - - -## Credits -- JarbasAl - -## Category -**Entertainment** - -## Tags -#audio -#music -#OCP -#entertainment diff --git a/build/lib/skill_ovos_somafm/__init__.py b/build/lib/skill_ovos_somafm/__init__.py deleted file mode 100644 index 75b89cf..0000000 --- a/build/lib/skill_ovos_somafm/__init__.py +++ /dev/null @@ -1,99 +0,0 @@ -from os.path import join, dirname - -import radiosoma -from ovos_utils.parse import fuzzy_match -from ovos_workshop.skills.common_play import OVOSCommonPlaybackSkill, \ - MediaType, PlaybackType, ocp_search, MatchConfidence, ocp_featured_media -from ovos_utils.process_utils import RuntimeRequirements -from ovos_utils import classproperty - - -class SomaFMSkill(OVOSCommonPlaybackSkill): - def __init__(self): - super().__init__("SomaFM") - self.supported_media = [MediaType.GENERIC, - MediaType.MUSIC, - MediaType.RADIO] - self.skill_icon = join(dirname(__file__), "ui", "somafm.png") - - @classproperty - def runtime_requirements(self): - return RuntimeRequirements(internet_before_load=True, - network_before_load=True, - gui_before_load=False, - requires_internet=True, - requires_network=True, - requires_gui=False, - no_internet_fallback=False, - no_network_fallback=False, - no_gui_fallback=True) - - @ocp_featured_media() - def featured_media(self): - return [{ - "match_confidence": 90, - "media_type": MediaType.RADIO, - "uri": ch.direct_stream, - "playback": PlaybackType.AUDIO, - "image": ch.image, - "bg_image": ch.image, - "skill_icon": self.skill_icon, - "title": ch.title, - "author": "SomaFM", - "length": 0 - } for ch in radiosoma.get_stations()] - - @ocp_search() - def ocp_somafm_playlist(self, phrase): - phrase = self.remove_voc(phrase, "radio") - if self.voc_match(phrase, "somafm", exact=True): - yield { - "match_confidence": 100, - "media_type": MediaType.RADIO, - "playlist": self.featured_media(), - "playback": PlaybackType.AUDIO, - "skill_icon": self.skill_icon, - "image": "https://somafm.com/img3/LoneDJsquare400.jpg", - "bg_image": "https://somafm.com/about/pics/IMG_0974.jpg", - "title": "SomaFM (All stations)", - "author": "SomaFM" - } - - @ocp_search() - def search_somafm(self, phrase, media_type): - base_score = 0 - - if media_type == MediaType.RADIO: - base_score += 20 - else: - base_score -= 30 - - if self.voc_match(phrase, "radio"): - base_score += 10 - phrase = self.remove_voc(phrase, "radio") - - if self.voc_match(phrase, "somafm"): - base_score += 30 # explicit request - phrase = self.remove_voc(phrase, "somafm") - - for ch in radiosoma.get_stations(): - score = round(base_score + fuzzy_match(ch.title.lower(), - phrase.lower()) * 100) - if score <= MatchConfidence.AVERAGE_LOW.value: - continue - yield { - "match_confidence": min(100, score), - "media_type": MediaType.RADIO, - "uri": ch.direct_stream, - "playback": PlaybackType.AUDIO, - "image": ch.image, - "bg_image": ch.image, - "skill_icon": self.skill_icon, - "title": ch.title, - "author": "SomaFM", - "length": 0 - } - - -def create_skill(): - return SomaFMSkill() diff --git a/build/lib/skill_ovos_somafm/locale/en-us/radio.voc b/build/lib/skill_ovos_somafm/locale/en-us/radio.voc deleted file mode 100644 index 328b8c1..0000000 --- a/build/lib/skill_ovos_somafm/locale/en-us/radio.voc +++ /dev/null @@ -1,3 +0,0 @@ -radio -internet radio -web radio \ No newline at end of file diff --git a/build/lib/skill_ovos_somafm/locale/en-us/somafm.voc b/build/lib/skill_ovos_somafm/locale/en-us/somafm.voc deleted file mode 100644 index 2d297d6..0000000 --- a/build/lib/skill_ovos_somafm/locale/en-us/somafm.voc +++ /dev/null @@ -1,2 +0,0 @@ -soma fm -somafm \ No newline at end of file diff --git a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/PKG-INFO b/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/PKG-INFO deleted file mode 100644 index 78bfc6b..0000000 --- a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/PKG-INFO +++ /dev/null @@ -1,66 +0,0 @@ -Metadata-Version: 2.1 -Name: ovos-skill-somafm -Version: 0.0.1 -Summary: ovos somafm skill plugin -Home-page: https://github.com/OpenVoiceOS/skill-ovos-somafm -Author: JarbasAi -Author-email: jarbasai@mailfence.com -License: Apache-2.0 -Description: # SomaFM - - OCP skill for SomaFM - - ## About - - ![somabanner](http://somafm.com/linktous/728x90sfm.jpg) - - SomaFM is a listener-supported Internet-only radio station. That means no advertising or annoying commercial interruptions. SomaFM's mission is to search for and expose great new music which people may otherwise never encounter. - - If you like what you hear on SomaFM and want to help, please consider visiting their site and [making a donation](https://somafm.com/support/). - - ![](./gui.png) - - ## Examples - - * "play soma fm radio" - * "play secret agent" - * "play metal detector" - - # Platform support - - - :heavy_check_mark: - tested and confirmed working - - :x: - incompatible/non-functional - - :question: - untested - - :construction: - partial support - - | platform | status | tag | version | last tested | - |:---------------:|:----------:|:-----:|:-------:|:-----------:| - | [Chatterbox](https://hellochatterbox.com) | :question: | dev | | never | - | [HolmesV](https://github.com/HelloChatterbox/HolmesV) | :question: | dev | | never | - | [LocalHive](https://github.com/JarbasHiveMind/LocalHive) | :question: | dev | | never | - | [Mycroft Mark1](https://github.com/MycroftAI/enclosure-mark1) | :question: | dev | | never | - | [Mycroft Mark2](https://github.com/MycroftAI/hardware-mycroft-mark-II) | :question: | dev | | never | - | [NeonGecko](https://neon.ai) | :question: | dev | | never | - | [OVOS](https://github.com/OpenVoiceOS) | :question: | dev | | never | - | [Picroft](https://github.com/MycroftAI/enclosure-picroft) | :question: | dev | | never | - | [Plasma Bigscreen](https://plasma-bigscreen.org/) | :question: | dev | | never | - - - `tag` - link to github release / branch / commit - - `version` - link to release/commit of platform repo where this was tested - - - ## Credits - - JarbasAl - - ## Category - **Entertainment** - - ## Tags - #audio - #music - #OCP - #entertainment - -Keywords: ovos skill plugin -Platform: UNKNOWN -Description-Content-Type: text/markdown diff --git a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/SOURCES.txt b/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/SOURCES.txt deleted file mode 100644 index 2d0c0e9..0000000 --- a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/SOURCES.txt +++ /dev/null @@ -1,17 +0,0 @@ -CHANGELOG.md -LICENSE -MANIFEST.in -README.md -__init__.py -requirements.txt -setup.py -version.py -locale/en-us/radio.voc -locale/en-us/somafm.voc -ovos_skill_somafm.egg-info/PKG-INFO -ovos_skill_somafm.egg-info/SOURCES.txt -ovos_skill_somafm.egg-info/dependency_links.txt -ovos_skill_somafm.egg-info/entry_points.txt -ovos_skill_somafm.egg-info/requires.txt -ovos_skill_somafm.egg-info/top_level.txt -ui/somafm.png \ No newline at end of file diff --git a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/dependency_links.txt b/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/dependency_links.txt deleted file mode 100644 index 8b13789..0000000 --- a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/entry_points.txt b/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/entry_points.txt deleted file mode 100644 index af5128d..0000000 --- a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/entry_points.txt +++ /dev/null @@ -1,3 +0,0 @@ -[ovos.plugin.skill] -skill-ovos-somafm.openvoiceos=skill_ovos_somafm:SomaFMSkill - diff --git a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/requires.txt b/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/requires.txt deleted file mode 100644 index 84d8471..0000000 --- a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/requires.txt +++ /dev/null @@ -1,4 +0,0 @@ -ovos-plugin-common-play>=0.0.3,~=0.0 -ovos-utils>=0.0.28,~=0.0 -ovos_workshop>=0.0.11,~=0.0 -radiosoma>=0.0.1,~=0.0 diff --git a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/top_level.txt b/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/top_level.txt deleted file mode 100644 index 5be1eb0..0000000 --- a/build/lib/skill_ovos_somafm/ovos_skill_somafm.egg-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -skill_ovos_somafm diff --git a/build/lib/skill_ovos_somafm/requirements.txt b/build/lib/skill_ovos_somafm/requirements.txt deleted file mode 100644 index 8baaa4a..0000000 --- a/build/lib/skill_ovos_somafm/requirements.txt +++ /dev/null @@ -1,4 +0,0 @@ -ovos-plugin-common-play~=0.0, >=0.0.3 -ovos-utils~=0.0, >=0.0.28 -ovos_workshop~=0.0, >=0.0.11 -radiosoma~=0.0, >=0.0.1 diff --git a/build/lib/skill_ovos_somafm/ui/somafm.png b/build/lib/skill_ovos_somafm/ui/somafm.png deleted file mode 100644 index a4e5cba..0000000 Binary files a/build/lib/skill_ovos_somafm/ui/somafm.png and /dev/null differ diff --git a/build/lib/skill_ovos_somafm/version.py b/build/lib/skill_ovos_somafm/version.py deleted file mode 100644 index 76c4342..0000000 --- a/build/lib/skill_ovos_somafm/version.py +++ /dev/null @@ -1,6 +0,0 @@ -# START_VERSION_BLOCK -VERSION_MAJOR = 0 -VERSION_MINOR = 0 -VERSION_BUILD = 1 -VERSION_ALPHA = 0 -# END_VERSION_BLOCK diff --git a/dist/ovos_skill_somafm-0.0.1-py3-none-any.whl b/dist/ovos_skill_somafm-0.0.1-py3-none-any.whl deleted file mode 100644 index 66035a7..0000000 Binary files a/dist/ovos_skill_somafm-0.0.1-py3-none-any.whl and /dev/null differ diff --git a/ovos_skill_somafm.egg-info/PKG-INFO b/ovos_skill_somafm.egg-info/PKG-INFO deleted file mode 100644 index 78bfc6b..0000000 --- a/ovos_skill_somafm.egg-info/PKG-INFO +++ /dev/null @@ -1,66 +0,0 @@ -Metadata-Version: 2.1 -Name: ovos-skill-somafm -Version: 0.0.1 -Summary: ovos somafm skill plugin -Home-page: https://github.com/OpenVoiceOS/skill-ovos-somafm -Author: JarbasAi -Author-email: jarbasai@mailfence.com -License: Apache-2.0 -Description: # SomaFM - - OCP skill for SomaFM - - ## About - - ![somabanner](http://somafm.com/linktous/728x90sfm.jpg) - - SomaFM is a listener-supported Internet-only radio station. That means no advertising or annoying commercial interruptions. SomaFM's mission is to search for and expose great new music which people may otherwise never encounter. - - If you like what you hear on SomaFM and want to help, please consider visiting their site and [making a donation](https://somafm.com/support/). - - ![](./gui.png) - - ## Examples - - * "play soma fm radio" - * "play secret agent" - * "play metal detector" - - # Platform support - - - :heavy_check_mark: - tested and confirmed working - - :x: - incompatible/non-functional - - :question: - untested - - :construction: - partial support - - | platform | status | tag | version | last tested | - |:---------------:|:----------:|:-----:|:-------:|:-----------:| - | [Chatterbox](https://hellochatterbox.com) | :question: | dev | | never | - | [HolmesV](https://github.com/HelloChatterbox/HolmesV) | :question: | dev | | never | - | [LocalHive](https://github.com/JarbasHiveMind/LocalHive) | :question: | dev | | never | - | [Mycroft Mark1](https://github.com/MycroftAI/enclosure-mark1) | :question: | dev | | never | - | [Mycroft Mark2](https://github.com/MycroftAI/hardware-mycroft-mark-II) | :question: | dev | | never | - | [NeonGecko](https://neon.ai) | :question: | dev | | never | - | [OVOS](https://github.com/OpenVoiceOS) | :question: | dev | | never | - | [Picroft](https://github.com/MycroftAI/enclosure-picroft) | :question: | dev | | never | - | [Plasma Bigscreen](https://plasma-bigscreen.org/) | :question: | dev | | never | - - - `tag` - link to github release / branch / commit - - `version` - link to release/commit of platform repo where this was tested - - - ## Credits - - JarbasAl - - ## Category - **Entertainment** - - ## Tags - #audio - #music - #OCP - #entertainment - -Keywords: ovos skill plugin -Platform: UNKNOWN -Description-Content-Type: text/markdown diff --git a/ovos_skill_somafm.egg-info/SOURCES.txt b/ovos_skill_somafm.egg-info/SOURCES.txt deleted file mode 100644 index 2d0c0e9..0000000 --- a/ovos_skill_somafm.egg-info/SOURCES.txt +++ /dev/null @@ -1,17 +0,0 @@ -CHANGELOG.md -LICENSE -MANIFEST.in -README.md -__init__.py -requirements.txt -setup.py -version.py -locale/en-us/radio.voc -locale/en-us/somafm.voc -ovos_skill_somafm.egg-info/PKG-INFO -ovos_skill_somafm.egg-info/SOURCES.txt -ovos_skill_somafm.egg-info/dependency_links.txt -ovos_skill_somafm.egg-info/entry_points.txt -ovos_skill_somafm.egg-info/requires.txt -ovos_skill_somafm.egg-info/top_level.txt -ui/somafm.png \ No newline at end of file diff --git a/ovos_skill_somafm.egg-info/dependency_links.txt b/ovos_skill_somafm.egg-info/dependency_links.txt deleted file mode 100644 index 8b13789..0000000 --- a/ovos_skill_somafm.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/ovos_skill_somafm.egg-info/entry_points.txt b/ovos_skill_somafm.egg-info/entry_points.txt deleted file mode 100644 index af5128d..0000000 --- a/ovos_skill_somafm.egg-info/entry_points.txt +++ /dev/null @@ -1,3 +0,0 @@ -[ovos.plugin.skill] -skill-ovos-somafm.openvoiceos=skill_ovos_somafm:SomaFMSkill - diff --git a/ovos_skill_somafm.egg-info/requires.txt b/ovos_skill_somafm.egg-info/requires.txt deleted file mode 100644 index 84d8471..0000000 --- a/ovos_skill_somafm.egg-info/requires.txt +++ /dev/null @@ -1,4 +0,0 @@ -ovos-plugin-common-play>=0.0.3,~=0.0 -ovos-utils>=0.0.28,~=0.0 -ovos_workshop>=0.0.11,~=0.0 -radiosoma>=0.0.1,~=0.0 diff --git a/ovos_skill_somafm.egg-info/top_level.txt b/ovos_skill_somafm.egg-info/top_level.txt deleted file mode 100644 index 5be1eb0..0000000 --- a/ovos_skill_somafm.egg-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -skill_ovos_somafm diff --git a/requirements.txt b/requirements.txt index 8baaa4a..43da3b2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -ovos-plugin-common-play~=0.0, >=0.0.3 -ovos-utils~=0.0, >=0.0.28 -ovos_workshop~=0.0, >=0.0.11 +ovos-utils >= 0.1.0a7 +ovos-bus-client>=0.0.9a2 +ovos-workshop>=0.0.16a5 radiosoma~=0.0, >=0.0.1