Przypadkowo trafiłem na fajnie rozwiązaną obsługę TTS. Może się komuś przyda:
https://flows.nodered.org/flow/d0f137bc6323fd8200b8221cea22d713?fbclid=IwAR2HSTlXIzXMixdltHxfgueUf1O34ZXrtUzdOZSLMsomRysyIZu1KkKYkwI
Nie wiem, ile w tym przypadku, skoro wrzuciłeś link godzinę po tym, jak autor (Jakub K.) pochwalił się nim na grupie HA Polska na Facebooku
Autor napisał przy tym tak: “Trochę ulepszyłem mojego Node-RED’owego Smart TTS’a. Od teraz można wybrać metodę wyszukiwania (z 2 dostępnych) konta Spotify grającego na danym głośniku oraz wybrać czy Spotcast ma wznowić odtwarzanie na głośniku używając home assistant’owego ID głośnika czy jego nazwy ze Spotify. Tak jak ostatnio, proszę o feedback oraz mam nadzieję, że komuś się to przyda! ”
Przecież ja nie napisałem, że to mój projekt. Wskazałem nawet źródło pochodzenia, więc nie wiem po co bijesz piane?
Przecież ja nigdzie tak nie twierdzę.
Śledzę to, co zrobił Jakub i wiem, że doceniłby feedback od osób, które z tego skorzystają- tak jak napisał w swoim poście. Dla mnie to istotna informacja- “zrobiłem coś, bierzcie i testujcie, dajcie znać czy u was działa”.
Mnie po prostu zirytowało to “przypadkowo natrafiłem”, bo przecież też jesteś na grupie HA Polska…
No jestem, co nie zmienia faktu, że nie szukałem info o TTS, a trafiłem na ten wpis na grupie fejsbukowej, której za często nie odwiedzam. Wrzuciłem info tutaj, bo jest spore zainteresowanie tym zagadnieniem.
Wygląda ciekawie… ale mi nie działa…
Działa u Was?
Ja mam błąd we flow:
Call-service API error. Error Message: extra keys not allowed @ data[‘message’]
Mam id noda, ale nie ma go w Node Red…
OK, sam sobie odpowiem…
Smart TTS działa.
Okazało się, że mam zupełnie nieaktualne nody w Node Red - musiałem je zaktualizować ręcznie z Palette.
Powiem szczerze, że mocno się przy tym zdziwiłem - do tej pory byłem przekonany, że aktualizując Node Red z supervisora wszystko jest aktualne - okazało się, że nody należy aktualizować osobno…
miałem to samo - wygeneruj nowe API dla Spotify
Dobrze wiedzieć, że nie jestem z tym sam. Myślałem aby dziś usunąć i na nowo dodać wszystko - integrację Spotify, Spotcasta i kartę spotify-card. Jednak zastanawia mnie fakt, że media player z oficjalnej integracji Spotify działa - wyświetla co aktualnie jest odtwarzane. Też tak miałeś @murcin ?
Edit:
Niestety nadal to samo:
Coś jeszcze robiłeś ?
dokładnie tak samo miałem… tu nie jest problem z samym Spotify ale z opcją SpotCast,
spotify i zakładki media player działały, ale nie wyświetlała się lista jak u Ciebie :).
jak dobrze pamiętam mi zdechło po jakimś update, odinstalowałem zainstalowałem ponownie i nic. wygenerowałem nowe klucz API i po restarcie wróciło.
W końcu naprawiłem. Trzeba było wpisać od nowa sp_dc i sp_key.
pisząc klucz API dokładnie mi chodziło o sp_dec oraz sp_key :)
ważne że działa !
Działa Wam po aktualizacji do 2021.12.X powyższy TTS ?
U mnie jest jakiś problem, w logach mam:
21 Dec 15:11:18 - [warn] [function:Debug] Smart TTS ERROR:
21 Dec 15:11:18 - [warn] [function:Debug] TypeError: Cannot read properties of undefined (reading ‘includes’)
Objawia się to ogólną ciszą z głośnika.
Kontaktowałem się nawet z autorem w celu potwierdzenia problemów jednak w chwili obecnej nie ma dostępu do HA aby to zweryfikować.
używam na co dzień więc potwierdzam - działa normalnie
Robiłem kilka podejść do tego spart tts.
Możecie pokazać, jak to macie wklejone. Nigdy mi to nie działało
Na co dzień używam powiadomień od Artura z podziałem na info, warning, alarm
tutaj masz moją kompletną konfigurację plików konfiguracyjnych i wszystkiego co możesz śmiało wykorzystać
A to już przeglądałem
bardziej mi chodzi o node-red w które miejsce co i jak tego smart-tts
Kolego, jak zrobiłeś godziny przy listach?
NodeRed w powiadomieniach
blok GODZINA
var czas = new Date();
function addZero(i) {
if (i < 10) {i = "0" + i}
return i;
}
var h = addZero(czas.getHours());
var m = addZero(czas.getMinutes());
var czas_formatowany = h + ":" + m + " - "
msg.wiadomosc =
{
"tresc" : "\r" + czas_formatowany + msg.wiadomosc.tresc,
}
msg.payload =
{
"data":
{
"message": msg.wiadomosc.tresc,
}
}
return msg;