Table of Contents
- Aufbau des Alexa Players
- Player im Live-Betrieb:
- Bedienungselemente / Anzeigen
- 1. Seitentitel
- 2. Navigation zur nächsten Seite
- 3. Track (Elapsed|Duration)
- 4. Interpret | Album
- 5. Player An/Aus (Stop)
- 6. Volume lauter
- 7. Volume zwischen 0% und 100%
- 8. Repeat-Funktion
- 9. Equalizer)
- Variante A: 3-Band Equalizer (über popupSlider ab TFT v 4.7.5)
- Variante B: Steuerelement als Equalizer:
- 10. Alexa-Playlist
- 11. Alexa Speaker Liste
- 12. Nächster Track
- 13. Play / Pause
- 14. Volume leiser
- 15. Shuffle
- 16. Vorheriger Track
- 17. Navigation zur vorherigen Seite
- Der Auto-Alias
-
Der Alexa-Player baut auf den Alexa2-Adapter auf und benötigt im ioBroker eine alexa.X. Instanz.
-
Durch die Struktur der bereitgestellten Datenpunkte des Adapters ist er wie folgt eingeschränkt:
- Keine Bereitstellung von Bibliotheken oder Playlists, d.h. es kann ausschließlich vorab definierter Content abgespielt werden. Ein dynamisches Laden von Playlists kann somit gegenwärtig nicht realisiert werden.
- Keine Bereitstellung von Tracklists, d.h. Inhalte von Alben oder Playlists können nicht realisiert werden
- Keine Funktionen wie z.B. Seek oder Crossfade, etc.
-
Alleinstellungsmerkmal:
- Der Alexa-Player kann auf die Equalizer-Funktionen des Device (bass, midrange, treble) zugreifen.
- Der Player kann die Musik von einem Bereich zum anderen (Einzelne Devices oder Device-Gruppen) übertragen (schieben)
Inhalt:
Aufbau des Alexa Players
(vollständig ab NSPanelTs.ts - Version 4.7.1)
Player im Live-Betrieb:
Bedienungselemente / Anzeigen
1. Seitentitel
Der Seitentitel steht auf:
- der dem Parameter "heading" aus der Seitenvariable der cardMedia (z.B. Alexa Player), wenn keine Wiedergabe erfolgt oder wenn das Wiedergabegerät über die Alexa2-Adapterinstanz (z.B. alexa2.0.) im Datenpunkt currentAlbum keine Inhalte anzeigt.
2. Navigation zur nächsten Seite
- siehe Navigation
3. Track (Elapsed|Duration)
Zeigt die folgenden Datenpunkte der aktiven Alexa-Adapterinstanz:
- Titel --> alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.currentTitle
- Verstrichene Zeit (Minuten/Sekunden) des aktuell abgespielten Titels (bei Radio Laufzeit des Senders) -->
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.mediaProgressStr - Gesamtlänge (Minuten/Sekunden) des aktuell abgespielten Titels (nicht bei Radio) -->
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.mediaLength
Important
Die Aktualisierung in Sekunden steht in Abhängigkeit zur Alexa-Adapterinstanz und steht per Default auf 2000ms (nicht änderbar).
4. Interpret | Album
Folgende Datenpunkte der Alexa-Adapterinstanz werden berücksichtigt:
- Interpret -->
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.currentArtist(beim Abspielen von Radiosendern abweichende Informationen zum Sender) - Album -->
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.currentAlbum(beim Abspielen von Radiosendern abweichende Informationen zum Sender)
5. Player An/Aus (Stop)
- Stop (Icon blau) -->
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Commands.deviceStop(beim Abspielen weiß)
6. Volume lauter
- Die Feinjustierung der aktuellen Lautstärke in Einerschritten (+1) --> Datenpunkt:
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.volume
7. Volume zwischen 0% und 100%
- Die Feinjustierung der aktuellen Lautstärke erfolgt stufenlos zwischen 0% und 100% --> Datenpunkt:
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.volume
Note
Volume zieht das Volumen einer Gruppe beim Einsatz eines Alexa-Echo mit.
8. Repeat-Funktion
- Es sind keine weiteren Einstellungen zu berücksichtigen. Der Datenpunkt
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.controlRepeatwird genutzt und hat die beiden boolschen Zustände true/false`
9. Equalizer)
Variante A: 3-Band Equalizer (über popupSlider ab TFT v 4.7.5)
Important
Die Alexa-Adapterinstanz verfügt über Klangsteuerungs-Datenpunkte. Diese werden in dieser Variante direkt angebunden.
Zur Anzeige dem pageItem wie folgt hinzufügen:
equalizerSlider: [
{
Slider1: {heading: "Bass", icon1: "minus-box", icon2: "plus-box", minValue: 0, maxValue: 12, zeroValue: 6, stepValue: 1},
Slider2: {heading: "MidRange", icon1: "minus-box", icon2: "plus-box", minValue: 0, maxValue: 12, zeroValue: 6, stepValue: 1},
Slider3: {heading: "Treble", icon1: "minus-box", icon2: "plus-box", minValue: 0, maxValue: 12, zeroValue: 6, stepValue: 1},
}
],
Variante B: Steuerelement als Equalizer:
Important
Die Alexa-Adapterinstanz verfügt über Klangsteuerungs-Datenpunkte. Diese werden jedoch über ein separates Script gesteuert.
Für den Fall, dass der Equalizer zum Einsatz kommt, bitte weiteren Link befolgen: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---FAQ-&-Anleitungen#12-equalizer-f%C3%BCr-cardmedia
10. Alexa-Playlist
- Das Array playList im PageItem wird genutzt. Die Playlists sind dort manuell einzutragen
11. Alexa Speaker Liste
- Das Array speakerList im PageItem wird genutzt. Die Wiedergabegeräte sind dort manuell einzutragen. Falls das Array leer ist, werden alle verfügbaren Devices eingeblendet.
12. Nächster Track
- Sofern ein weiterer Titel in der Track Liste verfügbar ist, so wird dieser ausgewählt -->
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.controlNext
13. Play / Pause
- Umschaltung zwischen den Datenpunkten
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.controlPlayundalexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.controlPause
14. Volume leiser
- Die Feinjustierung der aktuellen Lautstärke in Einerschritten (-1) --> Datenpunkt:
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.volume
15. Shuffle
- Umschaltung zwischen den Datenpunkten
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.controlShuffleals wahr/falsch (true/false)
Note
Diese Funktion ist nicht steuerbar, wenn Radiosender abgespielt werden
16. Vorheriger Track
- Sofern ein weiterer Track vor dem aktuell abgespielten Titel in der Track Liste verfügbar ist, so wird dieser ausgewählt -->
alexa2.0.Echo-Devices.<DEVICE_SERIAL>.Player.controlPrevious
17. Navigation zur vorherigen Seite
- siehe Navigation
Der Auto-Alias
let Alexa: PageType =
{
type: 'cardMedia',
heading: 'Alexa',
items: [
{
id: AliasPath + 'Media.PlayerAlexa',
adapterPlayerInstance: 'alexa2.0.',
mediaDevice: 'G070RR10752XXXXX', // Die Seriennummer des Primär-Devices; Es ist auch eine Gruppe möglich
speakerList: [
// Angabe von Echo-Devices über den Namen zur Steuerung durch das NSPanel, Falls leer, werden alle verfügbaren Devices geladen.
'Überall','Gartenhaus','Esszimmer','Echo Dot Küche','Echo Spot Buero'
],
//analog alexa2.0. Music-Provider. Der Aufruf erfolgt über einen String bestehend aus "Musikprovider.Bibliothek"
playList: [
// 'Amazon-Music.XXX',
// 'Amazon-Music-Playlist.XXX',
// 'Audible.XXX',
// 'Meine-Bibliothek.XXX',
// 'Meine-Bibliothek-Playlist.XXX',
// 'Spotify.XXX',
// 'Spotify-Playlist.XXX',
// 'TuneIn.XXX',
// 'TuneIn-Playlist.XXX',
'Amazon-Music-Playlist.Mein Discovery Mix', //Beispiele
'Amazon-Music-Playlist.Songs 2025',
'Amazon-Music-Playlist.Songs 2021',
'Amazon-Music-Playlist.Songs 2020',
'TuneIn.Radio Bob National',
'TuneIn.NDR2',
'TuneIn.FFN',
'Spotify-Playlist.Rock Party',
'Spotify-Playlist.This Is Nightwish',
'Spotify-Playlist.PartyPlaylist'
],
equalizerList: [
// die equalizerList ist optional und erfordert ein weiteres Script (siehe Beispiele)
'Bassboost','Klassik','Dance', 'Deep', 'Electronic', 'Flat', 'Hip-Hop', 'Rock',
'Metal', 'Jazz', 'Latin', 'Tonstärke', 'Lounge', 'Piano'
],
playerMediaIcon: 'logo-alexa', // Blendet das Picture-Logo ein - Alternativ kann ein Icon angeben werden
colorMediaIcon: colorAlexa, // Wird genutzt, wenn Icon angegeben ist
colorMediaTitle: Yellow, // Die Farbe der Textzeile des Titels
colorMediaArtist: Yellow, // Die Farbe der Textzeile des Artist
alwaysOnDisplay: true, // AOD (Always On Display), d.h. der Player bleibt geöffnet
autoCreateALias: true // Erstellt den erforderlichen Media-Alias-Channel automatisch unter alias.0.
}
]
};
oder mit 3 Band EQ:
let Alexa: PageType =
{
type: 'cardMedia',
heading: 'Alexa',
items: [
{
id: AliasPath + 'Media.PlayerAlexa',
adapterPlayerInstance: 'alexa2.0.',
mediaDevice: 'G070RR10752XXXXX', // Die Seriennummer des Primär-Devices; Es ist auch eine Gruppe möglich
speakerList: [
// Angabe von Echo-Devices über den Namen zur Steuerung durch das NSPanel, Falls leer, werden alle verfügbaren Devices geladen.
'Überall','Gartenhaus','Esszimmer','Echo Dot Küche','Echo Spot Buero'
],
//analog alexa2.0. Music-Provider. Der Aufruf erfolgt über einen String bestehend aus "Musikprovider.Bibliothek"
playList: [
// 'Amazon-Music.XXX',
// 'Amazon-Music-Playlist.XXX',
// 'Audible.XXX',
// 'Meine-Bibliothek.XXX',
// 'Meine-Bibliothek-Playlist.XXX',
// 'Spotify.XXX',
// 'Spotify-Playlist.XXX',
// 'TuneIn.XXX',
// 'TuneIn-Playlist.XXX',
'Amazon-Music-Playlist.Mein Discovery Mix', //Beispiele
'Amazon-Music-Playlist.Songs 2025',
'Amazon-Music-Playlist.Songs 2021',
'Amazon-Music-Playlist.Songs 2020',
'TuneIn.Radio Bob National',
'TuneIn.NDR2',
'TuneIn.FFN',
'Spotify-Playlist.Rock Party',
'Spotify-Playlist.This Is Nightwish',
'Spotify-Playlist.PartyPlaylist'
],
equalizerSlider: [
{
Slider1: {heading: "Bass", icon1: "minus-box", icon2: "plus-box", minValue: 0, maxValue: 12, zeroValue: 6, stepValue: 1},
Slider2: {heading: "MidRange", icon1: "minus-box", icon2: "plus-box", minValue: 0, maxValue: 12, zeroValue: 6, stepValue: 1},
Slider3: {heading: "Treble", icon1: "minus-box", icon2: "plus-box", minValue: 0, maxValue: 12, zeroValue: 6, stepValue: 1},
}
],
playerMediaIcon: 'logo-alexa', // Blendet das Picture-Logo ein - Alternativ kann ein Icon angeben werden
colorMediaIcon: colorAlexa, // Wird genutzt, wenn Icon angegeben ist
colorMediaTitle: Yellow, // Die Farbe der Textzeile des Titels
colorMediaArtist: Yellow, // Die Farbe der Textzeile des Artist
alwaysOnDisplay: true, // AOD (Always On Display), d.h. der Player bleibt geöffnet
autoCreateALias: true // Erstellt den erforderlichen Media-Alias-Channel automatisch unter alias.0.
}
]
};
Minimale Variablen-Definition
let Alexa: PageType =
{
type: 'cardMedia',
heading: 'Alexa',
items: [
{
id: AliasPath + 'Media.PlayerAlexa',
adapterPlayerInstance: 'alexa2.0.',
mediaDevice: 'G070RR10752XXXXX', // Die Seriennummer des Primär-Devices; Es ist auch eine Gruppe möglich
speakerList: [],
playList: [],
colorMediaIcon: colorAlexa, // Wird genutzt, wenn Icon angegeben ist
colorMediaTitle: Yellow, // Die Farbe der Textzeile des Titels
colorMediaArtist: Yellow, // Die Farbe der Textzeile des Artist
autoCreateALias: true // Erstellt den erforderlichen Media-Alias-Channel automatisch unter alias.0.
}
]
};
Important
Der Parameter autoCreateALias sollte nicht entfernt werden, da es nahezu unmöglich ist, diesen Alias-Media-Channel für die cardMedia manuell und korrekt zu erstellen, so dass die Funktionalität des Players nicht beeinträchtigt wird.