1 (edytowany przez areq 2015-11-23 10:11:54)

Temat: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

Szukałem prostego sposobu na wysyłanie notyfikacji na telefon - coś jak sms ale bez GSM. I znalazłem wink

https://telegram.org/ - genialnie prosty i funkcjonalny komunikator praktycznie na każdy system mobilny i desktopowy. Od jakiegoś czasu udostępnia też API do tworzenia botów. Do uruchomienia w 3 minuty.

1) instalacja klienta telegram na komórce - logujemy się swoim numerem telefonu

2) wchodzimy na stronę https://web.telegram.org/#/im?p=@BotFather  i rozpoczynamy rozmowę z @BotFather

3) zakładamy nowego bota komendą /newbot , bot zapyta nas o nazwę a na koniec poda klucz do API (utworzyłem bota ekotestbot
i dostałem klucz 165384823:AAHBBX-Qa_NvKDhb57R2RigdHr8-RSQe06Q

4) sprawdzamy czy bot żyje:

 $ curl "https://api.telegram.org/bot165384823:AAHBBX-Qa_NvKDhb57R2RigdHr8-RSQe06Q/getMe"
{"ok":true,"result":{"id":165384823,"first_name":"ekotestbot","username":"ekotestbot"}}

5) bot może wysyłać tylko wiadomości do osób które rozpoczęły z nim rozmowę, więc piszemy coś do @ekotestbot ze swojego klienta - najprościej wchodząc na link https://telegram.me/ekotestbot i piszemy dowolny tekst

6) sprawdzamy czy bot to otrzymał:

 $ curl "https://api.telegram.org/bot165384823:AAHBBX-Qa_NvKDhb57R2RigdHr8-RSQe06Q/getUpdates"
{"ok":true,"result":[{"update_id":539235055,
"message":{"message_id":1,"from":{"id":11125577,"first_name":"Areq","username":"areqq"},"chat":{"id":11125577,"first_name":"Areq","username":"areqq","type":"private"},"date":1448220081,"text":"\/start"}},{"update_id":539235056,
"message":{"message_id":2,"from":{"id":11125577,"first_name":"Areq","username":"areqq"},"chat":{"id":11125577,"first_name":"Areq","username":"areqq","type":"private"},"date":1448220100,"text":"to dzia\u0142a ?"}}]}

jak widać coś działa, od razu z tego możemy wyłuskać swój id użytkownika - będzie to: 11125577

7) i już możemy wysyłać wiadomości do siebie:

 $ curl --data chat_id=11125577--data-urlencode "text=Some complex text $25 78%"  "https://api.telegram.org/bot165384823:AAHBBX-Qa_NvKDhb57R2RigdHr8-RSQe06Q/sendMessage"
{"ok":true,"result":{"message_id":3,"from":{"id":165384823,"first_name":"ekotestbot","username":"ekotestbot"},"chat":{"id":11125577,"first_name":"Areq","username":"areqq","type":"private"},"date":1448220405,"text":"Some complex text 5 78%"}}

i to już wszystko na początek wink Dalej można rozbudowywać o własne komendy itp.
dla zainteresowanych:
https://www.domoticz.com/wiki/Telegram_Bot
https://core.telegram.org/bots/api

ps. bota ekotestbot - skasowałem,  żeby nie było nadużyć na moje konto ;-)

2

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

Ja swego czasu używałem po prostu jabbera go konta googlowego: http://eko.one.pl/?p=openwrt-jabber, ale to było kiedyś i nawet nie wiem czy jeszcze działa.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3 (edytowany przez areq 2015-11-22 21:13:20)

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

przynajmniej na ios nie znalazłem sensownie działającego klienta jabbera, który nie miał by problemu z utrzymywaniem aktywnej sesji przez wiele tygodni, poza tym telegram zastępuje mi sms i mms ze znajomymi z którymi nie mam iMessage

4

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

Ciekawy pomysł - spróbuję go przetestować w wolnej chwili - dzięki za poradnik.
wink

5

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

A ktoś mi wytłumaczy czemu to jest lepsze od wysłania maila?

6

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

Nie wiem czy lepsze, inne wink notyfikacje to tylko część możliwości bota, możesz zrobić tym kanałem interakcję i wysyłać botowi polecenia

7

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

areq napisał/a:

Nie wiem czy lepsze, inne wink notyfikacje to tylko część możliwości bota, możesz zrobić tym kanałem interakcję i wysyłać botowi polecenia

...i to właśnie mnie najbardziej interesuje, by ogarnąć jakieś praktyczne zastosowanie z tytułu interakcji.
wink

8

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

np. autoryzacja w sieci domowej gości na wifi wink ktoś się podpina dostajesz info i autoryzujesz go lub nie wink

9 (edytowany przez build000 2015-11-23 16:27:32)

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

dopytać jeszcze chciałem...
a jak z opóźnieniami w tej interakcji z tym botem  - występują jakieś ?

10

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

szybko odpowiada, sekunda może

11 (edytowany przez wabikboy 2015-12-19 13:27:50)

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

Mała uwaga odnośnie opcji "getUpdate"
W tej formie jak przedstawił @areq można wyświetlić tylko do 100 wiadomości

Aby można było odczytywać dalej trzeba dopisać zaraz po GetUpdates "?offset=xxxxx" i za xxxxx wstawić liczbę która wyświetla się przy ostatnim "update_id"

TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

12

Odp: HOWTO - https://telegram.org/ - wysyłanie widomości z cmdline

Witam,
Czy jest możliwość komunikacji telegramem w obie strony ale bez aplikacji klienta?
Do tej pory używam apki na smartfonie  z której wysyłam jakies dane a te odczytuje w skrypcie na drugim urządzeniu za pomocą curl
ale czy da się tak samo coś wysłać bez aplikacji np curl lub odpowiednio sformatowanym adresem http tak jak to się robi w drugą stronę

TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile