Będąc zainspirowany jednym z fimlików który tu widziałem na forum i apilkacją https://play.google.com/store/apps/deta ... uestwidget napisałem dwa szybkie skrypty które pozwalają za pomocą nowego API w Supla 2.0 na zmianę stanu wybranego kanału lub odyczytanie temperatury. Widgety "reagują na dotyk", tj na dotknięcie zmienia się stan z ON na OFF i vice versa. Temperatura również odświeża się "na dotknięcie"
Aby nie każdy mógł wykonać skrypt, dodałem możliwość konfiguracji HTTP Basic Auth. Not perfect, ale na dobry początek mnie cieszy
Skrypty do instalacji u siebie z małą instrukcją: https://github.com/fracz/supla-scripts
Widgety za pomocą API
Witam
Czy możesz mi to bardziej objaśnić , nie mogę sobie z tym poradzić .
Mam swój server na malince , czy katalog supla-scripts ma być w głównym katalogu ?
czy /home/pi ? . Oraz który to channel ? czy to jest lokalizacja ?
oraz czy config dobry :
define('SUPLA_SERVER', 'svr2.supla.org');
define('SUPLA_CLIENT_ID', '6_3o6yj6utmjac00o8s0wkgwc4kokw4k0og0oogokkxxxxxxxxxx');
define('SUPLA_SECRET', '5oa82j85et4w008s8kkwskocss4sg48w0ks0kwgkwokxxxxxxxxx');
define('SUPLA_USERNAME', 'api_6');
define('SUPLA_PASSWORD', '6l3GkdVFB37cjr64e4XXXXXXXXX');
define('HTTP_BASIC_USER', '');
define('HTTP_BASIC_PASSWORD', '');
pozdr
Czy możesz mi to bardziej objaśnić , nie mogę sobie z tym poradzić .
Mam swój server na malince , czy katalog supla-scripts ma być w głównym katalogu ?
czy /home/pi ? . Oraz który to channel ? czy to jest lokalizacja ?
oraz czy config dobry :
define('SUPLA_SERVER', 'svr2.supla.org');
define('SUPLA_CLIENT_ID', '6_3o6yj6utmjac00o8s0wkgwc4kokw4k0og0oogokkxxxxxxxxxx');
define('SUPLA_SECRET', '5oa82j85et4w008s8kkwskocss4sg48w0ks0kwgkwokxxxxxxxxx');
define('SUPLA_USERNAME', 'api_6');
define('SUPLA_PASSWORD', '6l3GkdVFB37cjr64e4XXXXXXXXX');
define('HTTP_BASIC_USER', '');
define('HTTP_BASIC_PASSWORD', '');
pozdr
Config wydaje się OK, tylko jeżeli masz swój serwer to adres serwera powinien być Twoim adresem, a nie serwera publicznego.andras pisze: ↑śr maja 10, 2017 8:50 am Witam
Czy możesz mi to bardziej objaśnić , nie mogę sobie z tym poradzić .
Mam swój server na malince , czy katalog supla-scripts ma być w głównym katalogu ?
czy /home/pi ? . Oraz który to channel ? czy to jest lokalizacja ?
oraz czy config dobry :
define('SUPLA_SERVER', 'svr2.supla.org');
define('SUPLA_CLIENT_ID', '6_3o6yj6utmjac00o8s0wkgwc4kokw4k0og0oogokkxxxxxxxxxx');
define('SUPLA_SECRET', '5oa82j85et4w008s8kkwskocss4sg48w0ks0kwgkwokxxxxxxxxx');
define('SUPLA_USERNAME', 'api_6');
define('SUPLA_PASSWORD', '6l3GkdVFB37cjr64e4XXXXXXXXX');
define('HTTP_BASIC_USER', '');
define('HTTP_BASIC_PASSWORD', '');
pozdr
Katalog główny to ten z którego masz dostęp do www z poziomu przeglądarki. U mnie to
/var/www/html/web/
Jeżeli zrobiłeś wszystko zgodnie z instrukcją to powinno działać.
Mam za to inny problem - skonfigurowałem widget na telefonie do odczytu temperatury i po naciśnięciu go otrzymuję komunikat:
Kod: Zaznacz cały
java.security.cert.certpathvalidatorexception: trust anchor for certification path not found
Twoje Raspberry ma nieważny certyfikat. Możesz odwołać się po HTTP lub gdzieś w konfiguracji dodać ignorowanie sprawdzania certyfikatów.
Ustawienia RESRful Api biorę z svr2.supla.org to chyba define('SUPLA_SERVER', 'svr2.supla.org'); jest ok
na malince mam wgrany katalog supla-scripts /home/pi/supla-scripts/
i jak wpisuję https://192.168.1.186/supla-scripts/temperature/28424 to dostaję :
Oops! An Error Occurred
The server returned a "404 Not Found".
na malince mam wgrany katalog supla-scripts /home/pi/supla-scripts/
i jak wpisuję https://192.168.1.186/supla-scripts/temperature/28424 to dostaję :
Oops! An Error Occurred
The server returned a "404 Not Found".
prawdopodobniej błędny id kanału
Najwidoczniej katalog domowy w konfiguracji apache dla tego url-a jest w innym miejscu
Przeniosłem do /var/www/html/web/supla-scripts/ i myślę że katalog dobry
bo jak wpisuję https://192.168.1.186/supla-scripts/
to mam
Index of /supla-scripts
[ICO] Name Last modified Size Description
[PARENTDIR] Parent Directory -
[ ] ConfiguredSuplaApiClient.php 2017-04-24 11:33 494
[ ] README.md 2017-04-24 11:33 3.3K
[ ] composer.json 2017-04-24 11:33 192
[ ] composer.lock 2017-04-24 11:33 1.5K
[ ] config.php 2017-05-10 21:24 387
[ ] http-basic-auth.php 2017-04-24 11:33 342
[DIR] scene/ 2017-05-10 16:49 -
[DIR] state-notifier/ 2017-05-10 16:49 -
[DIR] temperature-stats/ 2017-05-10 16:49 -
[DIR] temperature/ 2017-05-10 16:49 -
[DIR] thermostat/ 2017-05-10 16:59 -
[DIR] toggle/ 2017-05-10 16:49 -
Apache/2.4.25 (Raspbian) Server at 192.168.1.186 Port 443
a jak wpisuję https://192.168.1.186/supla-scripts/temperature/28429
to strona teraz jest pusta
a w chrome dostaję
Ta strona nie działa
Serwer 192.168.1.186 nie może teraz obsłużyć tego żądania.
HTTP ERROR 500
bo jak wpisuję https://192.168.1.186/supla-scripts/
to mam
Index of /supla-scripts
[ICO] Name Last modified Size Description
[PARENTDIR] Parent Directory -
[ ] ConfiguredSuplaApiClient.php 2017-04-24 11:33 494
[ ] README.md 2017-04-24 11:33 3.3K
[ ] composer.json 2017-04-24 11:33 192
[ ] composer.lock 2017-04-24 11:33 1.5K
[ ] config.php 2017-05-10 21:24 387
[ ] http-basic-auth.php 2017-04-24 11:33 342
[DIR] scene/ 2017-05-10 16:49 -
[DIR] state-notifier/ 2017-05-10 16:49 -
[DIR] temperature-stats/ 2017-05-10 16:49 -
[DIR] temperature/ 2017-05-10 16:49 -
[DIR] thermostat/ 2017-05-10 16:59 -
[DIR] toggle/ 2017-05-10 16:49 -
Apache/2.4.25 (Raspbian) Server at 192.168.1.186 Port 443
a jak wpisuję https://192.168.1.186/supla-scripts/temperature/28429
to strona teraz jest pusta
a w chrome dostaję
Ta strona nie działa
Serwer 192.168.1.186 nie może teraz obsłużyć tego żądania.
HTTP ERROR 500
Pokusiłem się o instalację certyfikatu SSL na swojej malince i widgety działają tak jak miały działać
Dzięki za wskazówki!
- Załączniki
-
- widgety2.png (225.97 KiB) Przejrzano 6640 razy