Reads the OpenVoiceOS blog aloud - provider skill for ovos-skill-common-reading
Project description
OVOS Blog
A provider skill for ovos-common-reading-pipeline-plugin, reading the OpenVoiceOS blog aloud.
This exists to prove a point: common-reading isn't just for fairy tales. It's an "article" provider, not a storyteller.
This skill has no standalone voice interface. It registers no intents and never speaks. It only answers ovos.common_reading.* bus messages, so you also need ovos-common-reading-pipeline-plugin installed and added to your pipeline config for it to be useful at all.
Install
pip install ovos-skill-ovosblog ovos-common-reading-pipeline-plugin
Source
Feeds from https://blog.openvoiceos.org/feed.xml (RSS 2.0). The feed
already contains full article HTML in <description>, not just a
summary, so no separate page fetch is needed - just the feed itself
(refreshed at most once an hour, matching the feed's own <ttl>60</ttl>).
Translation
The feed is English-only. If the device language isn't English, this provider machine-translates:
- titles, before matching a spoken phrase against them (a Danish user speaks a Danish phrase, so that's what has to be matched - not the English original), and
- the full article text, when actually reading it aloud.
using whatever ovos-plugin-manager
language-translation plugin is configured
(OVOSLangTranslationFactory.create()).
Every search response includes a "machine_translated": true/false
field - ovos-common-reading-pipeline-plugin is expected to disclose this before
reading the content aloud, so users know it's a machine translation
rather than an original-language text.
If no translation plugin is installed/configured, this provider does not respond to searches at all for a non-English device - it would be misleading to offer an article it can only actually deliver in English when the user asked in (and expects) their own language. (English devices never need a translator and always get a response.)
Note for anyone comparing providers: unlike
ovos-skill-andersen-tales/ovos-skill-grimm-tales/
ovos-skill-andrew-lang-tales, which check a fixed SUPPORTED_LANGUAGES
set at load time and refuse to load at all otherwise, this provider
always loads regardless of device language - it can't know in advance
whether a translation plugin will be available, so it always registers
its bus events and decides per-search instead (see above).
Collection hints
Responds to collection_hint values in the device's own language -
e.g. "ovos blog"/"openvoiceos blog" on English, "ovos nyheder" on
Danish, "blog de ovos" on Spanish - matched fuzzily against that
language's own alias list (see locale/<lang>/collection.voc). Unlike
ovos-skill-andersen-tales/ovos-skill-grimm-tales (a fixed set of
languages), this provider works on any device language, so aliases
fall back to English for any language we haven't bothered translating
- see ovos-common-reading-pipeline-plugin#26. The collection name itself ("the OpenVoiceOS Blog") stays untranslated
- it's a proper noun, not a generic phrase.
Content type
Responds to content_type hints of "article", "blog", "news", or "post".
Ignores everything else (e.g. "story", "poem").
"Surprise me"
A search with no specific phrase but a matching collection_hint
(e.g. "read me something from the OVOS blog") returns the most
recent post, by pubDate.
Credits
Content and feed from blog.openvoiceos.org, maintained by the OpenVoiceOS community.
Category
News
Tags
#news #blog #openvoiceos #rss #provider
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ovos_skill_ovosblog-0.1.2.tar.gz.
File metadata
- Download URL: ovos_skill_ovosblog-0.1.2.tar.gz
- Upload date:
- Size: 29.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42b9102fba103bee9c9f742f026fa0346294e4db09e0ba58aff25221511bf1c7
|
|
| MD5 |
ffcc6daf5dbd0830c5412da946bdd51a
|
|
| BLAKE2b-256 |
0a2ecad6f2e0136412253da50f3f16554480f78ceb0f6e9b932800450c4866e1
|
Provenance
The following attestation bundles were made for ovos_skill_ovosblog-0.1.2.tar.gz:
Publisher:
publish.yml on andlo/ovos-skill-ovosblog
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ovos_skill_ovosblog-0.1.2.tar.gz -
Subject digest:
42b9102fba103bee9c9f742f026fa0346294e4db09e0ba58aff25221511bf1c7 - Sigstore transparency entry: 2218253498
- Sigstore integration time:
-
Permalink:
andlo/ovos-skill-ovosblog@d56a9006e3d5f390c0cedccba7a0b63d7919bc5f -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/andlo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@d56a9006e3d5f390c0cedccba7a0b63d7919bc5f -
Trigger Event:
push
-
Statement type:
File details
Details for the file ovos_skill_ovosblog-0.1.2-py3-none-any.whl.
File metadata
- Download URL: ovos_skill_ovosblog-0.1.2-py3-none-any.whl
- Upload date:
- Size: 27.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fcd0343d6322014e8a505c756037340b6f24204801680595a03ab380630c2467
|
|
| MD5 |
8478611b3171735bbdb56f8f58899197
|
|
| BLAKE2b-256 |
934f58bf91cc5d81d50930e8c230abdaf17f67ff497f6573c15822c2ff062809
|
Provenance
The following attestation bundles were made for ovos_skill_ovosblog-0.1.2-py3-none-any.whl:
Publisher:
publish.yml on andlo/ovos-skill-ovosblog
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ovos_skill_ovosblog-0.1.2-py3-none-any.whl -
Subject digest:
fcd0343d6322014e8a505c756037340b6f24204801680595a03ab380630c2467 - Sigstore transparency entry: 2218253505
- Sigstore integration time:
-
Permalink:
andlo/ovos-skill-ovosblog@d56a9006e3d5f390c0cedccba7a0b63d7919bc5f -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/andlo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@d56a9006e3d5f390c0cedccba7a0b63d7919bc5f -
Trigger Event:
push
-
Statement type: