Jakiś czas temu postanowiłem dodać do mojego systemu telewizor Sony Bravia. Po wielu próbach podałem się. Mój model ma już swoje lata i niestety nie ogarnia „złożoności protokółów komunikacji” z Domoticzem. Wpadłem jednak na plan aby spróbować zmusić do współpracy dekoder nc+. I tu już poszło lepiej. Może nie idealnie, ponieważ mam świadomość, że jest to trochę prowizorka, ale moje umiejętności na razie nie pozwalają na nic więcej. Idea jest taka, aby zmapować przyciski pilota i poprzez skrypty w pythonie wysłać je z Domoticza do dekodera. Aby nawiązać komunikację pomiędzy urządzeniami potrzebujemy skryptu w pythonie, który znalazłem na GitHub. Skrypt nie jest oczywiście mojego autorstwa. Znalazłem go tu. Autorem jest HubertReX, dla którego dziękuję. W pliku mamy zmapowane przyciski pilota nc+. Uzupełniamy dane:
HOST = „ip dekodera nc+”
PORT = 8080
UUID = „12341234-1234-1234-1234-abcabcabc”
Zagadkowe wydawać się może UUID. Aby je znaleźć należy, po podłączeniu dekodera do sieci, w przeglądarce internetowej wpisać komendę:
http://<ip dekodera nc+>:8080/upnpdev
Otrzymamy taki mniej więcej log:
Mając już wszystkie niezbędne dane możemy przejść do najważniejszego, czyli konfiguracji Domoticza. Ja dodałem sobie 2 kafelki. W pierwszym ustawiłem typ przełącznika na selektor i wybrałem opcje wyłączenia dekodera, wyciszania i zmiany głośności.
Miałem duże problemy aby wpisać jako akcje wyborów polecenia pythona. Obszedłem to w taki sposób, że napisałem oddzielne skrypty w bashu dla każdej akcji i ich lokalizacje podałem w Domoticzu. Poniżej skrypt o nazwie mute.sh wyciszający dźwięk.
#! /bin/sh /usr/bin/python /home/domoticz/domoticz/scripts/send_key2ncplus.py MUTE
Dobrze byłoby jeszcze dodać sterowanie programami. Robimy to analogicznie. Jako, że skrypt emuluje naciśnięcie przycisków pojawia się mały problem przy programach o wielocyfrowych numerach. Z tym poradziłem sobie modyfikując skrypt w bashu. Poniżej skrypt uruchamiający program DOMO+.
#! /bin/sh /usr/bin/python /home/domoticz/domoticz/scripts/send_key2ncplus.py 2 /usr/bin/python /home/domoticz/domoticz/scripts/send_key2ncplus.py 3
Powyżej obraz selektora z dodanymi programami tvn24, HGTV i DOMO+.
Sterowanie działa bardzo fajnie. Cała jego siła tkwi w zbudowanych scenach i zdarzeniach. Pomimo delikatnej prowizorki tego rozwiązania na razie ze mną zostaje. Jeżeli, ktoś ma pomysł jak wyeliminować skrypty w bash i dodać bezpośrednio polecenia pythona w selektorze proszę o radę w komentarzach.