Selfhosted Alexa media player skill for Jellyfin
Note: This project is still in a very early alpha phase, this means not all features are fully functional yet and features or usage can change significantly between releases. Moreover, new releases can result in data loss of the skill database.
- About
- Features
- Installation
- Supported languages
- Skill speech examples
- Project plan
- FAQ
- Development
- Third party notices
- License
This is a self-hosting Alexa skill to play media from your Jellyfin server. Besides simple playback, other additional functions like playback of playlists or managing favorites are included. The skill and the Jellyfin player can be used behind a NAT or firewall without port opening/forwarding. Since the skill and also the Jellyfin server must be reachable from the outside, in this case the two services are exposed with a tunnel.
- playback control:
- play a specific media
- play media from an artist
- pause/resume/stop/cancel a playback
- play previous/next song in queue
- repeat a single media
- repeat all media in queue
- shuffle mode
- play internet radio streams
- navigate through top search results
- playlist:
- play a specific playlist
- favorite:
- play favorite media
- mark current media as favorite
- remove current media from favorites
- metadata:
- show the metadata of the media (title and artist)
- show cover art of the media
- other:
- multi-language support (see Supported languages)
- multi-user support (any user on the Jellyfin server can use the skill)
If you have a feature idea, use this issue template to suggest your idea for implementation.
You can find the installation steps in the wiki.
The skill has support for the following languages:
- English
- German
- Italian
The wiki contains examples how to interact with the skill.
Take a look at the project plan to see what features and bug fixes are planned and in progress.
You can find the FAQ here.
You can find more guidelines for the development here.
Module | License | Project |
---|---|---|
flask-ask-sdk | License | Project |
pyngrok | License | Project |
ask-smapi-sdk | License | Project |
ask-smapi-model | License | Project |
rapidfuzz | License | Project |
peewee | License | Project |
gunicorn | License | Project |
Babel | License | Project |
Flask-WTF | License | Project |
requests | License | Project |
Furthermore, this readme file contains embeddings of Shields.io.