Nie działa automatyczne wykonywanie scen w oparciu o zmianę stanu kanałów

bob_
Posts: 43
Joined: Mon Sep 28, 2020 5:49 am

Post

Dzięki za odzew!

Odpowiadając na Twoje pytania fracz (mam nadzieję, że prawidłowo je odczytuję):
- skrypty mam zainstalowane na własnym serwerze (docker), nie korzystam z supla.fracz.com
- przy pierwszym logowaniu się do skryptów użyłem tokena po czym nadałem login i hasło i teraz loguję się za ich pomocą,
- na ten moment logowanie kontem w Cloud mam nieaktywne, na czerwono komunikat: Instalacja skryptów nie posiada konfiguracji Oauth
- komenda, którą podałeś nie daje żadnego wyniku (pusty ekran)

Skonfigurowałem więc autoryzację i plik config.json w skryptach wg tej instrukcji: https://github.com/fracz/supla-scripts/ ... d-instance ale po wszystkim w ogóle nie odpala mi się ekran logowania. Zrobiłem to na obu serwerach, z pełnym restartem systemu i w obu przypadkach problem tren sam - nie otwiera się strona logowania. To znaczy niby się otwiera, jest tło, ale nie ma okna logowania, tylko te "skaczące" kropki jakby ciągle ładowało stronę...

Jaki adres mam podać zarówno w supla-cloud jak i pliko config.json jeśli moje skrypty mam odpalone w dockerze równolegle z suplą, przy czym do supli wchodzę na porcie 80 a do skryptów na innym (do tej pory działało to bez zarzutu)? Może tu jest problem?
I czy adres musi być https czy http?
karnasw
Posts: 188
Joined: Fri Oct 02, 2020 10:22 am

Post

Miałem tak samo, a że nie miałem za dużo scen skonfigurowanych to postawiłem dockera na nowo. Można pewnie jakoś pewnie to inaczej zrobić, ale nie wiedziałem jak. Ewentualnie zrobić kopię scen od strony bazy i postawić na nowo dockera i przywrócić.

Myślę jednak, że @fracz ma lepsze rozwiązanie na odpięcie tokena z dockera skryptów.
bob_
Posts: 43
Joined: Mon Sep 28, 2020 5:49 am

Post

Ale instalowałeś na nowo tylko skrypty czy odinstalowywałeś całego dockera i robiłeś wszystko na nowo łącznie z clooud'em?
karnasw
Posts: 188
Joined: Fri Oct 02, 2020 10:22 am

Post

Tylko usunąłem kontener skryptów. Od razu skonfigurowałem config.json przed pierwszym startem kontenera.
bob_
Posts: 43
Joined: Mon Sep 28, 2020 5:49 am

Post

Po dwóch próbach zrobiłem tak jak piszesz, to znaczy najpierw zmodyfikowałem plik config.json a dopiero potem odpaliłem po raz pierwszy skrypty. I faktycznie - mam okno logowania, wybieram zaloguj się swoim kontem Supla Cloud, podaję login i hasło, otwiera się strona z prośbą o nadanie autoryzacji, klikam POTWIERDŹ i następnie wyskakuje błąd:

Nie udało się nawiązać bezpiecznego połączenia

Podczas łączenia z serwerem „adresIP skrytpów” wystąpił błąd. SSL otrzymał rekord przekraczający największą dozwoloną długość.
Kod błędu: SSL_ERROR_RX_RECORD_TOO_LONG

:roll:

W integracjach clouda wygenerowałem więc jeszcze raz dostęp OAuth, tym razem podając adres IP jako HTTP:// (bez S) i to samo zrobiłem w config.json skryptów. Po potwierdzeniu autoryzacji tym razem mam coś takiego:

We could not authenticate you
For some reason, the SUPLA Cloud server did not issue an authentication token or it was invalid.

You may find this rather ugly response message helpful.
{"message":"Could not issue access token. Response status: 301 <!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>301 Moved Permanently</title>\n</head><body>\n<h1>Moved Permanently</h1>\n<p>The document has moved <a href=\"https://192........../oauth/v2/token\"> ... che/2.4.38 (Debian) Server at 192............ Port 80</address>\n</body></html>\n","reason":null}



EDIT:
dodam może, że nie używam certyfikatów (przy pierwszym logowaniu do Clouda jest ostrzeżenie przeglądarki o "ryzykownym" połączeniu), może to ma jakieś znaczenie?
karnasw
Posts: 188
Joined: Fri Oct 02, 2020 10:22 am

Post

Możliwe, że tak jest, ja mam ceryfikaty.
bob_
Posts: 43
Joined: Mon Sep 28, 2020 5:49 am

Post

Jest skuteczna metoda jak to zrobić na działającym już dockerze (malina), czy musiałbym wszystko od zera stawiać?
karnasw
Posts: 188
Joined: Fri Oct 02, 2020 10:22 am

Post

Jak masz zewnętrzny IP to tak.
https://github.com/SUPLA/supla-docker
Sekcja "Launching in proxy mode"
Ja osobiście wybrałem NGINX Proxy Manager. Ustawienia w Supla dla proxy jak w poradniku, a instalacja Proxy Manager https://nginxproxymanager.com/guide/#quick-setup.

W ustawienia proxy supli w pilku docker-compose.proxy.yml trzeba zmienić name (nazwa sieci w dockerze utworzona razem z Proxy Manager)

Code: Select all

networks:
  proxy:
    external:
      name: nginx-proxy-manager_default
Dodajemy proxy hosts w managerze dla Supla i Scripts dla adresu w kontenerze.

Ale przed tym wszystkim oczywiście utworzenie własnej domenyi subdomen i przypisanie adresów do IP, przekierowania portów 80 i 443 itp. itd.
User avatar
fracz
Posts: 2257
Joined: Fri Oct 28, 2016 10:56 pm
Location: Kraków

Post

@karnasw, ekstra projekt! Dzięki za podzielenie się, nie znałem :-)

@bob_, wstrzymaj się ze stawianiem wszystkiego na nowo. Rozumiem, skąd wynikają problemy przy aplikacjach postawionych w tej samej sieci lokalnej. Paradoksalnie, OAuth działa "lepiej", jeśli aplikacje mają swoje domeny i są w logicznie innych miejscach - OAuth został zaprojektowany właśnie po to by takie aplikacje dogadać.

Pomyślę jak to rozwiązać, ale dajcie mi kilka dni.
bob_
Posts: 43
Joined: Mon Sep 28, 2020 5:49 am

Post

fracz, to by było fantastycznie gdybym nie musiał tego od nowa stawiać. Czekam cierpliwie.

ps.
ja mam zewn. IP ale używam tylko po to żeby łączyć się po VPN, dlatego zawsze jestem w sieci lokalnej.

Return to “SUPLA Scripts”