Thread View: pl.comp.os.linux
37 messages
37 total messages
Started by Baczek
Fri, 30 Sep 2022 16:08
Wykonanie polecenia na serwerze poprzez stronę www
Author: Baczek
Date: Fri, 30 Sep 2022 16:08
Date: Fri, 30 Sep 2022 16:08
14 lines
1613 bytes
1613 bytes
Witam jak już kiedyś pisałem, zbudowałem sobie sterownik do pieca CO. Sterownik oparty na raspberry. Wszystko od roku działa jak powinno, ale, żeby zmienić chwilowo program grzania loguję się poprzez ssh i odpalam odpowiedni skrypt. Chciałbym mieć możliwość uruchomienia skryptu poprzez stronę www. Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na serwerze odpowiedni skrypt. Mam na raspberry zainstalowany lighttpd. Nie wiem jak zapytać google. Podeśle ktoś za czym mam szukać? Pozdrawiam
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Andrzej A. Filip
Date: Fri, 30 Sep 2022 16:21
Date: Fri, 30 Sep 2022 16:21
25 lines
1963 bytes
1963 bytes
Baczek <m_bakowski@poczta.onet.pl> pisze: > Witam > jak już kiedyś pisałem, zbudowałem sobie sterownik do pieca > CO. Sterownik oparty na raspberry. > Wszystko od roku działa jak powinno, ale, > żeby zmienić chwilowo program grzania loguję się poprzez ssh i odpalam > odpowiedni skrypt. > Chciałbym mieć możliwość uruchomienia skryptu poprzez stronę www. > Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na > serwerze odpowiedni skrypt. > Mam na raspberry zainstalowany lighttpd. > Nie wiem jak zapytać google. > Podeśle ktoś za czym mam szukać? Szukaj CGI albo Fast CGI (FCGI), lighttpd to wspiera. To są metody do generowania stron/odpowiedzi HTTP przez zewnętrzne programy/skrypty. W jakim języku programowania/skryptowania jest ten skrypt sterujący (albo co ty preferujesz python/perl/…)? Oczywiście w miarę _proste_ sprawienie żeby nie każdy na internecie mógł sterować może być najtrudniejsze. -- Andrzej A. Filip
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Fri, 30 Sep 2022 16:24
Date: Fri, 30 Sep 2022 16:24
25 lines
1785 bytes
1785 bytes
2022-09-30 o 18:08 +0200, Baczek napisał: > Witam > jak już kiedyś pisałem, zbudowałem sobie sterownik do pieca CO. > Sterownik oparty na raspberry. > Wszystko od roku działa jak powinno, ale, > żeby zmienić chwilowo program grzania loguję się poprzez ssh i > odpalam odpowiedni skrypt. > Chciałbym mieć możliwość uruchomienia skryptu poprzez stronę www. > Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na > serwerze odpowiedni skrypt. > Mam na raspberry zainstalowany lighttpd. > Nie wiem jak zapytać google. > Podeśle ktoś za czym mam szukać? Szukaj pod hasłem "jak obsłużyć formularz html via PHP". Oczywiście zamiast PHP może być cokolwiek innego - C, perl, python czy nawet bash, bo interfejs CGI można obsłużyć czymkolwiek, ale PHP chyba najprostsze do tego zadania. Formularz musi koniecznie z metodą POST. Przy standardowym GET ryzykujesz, że przeglądarka sama powtórzy zapytanie i będzie Ci zmieniać ustawienia pieca. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Pawel
Date: Fri, 30 Sep 2022 17:33
Date: Fri, 30 Sep 2022 17:33
24 lines
2291 bytes
2291 bytes
W dniu 30.09.2022 o 18:08, Baczek pisze: > Witam > jak już kiedyś pisałem, zbudowałem sobie sterownik do pieca CO. > Sterownik oparty na raspberry. > Wszystko od roku działa jak powinno, ale, > żeby zmienić chwilowo program grzania loguję się poprzez ssh i odpalam > odpowiedni skrypt. > Chciałbym mieć możliwość uruchomienia skryptu poprzez stronę www. > Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na serwerze > odpowiedni skrypt. > Mam na raspberry zainstalowany lighttpd. > Nie wiem jak zapytać google. > Podeśle ktoś za czym mam szukać? > > Pozdrawiam > Ja zrobilem cos podobnego na bazie nodejs i pakietu express (prosty skrypt - kilkanascie linijek kodu, zeby uruchaamiac z 10 roznych skryptow) i na Androida appka "Skroty HTTP" (nie wiem jak sprawdzic, jaka to oficjalna nazwa. musialbym sprawdzic). W Androidzie wrzucasz kilka ikon na ekran i pod kazda ikone podpinasz zapytanie http, ktore mozna takze uruchamiac ze zwyklej przegladarki. Dzialalo bardzzo dobrze. Potem, wciskasz ikone na telefonie i na serwerze uruchamia sie skrypt.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Marcin Debowski
Date: Fri, 30 Sep 2022 23:11
Date: Fri, 30 Sep 2022 23:11
32 lines
2299 bytes
2299 bytes
On 2022-09-30, Baczek <m_bakowski@poczta.onet.pl> wrote: > Witam > jak już kiedyś pisałem, zbudowałem sobie sterownik do pieca CO. > Sterownik oparty na raspberry. > Wszystko od roku działa jak powinno, ale, > żeby zmienić chwilowo program grzania loguję się poprzez ssh i odpalam > odpowiedni skrypt. > Chciałbym mieć możliwość uruchomienia skryptu poprzez stronę www. > Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na serwerze > odpowiedni skrypt. > Mam na raspberry zainstalowany lighttpd. > Nie wiem jak zapytać google. > Podeśle ktoś za czym mam szukać? Najprościej, jak już Mateusz wspomniał, to chyba html/php. Tylko jeśli te skrypty chodzą pod root'em to ja bym to odizolował od www. Zrób sobie najpierw skryp pod powłoką (np. w bash'u), który uruchamia odpowiednie skrypty piecowe w zależności np. od zawartości jakiegoś pliku (np. 0 - skrypt 0, 1 - skrypt 1 itd.), i niech coś sobie czyta ten plik np. co 10s, odpala odpowiedni skrypt po czym czysci zawartość pliku. A potem dajesz w form html 4x <input type="submit" name="cokolwiek" value="guzikczycosN"> (gdzie N=0..3]) php switch i zapisywanie do tego pliku odpowiedniej wartości. A jak nie masz nic przeciwko, aby Ci coś spod www wykonywało skrypty z prawem roota to shell_exec i zapewne dodanie www-data to sudoers lub ustawienie sticky bit. -- Marcin
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sat, 01 Oct 2022 12:22
Date: Sat, 01 Oct 2022 12:22
20 lines
2118 bytes
2118 bytes
Dnia 30.09.2022 Marcin Debowski <agatek@INVALID.zoho.com> napisał/a: > Zrób sobie najpierw skryp pod powłoką (np. w bash'u), który uruchamia > odpowiednie skrypty piecowe w zależności np. od zawartości jakiegoś > pliku (np. 0 - skrypt 0, 1 - skrypt 1 itd.), i niech coś sobie czyta ten > plik np. co 10s, odpala odpowiedni skrypt po czym czysci zawartość pliku. Nawet nie musi czytać, wystarczy wykorzystać mechanizm inotify kernela (np. incrontab), gdy apacz zmieni jakiś plik może się automagicznie odpalać skrypt. Ja tak miałem rozwiązane dodatkowe sterowanie radiem internetowym, skrypty działały na innym userze. A dostęp z zewnątrz, jeśli potrzebny, rozwiązałbym po prostu vpn-em, wireguard na pi działa bardzo przyzwoicie. -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Sat, 01 Oct 2022 12:39
Date: Sat, 01 Oct 2022 12:39
11 lines
1322 bytes
1322 bytes
2022-10-01 o 12:22 GMT, Dominik Ałaszewski napisał: > A dostęp z zewnątrz, jeśli potrzebny, rozwiązałbym po prostu vpn-em, > wireguard na pi działa bardzo przyzwoicie. A co jest złego w zwyczajnym basic auth http z warstwą TLS? Dużo łatwiejsze w implementacji i w pół minuty można się połączyć do web UI z byle smartfona. Można jeszcze dodać rate limiting, jeśli kto boi się brute force. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sat, 01 Oct 2022 14:27
Date: Sat, 01 Oct 2022 14:27
28 lines
2448 bytes
2448 bytes
Dnia 01.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > A co jest złego w zwyczajnym basic auth http z warstwą TLS? Dużo > łatwiejsze w implementacji i w pół minuty można się połączyć do web UI > z byle smartfona. Nic złego (choć skonfigurowanie Let's Encrypt chwilę zajmie, a przy samopodpisanym przeglądarka zapyskuje- choć z drugiej strony zapewne zapyskuje i przy połączeniu nieszyfrowanym). W każdym razie implementacja wireguarda trudniejsza nie jest- odpowiedź na parę pytań konfiguratora i skan QR kodu smartfonem, zajmie może 3 minuty. I też można się dostać z byle smartfona w kilkanaście sekund. Ja po prostu nie wystawiałbym na świat rzeczy, których tylko ja używam, przy okazji ucinając okazję do macania chińskim macantom i unikając jakichś 0-day serwera http ;-) Pisząc, że ja bym tak zrobił nie twierdzę, iż dane rozwiązanie jest Jedynie Słuszne, czy że inne rozwiązania mają jakieś wady nie do zaakceptowania. -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sat, 01 Oct 2022 14:37
Date: Sat, 01 Oct 2022 14:37
17 lines
1615 bytes
1615 bytes
Dnia 30.09.2022 Baczek <m_bakowski@poczta.onet.pl> napisał/a: > Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na serwerze > odpowiedni skrypt. Chyba najprościej (co nie oznacza, że dobrze ;-) <button onClick="document.location='http://172.16.0.24/cgi-bin/1.sh'"> 1 </button> -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Sat, 01 Oct 2022 15:26
Date: Sat, 01 Oct 2022 15:26
24 lines
1884 bytes
1884 bytes
2022-10-01 o 14:37 GMT, Dominik Ałaszewski napisał: > Dnia 30.09.2022 Baczek <m_bakowski@poczta.onet.pl> napisał/a: > > > Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na > > serwerze odpowiedni skrypt. > > Chyba najprościej (co nie oznacza, że dobrze ;-) > > <button onClick="document.location='http://172.16.0.24/cgi-bin/1.sh'"> > 1 > </button> W takiej perspektywie równie dobrze może to być link <a>... I problem ten sam: jeśli przycisk zmienia jakieś ustawienia czegoś, to szybko może się okazać, że przeglądarka sama grzebie w ustawieniach pieca bo np. odświeża sobie cache ostatnio przeglądanej strony - albo odwrotnie, zamiast wykonać skrypt wyświetla zawartość swojego cache i użytkownik myśli, że coś zrobił, a wcale nie. No i każdy z przycisków pojawi się w historii przeglądarki, więc łatwo samemu niechcący powklikać coś lewego. Z tych właśnie powodów sugerowałem formularz POST. W PHP jego obsługa jest równie prosta, a nie ma wyżej opisanych nieprzyjemności. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Marcin Debowski
Date: Sat, 01 Oct 2022 22:32
Date: Sat, 01 Oct 2022 22:32
17 lines
1788 bytes
1788 bytes
On 2022-10-01, Dominik Ałaszewski <Dominik.Alaszewski@gazeta.pl.invalid> wrote: > Dnia 30.09.2022 Marcin Debowski <agatek@INVALID.zoho.com> napisał/a: > >> Zrób sobie najpierw skryp pod powłoką (np. w bash'u), który uruchamia >> odpowiednie skrypty piecowe w zależności np. od zawartości jakiegoś >> pliku (np. 0 - skrypt 0, 1 - skrypt 1 itd.), i niech coś sobie czyta ten >> plik np. co 10s, odpala odpowiedni skrypt po czym czysci zawartość pliku. > > Nawet nie musi czytać, wystarczy wykorzystać mechanizm inotify kernela > (np. incrontab), gdy apacz zmieni jakiś plik może się automagicznie > odpalać skrypt. Ja tak miałem rozwiązane dodatkowe sterowanie radiem > internetowym, skrypty działały na innym userze. Nawet tego nie znałem. Zapoznam się przy okazji, dzięki. -- Marcin
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Marcin Debowski
Date: Sat, 01 Oct 2022 23:07
Date: Sat, 01 Oct 2022 23:07
32 lines
2542 bytes
2542 bytes
On 2022-10-01, Dominik Ałaszewski <Dominik.Alaszewski@gazeta.pl.invalid> wrote: > Dnia 01.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > >> A co jest złego w zwyczajnym basic auth http z warstwą TLS? Dużo >> łatwiejsze w implementacji i w pół minuty można się połączyć do web UI >> z byle smartfona. > > Nic złego (choć skonfigurowanie Let's Encrypt chwilę zajmie, > a przy samopodpisanym przeglądarka zapyskuje- choć z drugiej > strony zapewne zapyskuje i przy połączeniu nieszyfrowanym). > > W każdym razie implementacja wireguarda trudniejsza > nie jest- odpowiedź na parę pytań konfiguratora i skan > QR kodu smartfonem, zajmie może 3 minuty. > I też można się dostać z byle smartfona w kilkanaście sekund. > > Ja po prostu nie wystawiałbym na świat rzeczy, których tylko > ja używam, przy okazji ucinając okazję do macania chińskim > macantom i unikając jakichś 0-day serwera http ;-) No ale to też serwis i pewnie też będzie jeden użytkownik, więc i tam może się jakiś zirodej znaleźć. Fakt, że pewnie mniej do macania. Nie do końca rozumiem też co ma dać wireguard czego nie ma już zainstalowany sshd? Zasadniczo można przecież sterować i tymi piecami bez otwierania terminala na tej malinie (ssh host polecenie), a w przypadku www zaletą jest sam interfejs wystawiony na malinie, gdzie jest on dostępny z każdej przeglądarki, każdego urządzenia bez jakiejkolwiek konfiguracji. -- Marcin
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Pawel
Date: Sat, 01 Oct 2022 23:39
Date: Sat, 01 Oct 2022 23:39
61 lines
3327 bytes
3327 bytes
W dniu 01.10.2022 o 17:26, Mateusz Viste pisze:
> 2022-10-01 o 14:37 GMT, Dominik Ałaszewski napisał:
>> Dnia 30.09.2022 Baczek <m_bakowski@poczta.onet.pl> napisał/a:
>>
>>> Mam np 4 buttony, i po wciśnięciu któregoś uruchamia mi się na
>>> serwerze odpowiedni skrypt.
>>
>> Chyba najprościej (co nie oznacza, że dobrze ;-)
>>
>> <button onClick="document.location='http://172.16.0.24/cgi-bin/1.sh'">
>> 1
>> </button>
>
> W takiej perspektywie równie dobrze może to być link <a>... I problem
> ten sam: jeśli przycisk zmienia jakieś ustawienia czegoś, to szybko
> może się okazać, że przeglądarka sama grzebie w ustawieniach pieca bo
> np. odświeża sobie cache ostatnio przeglądanej strony - albo odwrotnie,
> zamiast wykonać skrypt wyświetla zawartość swojego cache i użytkownik
> myśli, że coś zrobił, a wcale nie. No i każdy z przycisków pojawi się w
> historii przeglądarki, więc łatwo samemu niechcący powklikać coś lewego.
>
> Z tych właśnie powodów sugerowałem formularz POST. W PHP jego obsługa
> jest równie prosta, a nie ma wyżej opisanych nieprzyjemności.
>
> Mateusz
>
A tak sie spytam, co jest nie tak w uzyciu nodejs?
To jest fragment mojego skryptu. Wywalilem wszystko co zbedne, wiec mam
nadzieje, ze nie za duzo i sie uruchomi
var express = require('express');
var app = express();
function kill_all_xxx()
{
console.log("Funkcja kill_all_xxx")
const exec = require('child_process').exec;
const kill_command = exec(killall_path + ' ' + 'xxx');
kill_command.stdout.on('data', (data)=>{
console.log(data);
});
kill_command.stderr.on('data', (data)=>{
console.error(data);
});
}
app.all('/killall', function(req, res)
{
kill_all_xxx()
res.send("Uruchomilem killall \n");
});
app.listen(55555);
Uruchomienie polega na wywolaniu url-a
http://192.168.XXX.XXX:55555/killall
Mozna tego url-a wywolac z androida z tej appki
https://f-droid.org/packages/ch.rmy.android.http_shortcuts/
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Sun, 02 Oct 2022 08:18
Date: Sun, 02 Oct 2022 08:18
9 lines
1311 bytes
1311 bytes
2022-10-02 o 01:39 +0200, Pawel napisał: > A tak sie spytam, co jest nie tak w uzyciu nodejs? Wszystko cacy, tylko to już trochę wyższa szkoła jazdy. :) Programowanie JS, instalacja usługi NodeJS na serwerze... Śmiem twierdzić, że dla laika to wyższa poprzeczka niż skrypt PHP, ale mogę się mylić bo ja z tym całym JS mało obiektywny jestem. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sun, 02 Oct 2022 08:44
Date: Sun, 02 Oct 2022 08:44
20 lines
1953 bytes
1953 bytes
Dnia 01.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > ten sam: jeśli przycisk zmienia jakieś ustawienia czegoś, to szybko > może się okazać, że przeglądarka sama grzebie w ustawieniach pieca bo > np. odświeża sobie cache ostatnio przeglądanej strony - albo odwrotnie, > zamiast wykonać skrypt wyświetla zawartość swojego cache i użytkownik To nie wystarczy w tym skrypcie wrzucić coś w stylu: printf "Pragma: no-cache\n\n" ? Dla pewności można jeszcze dorzucić: printf "Expires: 0\n\n" -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sun, 02 Oct 2022 08:47
Date: Sun, 02 Oct 2022 08:47
14 lines
1906 bytes
1906 bytes
Dnia 01.10.2022 Marcin Debowski <agatek@INVALID.zoho.com> napisał/a: > Nie do końca rozumiem też co ma dać wireguard czego nie ma już > zainstalowany sshd? Zasadniczo można przecież sterować i tymi piecami Wireguard ma tylko dać dostęp do http, a po co http zamiast ssh to pytanie do OP. Może na przykład chce sobie jeszcze gustowną grafikę obrazującą działanie pieca przy aktualnych nastawach wywiesić? -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Pawel
Date: Sun, 02 Oct 2022 09:42
Date: Sun, 02 Oct 2022 09:42
21 lines
2395 bytes
2395 bytes
W dniu 02.10.2022 o 10:18, Mateusz Viste pisze: > 2022-10-02 o 01:39 +0200, Pawel napisał: >> A tak sie spytam, co jest nie tak w uzyciu nodejs? > > Wszystko cacy, tylko to już trochę wyższa szkoła jazdy. :) > Programowanie JS, instalacja usługi NodeJS na serwerze... Śmiem > twierdzić, że dla laika to wyższa poprzeczka niż skrypt PHP, ale mogę > się mylić bo ja z tym całym JS mało obiektywny jestem. > Ja takze nie jestem specem od Javascript. Skladnia javascript jest bardzo podobna do C/C++. Co do instalacji node.js, to z tego co pamietam, to wystarczylo wrzucic jedna, czy dwie komendy, ktore tworzyly katalog z calym srodowiskiem i tyle. To co wrzucilem, to jest caly skrypt, ktory uruchamia zewnetrzne programy, w tym przypadku uruchamial komende killall, czyli zwykla linuksowa appka. A pomijajac tego node.js, to ta druga appka jest warta zainteresowania, bo z telefonu mozna wywolywac komendy przy uzyciu http. Nie musisz sie bujac z przegladarka, tylko sie wciska ikone w telefonie.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Kamil Jońca
Date: Sun, 02 Oct 2022 09:51
Date: Sun, 02 Oct 2022 09:51
21 lines
2065 bytes
2065 bytes
Pawel <ppf9@USUN_TOpoczta.fm> writes: > W dniu 02.10.2022 o 10:18, Mateusz Viste pisze: >> 2022-10-02 o 01:39 +0200, Pawel napisał: >>> A tak sie spytam, co jest nie tak w uzyciu nodejs? >> Wszystko cacy, tylko to już trochę wyższa szkoła jazdy. :) >> Programowanie JS, instalacja usługi NodeJS na serwerze... Śmiem >> twierdzić, że dla laika to wyższa poprzeczka niż skrypt PHP, ale mogę >> się mylić bo ja z tym całym JS mało obiektywny jestem. >> > Ja takze nie jestem specem od Javascript. Skladnia javascript jest > bardzo podobna do C/C++. Że co? Poza tym składnia składnią, a semantyka semantyką. A tu jest IMO zupełnie różnie. KJ -- http://wolnelektury.pl/wesprzyj/teraz/
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Pawel
Date: Sun, 02 Oct 2022 10:25
Date: Sun, 02 Oct 2022 10:25
26 lines
2759 bytes
2759 bytes
W dniu 02.10.2022 o 11:51, Kamil Jońca pisze: > Pawel <ppf9@USUN_TOpoczta.fm> writes: > >> W dniu 02.10.2022 o 10:18, Mateusz Viste pisze: >>> 2022-10-02 o 01:39 +0200, Pawel napisał: >>>> A tak sie spytam, co jest nie tak w uzyciu nodejs? >>> Wszystko cacy, tylko to już trochę wyższa szkoła jazdy. :) >>> Programowanie JS, instalacja usługi NodeJS na serwerze... Śmiem >>> twierdzić, że dla laika to wyższa poprzeczka niż skrypt PHP, ale mogę >>> się mylić bo ja z tym całym JS mało obiektywny jestem. >>> >> Ja takze nie jestem specem od Javascript. Skladnia javascript jest >> bardzo podobna do C/C++. > > Że co? > Poza tym składnia składnią, a semantyka semantyką. A tu jest IMO > zupełnie różnie. > KJ Mowie o glownych kwestiach, czyli, ze sa nawiasy otwierajace, nawiasy przy funkcjac, sredniki na koncu, typ zmiennej sie okresla itp. W porownaniu np do pythona, to javascript jest podobny do c/c++. Nie twierdze, ze to jest ten sam jezyk, bo tak nie jest, ale jak ktos zna c/C++, to latwiej ogarnac javascript, niz pythona. Oczywiscie, to sa zupelnie inne jezyki i do czego inego byly projektowane, ale jak sie patrzy na prosty kod typu hello world, to oba jezyki sa podobne. W tym skrypcie, co ja napisalem, to bardziej zaawansowanych rzeczy nie potrzeba.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Kamil Jońca
Date: Sun, 02 Oct 2022 10:29
Date: Sun, 02 Oct 2022 10:29
31 lines
2304 bytes
2304 bytes
Pawel <ppf9@USUN_TOpoczta.fm> writes: [...] >>> Ja takze nie jestem specem od Javascript. Skladnia javascript jest >>> bardzo podobna do C/C++. >> Że co? >> Poza tym składnia składnią, a semantyka semantyką. A tu jest IMO >> zupełnie różnie. >> KJ > Mowie o glownych kwestiach, czyli, ze sa nawiasy otwierajace, nawiasy > przy funkcjac, sredniki na koncu, typ zmiennej sie okresla itp. W > porownaniu np do pythona, to javascript jest podobny do c/c++. Nie > twierdze, ze to jest ten sam jezyk, bo tak nie jest, ale jak ktos zna > c/C++, to latwiej ogarnac javascript, niz pythona. Oczywiscie, to sa Jako osoba która miała styczność z C++, pythonem i JS twierdzę, ze się mylisz... > zupelnie inne jezyki i do czego inego byly projektowane, ale jak sie > patrzy na prosty kod typu hello world, to oba jezyki sa podobne. W tym > skrypcie, co ja napisalem, to bardziej zaawansowanych rzeczy nie > potrzeba. > ... chyba, że na poziomie hello world. KJ -- http://stopstopnop.pl/stop_stopnop.pl_o_nas.html
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Marcin Debowski
Date: Sun, 02 Oct 2022 11:55
Date: Sun, 02 Oct 2022 11:55
15 lines
1801 bytes
1801 bytes
On 2022-10-02, Dominik Ałaszewski <Dominik.Alaszewski@gazeta.pl.invalid> wrote: > Dnia 01.10.2022 Marcin Debowski <agatek@INVALID.zoho.com> napisał/a: > >> Nie do końca rozumiem też co ma dać wireguard czego nie ma już >> zainstalowany sshd? Zasadniczo można przecież sterować i tymi piecami > > Wireguard ma tylko dać dostęp do http, a po co http zamiast ssh to > pytanie do OP. Może na przykład chce sobie jeszcze gustowną grafikę > obrazującą działanie pieca przy aktualnych nastawach wywiesić? To niech httpd słucha na localhost i przetunelować po ssh. Nawet nie będzie trzeba konfigurować ssl. -- Marcin
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Sun, 02 Oct 2022 11:58
Date: Sun, 02 Oct 2022 11:58
35 lines
2502 bytes
2502 bytes
2022-10-02 o 08:44 GMT, Dominik Ałaszewski napisał: > Dnia 01.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > > > ten sam: jeśli przycisk zmienia jakieś ustawienia czegoś, to szybko > > może się okazać, że przeglądarka sama grzebie w ustawieniach pieca > > bo np. odświeża sobie cache ostatnio przeglądanej strony - albo > > odwrotnie, zamiast wykonać skrypt wyświetla zawartość swojego cache > > i użytkownik > > To nie wystarczy w tym skrypcie wrzucić coś w stylu: > printf "Pragma: no-cache\n\n" ? Raczej z "\r\n" na końcu, znaczenie "\n\n" byłoby inne. Poza tym, ta pragma jest "deprecated" więc nie ma na nic żadnych gwarancji. Obecnie powinno się raczej używać "cache-control: no-cache", ale tu też w praktyce różnie bywa bo zarówno przeglądarki jak i proxies traktują to raczej w kategorii sugestii. > Dla pewności można jeszcze dorzucić: > printf "Expires: 0\n\n" Jeśli dana implementacja cache to respektuje (a nie każda jest na tyle uczciwa), to z przymrużeniem oka możemy uznać że załatwiłoby to temat starego cache. Pozostaje problem automatycznego odświeżania cache (tj. przeglądarka lub proxy na zaś odpytuje serwer żeby mieć najświeższą wersję strony pod ręką w razie gdyby użytkownik zaraz kliknął na link) oraz problem pojawiania się konfiguracyjnych akcji pieca w historii przeglądarki. Słowem - kupa problemów i rozkminy, kiedy użycie formularza POST załatwia temat bez potrzeby doktoryzowania się z RFC i praktycznymi implementacjami. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Sun, 02 Oct 2022 12:02
Date: Sun, 02 Oct 2022 12:02
24 lines
2222 bytes
2222 bytes
2022-10-02 o 11:55 GMT, Marcin Debowski napisał: > On 2022-10-02, Dominik Ałaszewski > <Dominik.Alaszewski@gazeta.pl.invalid> wrote: > > Dnia 01.10.2022 Marcin Debowski <agatek@INVALID.zoho.com> napisał/a: > > > >> Nie do końca rozumiem też co ma dać wireguard czego nie ma już > >> zainstalowany sshd? Zasadniczo można przecież sterować i tymi > >> piecami > > > > Wireguard ma tylko dać dostęp do http, a po co http zamiast ssh to > > pytanie do OP. Może na przykład chce sobie jeszcze gustowną grafikę > > obrazującą działanie pieca przy aktualnych nastawach wywiesić? > > To niech httpd słucha na localhost i przetunelować po ssh. Nawet nie > będzie trzeba konfigurować ssl. Za to trzeba będzie cyrkować z konfiguracją smartfona żeby taki tunel na nim postawić. TLS trudny w konfiguracji nie jest, a działa wszędzie i na wszystkim. Jeśli same dane pieca nie są tajemnicą, tylko chodzi o to by jaki pakistanczyk nam nie przestawił zdalnie temperatury w kuchni to i bez TLS się obejdzie, wystarczy wówczas użyć challenge-response (digest) auth na zwyczajnym HTTP. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Pawel
Date: Sun, 02 Oct 2022 12:08
Date: Sun, 02 Oct 2022 12:08
35 lines
2992 bytes
2992 bytes
W dniu 02.10.2022 o 12:29, Kamil Jońca pisze: > Pawel <ppf9@USUN_TOpoczta.fm> writes: > > [...] >>>> Ja takze nie jestem specem od Javascript. Skladnia javascript jest >>>> bardzo podobna do C/C++. >>> Że co? >>> Poza tym składnia składnią, a semantyka semantyką. A tu jest IMO >>> zupełnie różnie. >>> KJ >> Mowie o glownych kwestiach, czyli, ze sa nawiasy otwierajace, nawiasy >> przy funkcjac, sredniki na koncu, typ zmiennej sie okresla itp. W >> porownaniu np do pythona, to javascript jest podobny do c/c++. Nie >> twierdze, ze to jest ten sam jezyk, bo tak nie jest, ale jak ktos zna >> c/C++, to latwiej ogarnac javascript, niz pythona. Oczywiscie, to sa > > Jako osoba która miała styczność z C++, pythonem i JS twierdzę, ze się > mylisz... A moglbys rozwinac swa mysl? Chetnie sie dowiem. Tak jak mowilem, nie jestem specem w zadnymjezyku, wiec moze sie myle i chetnie sie dowiem czegos wiecej. > >> zupelnie inne jezyki i do czego inego byly projektowane, ale jak sie >> patrzy na prosty kod typu hello world, to oba jezyki sa podobne. W tym >> skrypcie, co ja napisalem, to bardziej zaawansowanych rzeczy nie >> potrzeba. >> > ... chyba, że na poziomie hello world. Ale javascript (przynajmniej to co jest w node.js), podstawy ma bardzo podobne. Ify, czy tez while wyglada bardzo podobnie do c++, chyba, ze przez ostatnie kilka lat, podstawowaa struktura c++ sie jakos drastycznie zmienila. Od C++11 malo co uzywam C++, wiec nie jestem na czasie.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sun, 02 Oct 2022 12:26
Date: Sun, 02 Oct 2022 12:26
30 lines
1889 bytes
1889 bytes
Dnia 02.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > ale tu też w praktyce różnie bywa bo zarówno przeglądarki jak i proxies > traktują to raczej w kategorii sugestii. OK, a po prostu coś takiego? main.html: (..) <button onClick="document.location='http://192.168.1.100/cgi-bin/1.sh'"> Nastawy 1 </button> (..) a w 1.sh: #!/bin/bash echo "1" >/sygnal/do/pieca cat << EOF <HTML> <meta http-equiv="Refresh" content="0; url=http://192.168.1.100/main.html"> </HTML> -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Marcin Debowski
Date: Sun, 02 Oct 2022 12:43
Date: Sun, 02 Oct 2022 12:43
32 lines
2837 bytes
2837 bytes
On 2022-10-02, Mateusz Viste <mateusz@xyz.invalid> wrote: > 2022-10-02 o 11:55 GMT, Marcin Debowski napisał: >> On 2022-10-02, Dominik Ałaszewski >> <Dominik.Alaszewski@gazeta.pl.invalid> wrote: >> > Dnia 01.10.2022 Marcin Debowski <agatek@INVALID.zoho.com> napisał/a: >> > >> >> Nie do końca rozumiem też co ma dać wireguard czego nie ma już >> >> zainstalowany sshd? Zasadniczo można przecież sterować i tymi >> >> piecami >> > >> > Wireguard ma tylko dać dostęp do http, a po co http zamiast ssh to >> > pytanie do OP. Może na przykład chce sobie jeszcze gustowną grafikę >> > obrazującą działanie pieca przy aktualnych nastawach wywiesić? >> >> To niech httpd słucha na localhost i przetunelować po ssh. Nawet nie >> będzie trzeba konfigurować ssl. > > Za to trzeba będzie cyrkować z konfiguracją smartfona żeby taki tunel > na nim postawić. TLS trudny w konfiguracji nie jest, a działa wszędzie > i na wszystkim. Jeśli same dane pieca nie są tajemnicą, tylko chodzi o > to by jaki pakistanczyk nam nie przestawił zdalnie temperatury w kuchni > to i bez TLS się obejdzie, wystarczy wówczas użyć challenge-response > (digest) auth na zwyczajnym HTTP. Nie, no ja się zgadzam, tylko polimeryzuje z Dominikiem nad sensem wprowadzania dodatkowo vpn'u, skoro już tam zainstalowany sshd załatwia MZ sprawę. Zdefiniowanie "forwarding" na np. takim androidowym czy iOSowym Terminusie nie będzie bardziej skomplikowane niż instalacja wireguarda, a poźniejsze utworzenie tunelu to jedno pacnięcie w ekran. -- Marcin
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sun, 02 Oct 2022 13:07
Date: Sun, 02 Oct 2022 13:07
18 lines
2347 bytes
2347 bytes
Dnia 02.10.2022 Marcin Debowski <agatek@INVALID.zoho.com> napisał/a: > Nie, no ja się zgadzam, tylko polimeryzuje z Dominikiem nad sensem > wprowadzania dodatkowo vpn'u, skoro już tam zainstalowany sshd załatwia Ależ ja nie proponuję vpn-u jako jedynie słuszne rozwiązanie, tylko piszę, że _ja_ bym tak zrobił. Bo o ile nad własnym rozwiązaniem mamy pełną kontrolę, o tyle mogą się trafić rozwiązania pudełkowe- kamerki, sterowanie odkurzaczem czy roletami- których nie wystawiałbym do netu, ale jednak dobrze byłoby mieć do nich dostęp spoza domu. Sterowanie piecem wpisuje mi się po prostu w całość. -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Sun, 02 Oct 2022 13:31
Date: Sun, 02 Oct 2022 13:31
31 lines
1807 bytes
1807 bytes
2022-10-02 o 12:26 GMT, Dominik Ałaszewski napisał: > Dnia 02.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > > > ale tu też w praktyce różnie bywa bo zarówno przeglądarki jak i > > proxies traktują to raczej w kategorii sugestii. > > OK, a po prostu coś takiego? > > main.html: > (..) > <button > onClick="document.location='http://192.168.1.100/cgi-bin/1.sh'"> > Nastawy 1 </button> > (..) > > a w 1.sh: > > #!/bin/bash > echo "1" >/sygnal/do/pieca > > cat << EOF > <HTML> > <meta http-equiv="Refresh" content="0; > url=http://192.168.1.100/main.html"> </HTML> Sprawdź, doktoryzuj się. :) Oczywiście na kilku przeglądarkach, z różnymi konfiguracjami proxy, z różnymi ustawieniami dot. cache, itd. Ja tu tylko proponuję rozwiązanie nie wymagające zostania specjalistą. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Sun, 02 Oct 2022 13:57
Date: Sun, 02 Oct 2022 13:57
27 lines
2645 bytes
2645 bytes
Dnia 02.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > Sprawdź, doktoryzuj się. :) Oczywiście na kilku przeglądarkach, z > różnymi konfiguracjami proxy, z różnymi ustawieniami dot. cache, itd. Sprawdziłem, jak pisałem miałem tak rozwiązane sterowanie radiem internetowym (znalazłem w archiwum stare pliki i zrobiłem to właśnie z odświeżaniem). Nie było problemu zarówno z przeglądarki mobilnej jak i stacjonarnej- nie było przypadku żeby "samo" się coś przestawiło ani żeby nie było reakcji na wciśnięcie przycisku. Czy działałoby to zawsze i wszędzie- nie mam pojęcia i mnie to mało interesowało, ważne że działało na moich urządzeniach. > Ja tu tylko proponuję rozwiązanie nie wymagające zostania specjalistą. Jasne, napisać kilkulinijkowy skrypt z jedną dyrektywą HTML to trzeba doktorat co najmniej zrobić, nie to co php, które opanowujemy po licencjacie. A poważnie, to zapewne problem można rozwiązać na dziesiątki sposobów, a każdy użyje tego, co zna i lubi. -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Kamil Jońca
Date: Sun, 02 Oct 2022 14:08
Date: Sun, 02 Oct 2022 14:08
50 lines
3443 bytes
3443 bytes
Pawel <ppf9@USUN_TOpoczta.fm> writes: > W dniu 02.10.2022 o 12:29, Kamil Jońca pisze: >> Pawel <ppf9@USUN_TOpoczta.fm> writes: >> [...] >>>>> Ja takze nie jestem specem od Javascript. Skladnia javascript jest >>>>> bardzo podobna do C/C++. >>>> Że co? >>>> Poza tym składnia składnią, a semantyka semantyką. A tu jest IMO >>>> zupełnie różnie. >>>> KJ >>> Mowie o glownych kwestiach, czyli, ze sa nawiasy otwierajace, nawiasy >>> przy funkcjac, sredniki na koncu, typ zmiennej sie okresla itp. W >>> porownaniu np do pythona, to javascript jest podobny do c/c++. Nie >>> twierdze, ze to jest ten sam jezyk, bo tak nie jest, ale jak ktos zna >>> c/C++, to latwiej ogarnac javascript, niz pythona. Oczywiscie, to sa >> Jako osoba która miała styczność z C++, pythonem i JS twierdzę, ze >> się >> mylisz... > A moglbys rozwinac swa mysl? Chetnie sie dowiem. Tak jak mowilem, nie > jestem specem w zadnymjezyku, wiec moze sie myle i chetnie sie dowiem > czegos wiecej. Ja w sumie też nie jestem jakimś wielkim fachowcem, zresztą od jakiegoś czasu głównie python. Bardziej chodziło mi o pewne założenia w js (np. wszystkie zmienne globalne) które powodują, że musimy bardziej intensywnie korzystać z pewnych konstrukcji (np. domknięcia funkcji), jeśli chcemy mieć jaką taką jakość kodu. To tak na szybko. No i znane mi zastosowania js to raczej reakcje na zdarzenia, często(?) asynchroniczne, co też wpływa na styl kodowania. > > >> >>> zupelnie inne jezyki i do czego inego byly projektowane, ale jak sie >>> patrzy na prosty kod typu hello world, to oba jezyki sa podobne. W tym >>> skrypcie, co ja napisalem, to bardziej zaawansowanych rzeczy nie >>> potrzeba. >>> >> ... chyba, że na poziomie hello world. > Ale javascript (przynajmniej to co jest w node.js), podstawy ma bardzo > podobne. Ify, czy tez while wyglada bardzo podobnie do c++, chyba, ze Tak to wszyskto wygląda bardzo podobnie :). Może poza asemblerem. KJ -- http://wolnelektury.pl/wesprzyj/teraz/
Re: Wykonanie polecenia na serwerze poprzez stron www
Author: Mateusz Viste
Date: Sun, 02 Oct 2022 16:27
Date: Sun, 02 Oct 2022 16:27
30 lines
2605 bytes
2605 bytes
2022-10-02 o 13:57 GMT, Dominik Ałaszewski napisał: > Jasne, napisać kilkulinijkowy skrypt z jedną dyrektywą HTML to trzeba > doktorat co najmniej zrobić, nie to co php, które opanowujemy > po licencjacie. PHP jest tu drugorzędne, formularz można obsłużyć i w bashu jak się kto uprze. PHP po prostu najlepiej od jakiegokolwiek innego języka się do tego nadaje, bo został stworzony dokładnie do tego. Istotniejsza jednak od samego języka jest konstrukcja pozwalająca przesyłać rozkazy. A wykonywanie akcji zmieniających stan serwera za pomocą zwyczajnego, cache-owalnego i powtarzalnego GET-a jest po prostu koncepcyjnie słabe. I żeby nie było że Mateusz tak sobie twierdzi, aby tylko dokuczyć na usenecie, podaję pierwszy z brzegu wycinek RFC 2616: In particular, the convention has been established that the GET and HEAD methods SHOULD NOT have the significance of taking an action other than retrieval. These methods ought to be considered "safe". This allows user agents to represent other methods, such as POST, PUT and DELETE, in a special way, so that the user is made aware of the fact that a possibly unsafe action is being requested. > A poważnie, to zapewne problem można rozwiązać na dziesiątki sposobów, > a każdy użyje tego, co zna i lubi. No właśnie nie, w ścisłej kwestii przesyłania rozkazów do serwera HTTP są tylko dwa możliwe sposoby. Jeden dobry, drugi... takie sobie. Mateusz
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Baczek
Date: Mon, 03 Oct 2022 07:45
Date: Mon, 03 Oct 2022 07:45
8 lines
1482 bytes
1482 bytes
Dziękuję wszystkim za podpowiedzi. Na tę chwilę piecem steruję e-mailami. Wysyłam z odpowiednim tematem, skrypt wie co z tym robić. W razie potrzeby łączę się przez już skonfigurowany VPN. Zmierzę się chyba z CGI. Pozdrawiam Max
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: geos
Date: Mon, 03 Oct 2022 11:15
Date: Mon, 03 Oct 2022 11:15
17 lines
1655 bytes
1655 bytes
On 10/3/22 09:45, Baczek wrote: > Dziękuję wszystkim za podpowiedzi. > Na tę chwilę piecem steruję e-mailami. Wysyłam z odpowiednim tematem, > skrypt wie co z tym robić. W razie potrzeby łączę się przez już > skonfigurowany VPN. > Zmierzę się chyba z CGI. > > Pozdrawiam > Max > jeśli masz VPNa to chyba KDE connect da radę. możesz skonfigurować polecenia i wywoływać je na serwerze np. z telefonu też wpiętego w VPN. pozdrawiam geos
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Dominik Ałaszewski
Date: Tue, 04 Oct 2022 05:55
Date: Tue, 04 Oct 2022 05:55
20 lines
2319 bytes
2319 bytes
Dnia 02.10.2022 Mateusz Viste <mateusz@xyz.invalid> napisał/a: > koncepcyjnie słabe. I żeby nie było że Mateusz tak sobie twierdzi, aby > tylko dokuczyć na usenecie, podaję pierwszy z brzegu wycinek RFC 2616: Ależ oczywiście masz rację. Wkręty służą do wkręcania, do wbijania służą gwoździe. I producent wkrętów w karcie charakterystyki rzecze, iż jak kto użyje wkrętów w charakterze gwoździ to on za nic nie odpowiada. Ja tylko uważam, że jak ktoś czasem w domowej dłubaninie użyje wkrętów w charakterze gwoździ, to świat się od tego nie zawali. Kto nigdy nie wbijał gwoździ kombinerkami niech pierwszy rzuci kamieniem ;-) -- Dominik Ałaszewski (via raspbianowy slrn) "W życiu piękne są tylko chwile…" (Ryszard Riedel) Wyrażam wyłącznie prywatne poglądy zgodnie z Art. 54 Konstytucji RP Pisząc na priv zmień domenę na gmail.
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Roman Tyczka
Date: Thu, 13 Oct 2022 20:27
Date: Thu, 13 Oct 2022 20:27
19 lines
2134 bytes
2134 bytes
On 2.10.2022 12:25, Pawel wrote: >>> Ja takze nie jestem specem od Javascript. Skladnia javascript jest >>> bardzo podobna do C/C++. >> >> Że co? >> Poza tym składnia składnią, a semantyka semantyką. A tu jest IMO >> zupełnie różnie. >> KJ > Mowie o glownych kwestiach, czyli, ze sa nawiasy otwierajace, nawiasy > przy funkcjac, sredniki na koncu, typ zmiennej sie okresla itp. W JS nie ma typów, to język typowany dynamicznie (dobiera typy w locie). Średniki na końcu linii nie są wymagane. To zupełnie inny język niż C++, podobieństwo jest tylko powierzchowne, te nawiasy właśnie i na tym koniec. -- pzdr Roman
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Pawel
Date: Sun, 16 Oct 2022 18:25
Date: Sun, 16 Oct 2022 18:25
5 lines
1524 bytes
1524 bytes
W dniu 3.10.2022 o 09:45, Baczek pisze: > Dziękuję wszystkim za podpowiedzi. > Na tę chwilę piecem steruję e-mailami. Wysyłam z odpowiednim tematem, > skrypt wie co z tym robić. W razie potrzeby łączę się przez już A moglbys podrzucic ten skrypt? Chetnie bym zobaczyl?
Re: Wykonanie polecenia na serwerze poprzez stronę www
Author: Baczek
Date: Mon, 17 Oct 2022 05:24
Date: Mon, 17 Oct 2022 05:24
60 lines
3024 bytes
3024 bytes
W dniu 16.10.2022 o 20:25, Pawel pisze:
> W dniu 3.10.2022 o 09:45, Baczek pisze:
>> Dziękuję wszystkim za podpowiedzi.
>> Na tę chwilę piecem steruję e-mailami. Wysyłam z odpowiednim tematem,
>> skrypt wie co z tym robić. W razie potrzeby łączę się przez już
> A moglbys podrzucic ten skrypt? Chetnie bym zobaczyl?
>
>
Wiedza dotycząca programowania u mnie niewielka. Jak ktoś, widzi błędy
(jakoś to działa) lub możliwość poprawy proszę dać znać
Skrypt w bash
#!/bin/sh
python /temperatura/emaile/poczta.py | grep -v MIME-Version | grep
-v Content- | grep -v Received: | grep -v X-WP > /tmp/emaile.tmp
wielkoscpliku=`wc -c /tmp/emaile.tmp | cut -d' ' -f1`
#kasuje bo nie bylo e-maili
if [ $wielkoscpliku -eq 0 ];then rm -f /tmp/emaile.tmp; exit; fi
#odczytuje drugie slowo z tematu
temat=`cat /tmp/emaile.tmp | grep Subject: | cut -d' ' -f3`
cat /tmp/emaile.tmp | grep Subject: | cut -d' ' -f3 > /tmp/numery
temat=`tail -n1 /tmp/numery`
#jak nr 99 prosze o wysylke statusu
if [ $temat -eq 99 ];then
/home/pi/status.sh
fi
#dpalam odpowiedni program
if [ $temat -ge 6 ] && [ $temat -le 55 ]; then
/temperatura/skrypty/przelacznik.sh $temat
sleep 3
/home/pi/status.sh
fi
Odbieranie poczty z serwera w pythonie
root@raspberrypi:/temp/emaile# cat ./poczta.py
import getpass, poplib
M = poplib.POP3('pop3.wp.pl')
M.user('moj_adres_email@wp.pl')
M.pass_('haslo_do_poczty')
numMessages = len(M.list()[1])
#print('Statystyka - ',M.stat(),' ilosc wiadomosci - ',numMessages)
for i in range(numMessages):
print('### KONIEC ###')
for j in M.retr(i+1)[1]:
print(j)
for i in range(numMessages):
M.dele(i+1)
M.quit()
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads