Skip to main content
Pre-release

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 the MediaProvider template this plugin implements.
  • radiosoma: the SomaFM API client this plugin wraps.
  • mediavocab: the Release/Signals vocabulary 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)

Source distribution for ovos-media-provider-somafm 0.0.1a5
File Size Uploaded
ovos_media_provider_somafm-0.0.1a5.tar.gz 9.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ovos-media-provider-somafm 0.0.1a5
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.0.1a5 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page