We’d like to provide an update on some recently issues with the NPR News Skill. This Skill is the default News Skill for all Mycroft Devices, and allows you to listen to recent news updates. NPR is the default News source, but other sources are configurable at https://home.mycroft.ai.
Beginning approximately 10 days ago, several users began to report one of two symptoms:
That the Utterance
Play the News was not being matched to the News Skill Intent, and instead was handled by other Skills
This symptom was the result of a change to
mycroft-core to implement the
CommonPlay framework. Read more about the CommonPlay framework here. To resolve this issue, you need to update your
mycroft-core. Most Devices will do this automatically, but if not, say
Hey Mycroft, what version are you running, and he will check what version he is running and prompt to update if you are not on the latest version.
Play the News would not play the NPR News feed
This symptoms was the result of a change made by NPR to the format of their news feed. We previously used a Python package called
mpg123 to handle the News URLs, and the Skill has been rearchitected to use
mpg123 is a command line tool. It has basic support for running streams over
http but lacks support for
https. NPR recently changed their stream URL and
mpg123 could no longer retrieve the stream. To work around this, cURL is used to stream it to a filesystem FIFO, and the location of that FIFO is passed to the audioservice and
Intents bypassing the CommonPlay framework would not trigger the News Skill
Additionally, we identified an issue where when an Intent bypassed the CommonPlay framework - for instance with an Utterance like
What are the latest news (because it does not contain the keyword play
, the Mycroftmycroft-audio` service would fail to play the news. This has now been resolved as well.
A special thanks to all the Mycroft users who provided diagnostic information that allowed us to get to the bottom of what was happening -