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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ovos_media_provider_somafm-0.0.1a4.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ovos_media_provider_somafm-0.0.1a4-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file ovos_media_provider_somafm-0.0.1a4.tar.gz.

File metadata

File hashes

Hashes for ovos_media_provider_somafm-0.0.1a4.tar.gz
Algorithm Hash digest
SHA256 6bae7496abae5085fd2d36b3c5adc1b0cdae8d876beab8f635e6c38a5e01405c
MD5 2799ed4695b9739f57324096824b755a
BLAKE2b-256 e611bb5f1127b5bb9482ac69892685f8200519db3cff09c3854bc45335cdb772

See more details on using hashes here.

File details

Details for the file ovos_media_provider_somafm-0.0.1a4-py3-none-any.whl.

File metadata

File hashes

Hashes for ovos_media_provider_somafm-0.0.1a4-py3-none-any.whl
Algorithm Hash digest
SHA256 8ca0701cc25d6d1708c918c8852fbdea585d009de4063cafddf620daf697942a
MD5 9384899c33f86547222c197f49df034c
BLAKE2b-256 89ce6df2436cc70146af03420dbfed0e3c56f87c3a0bc26e742dccf1a0d91f5a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.0.1a4 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page