Pokud jste uživatelem smartphonu, určitě víte, že jednou z nejpodobnějších a nejznámějších aplikací WhatsApp je Telegram, velmi univerzální klient pro zasílání zpráv což představuje několik zvláštností, jako je možnost současného použití stejného telefonního čísla z různých zařízení. Právě díky této funkci vám dnes chci představit malý výukový program, pomocí kterého můžete odesílat textové zprávy a dokonce i multimediální soubory svým kontaktům z Raspberry Pi.
Stejně zajímavá je skutečnost, že můžeme nakonfigurovat Raspberry Pi tak, aby před určitým příkazem přijatým Telegramem mohla naše karta vykonávat další výkon, to znamená, představme si, že pošleme slovo «fotografie»A to nám dává obraz jakékoli místnosti v domě,«světlo»Automatické zapnutí libovolného světla nebo«otevřít»Pro automatické otevření garážových vrat.
Určitě vás tato další funkce zaujala. Pokud ano, pustíme se do práce, ale ne dříve, než vám řekneme, že k provedení projektu budeme potřebovat Raspberry Pi B nebo Raspberry Pi B +, stejně jako 8 GB microSD karta Class 10 s předinstalovaná nejnovější verze Raspbian.
Jakmile máme vše výše uvedené, začneme od a terminál Začínáme s aktualizací a základní konfigurací. Určitě se najde mnoho uživatelů, kteří to nepotřebují, ale raději bychom měli dělat vše krok za krokem a dobrým tempem, abychom nic nevynechali. Začneme spuštěním a aktualizací balíčků pomocí:
sudo apt-get update
sudo apt-get upgrade
Pokračujeme v instalaci a aktualizaci několika základních knihoven, kde systém najde všechny potřebné knihovny
sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 li-blua5.2-dev libevent-dev make
Posun úložiště GitHub
git clone --recursive https://github.com/vysheng/td.git && cd tg
./configure
make
Jakmile máme vše nainstalované, je čas nakonfigurovat lua, výkonný a rychlý skriptovací jazyk. Syntaxe je velmi jednoduchá, v našem terminálu provádíme:
sudo nano /home/pi/tg/action.lua
a přidáme následující obsah:
function on_msg_receive (msg) if msg.out then return end if (msg.text=='ping') then send_msg (msg.from.print_name, 'pong', ok_cb, false) end end function on_our_id (id) end function on_secret_chat_created (peer) end function on_user_update (user) end function on_chat_update (user) end function on_get_difference_end () end function on_binlog_replay_end () end
S výše uvedeným bychom měli prakticky vše nakonfigurované tak, že když pošleme text «ping»Vrátí se«pong".
Přesunuli jsme se do adresáře tg
cd /home/pi/tg
Provádíme následující příkaz
bin/telegram-cli -k tg-server.pub -W -s action.lua
Nyní je čas zahájit testování a odeslat náš «ping»Na telegram, ihned poté a jak vidíte na obrázku, odpověď je naše očekávaná«pong«. Musíme vzít v úvahu, zda používáme velká písmena nebo ne, protože systém je citlivý na jeho použití.
Pokud to, co chceme, je to, že místo „pongu“ vrátí naše Raspberry Pi obrázek, ve funkci, kde pošleme odpověď, budeme muset jen řekněte systému, aby pořídil fotografii pomocí dříve nainstalované kamery a pošlete nám ji.
Link: instruktáže
Když jsem viděl možnosti tohoto, napadlo mě, že by asi bylo hezké, kdybych mohl z telegramu bezpečně odeslat jakýkoli příkaz na moji malinu (nebo na jakýkoli server Linux) a získat výstup. Dokonce vytvářejte aliasy příkazů, abyste nemuseli příliš psát, spravujte uživatele, kteří mohou dělat totéž na stejném počítači, aby kdokoli nemohl dělat, co chce ... atd.
Začal jsem to dělat a dnes jsem vydal „Poslušnost“.
Pokud se někdo chce zmást a zkusit to, jděte do toho
https://github.com/GuillermoPena/obedience
Hola Guillermo,
Neměl jsem moc času vše přezkoumat, ale musím ti říct, že to vypadá velmi dobře. Pokud budu mít tento víkend čas, zkusím všechno, abych zjistil, jak to funguje.
Moc děkuji za vaši práci !!!
Dobrý den, vynikající příspěvek, líbilo se mi to! Chci jen vědět, jestli existuje způsob, jak automaticky spustit skript .lua při spuštění, pozdravy!