This release is a pre-release and may not be stable for production use.
ovos-media-provider-somafm
OVOS MediaProvider plugin for SomaFM. It replaces
the deprecated OCP search skill
ovos-skill-somafm.
Instead of broadcasting ovos.common_play.query over the bus and waiting for
skills to answer, the OCP pipeline loads MediaProvider plugins in-process,
gates them by routing, and calls search() directly. This plugin wraps the
radiosoma client. Its
converters.station_to_releases function maps each SomaFM channel into
mediavocab.Release objects, one
per stream encoding.
SomaFM is a fixed, curated channel list, so search() is a local filter over
the station catalog. It matches signals.title against the channel name and
description, and signals.content_genres against the channel genre tags.
Install
pip install ovos-media-provider-somafm
Usage
The OCP pipeline discovers and loads this plugin through its entry point. To call it directly:
from mediavocab import Signals
from ovos_media_provider_somafm import SomaFMMediaProvider
provider = SomaFMMediaProvider()
releases = provider.search(Signals(title="deep space"))
A query with neither title nor content_genres set matches every station,
so a bare RADIO request browses the whole catalog.
Routing
| Axis | Value |
|---|---|
media |
RADIO |
playback_type |
AUDIO |
genre_filter |
(none) |
Entry point
[project.entry-points."opm.media.provider"]
somafm = "ovos_media_provider_somafm:SomaFMMediaProvider"
Configuration
| Key | Default | Description |
|---|---|---|
max_results |
10 |
Maximum number of matching channels returned per search. |
Related projects
ovos-plugin-manager: defines theMediaProvidertemplate this plugin implements.radiosoma: the SomaFM API client this plugin wraps.mediavocab: theRelease/Signalsvocabulary used to describe search queries and results.ovos-skill-somafm: the deprecated OCP search skill this plugin replaces.
License
Apache-2.0
Metadata
Release files for ovos-media-provider-somafm 0.0.1a5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ovos_media_provider_somafm-0.0.1a5.tar.gz | 9.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ovos_media_provider_somafm-0.0.1a5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.2 kB
Release files / ovos_media_provider_somafm-0.0.1a5.tar.gz
| Download URL | ovos_media_provider_somafm-0.0.1a5.tar.gz |
|---|---|
| Size | 9.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e298ac81680ffdeb35198814c53e3d17686e0601651ca69719ae198ba3efb043
|
|
BLAKE2b-256 checksum How to use checksums |
f54405e6702ad1ff6ee4bc54152544e4fe90a9397868a23801005e4b226c5f59
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / ovos_media_provider_somafm-0.0.1a5-py3-none-any.whl
| Download URL | ovos_media_provider_somafm-0.0.1a5-py3-none-any.whl |
|---|---|
| Size | 9.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
92c38ebfa983afb3b21f21d62219871f99404675c3e9313e87beac450b12e1f3
|
|
BLAKE2b-256 checksum How to use checksums |
d0ecf7b91a2d6dd22ea84be1ef44add3c9ae032d1ffa8f6b4d54fd38548c9aab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|