แแแแฅแกแแแแ แ แแแ แแฃแแแแแ แแแแแซแแ แแ แแแแฎแแ แชแแแแแแแแแ
แแ แแแแแแขแแ แ VK-แแก แแ แ-แแ แ แฏแแฃแคแจแ แแแ แแ แแแแแแแแแก แแแแ :
แแแแฎ, แแก แกแแแ แแแ แแ แแ แแก แฃแกแแคแ แแฎแ. แแแ แฉแแแแแ แแแแฌแแ แ แขแแแแแ แแแแก แแแขแ, แ แแแแแแช แแฎแแแแ แฉแแแ แแแแแ แแจแแแแ แแฆแแแก แแฅแขแแแแชแแแก แแ แซแแแแแแแก.
แแแแแแฌแงแแแขแ แแกแแแ แแแขแแก แแแฌแแ แ.
แแกแ แ แแ, แแแ แแแแ แ แแช แฃแแแ แแแแแแแแ แแ แแก แแแขแแก แจแแฅแแแ แขแแแแแ แแแแจแ.
- แซแแแแแจแ แแแแฃแแแแ แแแแแ แแจแก แกแแฎแแแแ @botfather
- แแแแญแแ แแ แแแฌแงแแแ แฆแแแแแก แแแ แแแแก แแแแแจแ
- แจแแแแแ แแแก แแฌแแ แ แแ แซแแแแแแก / newbot
แจแแแแแ แฉแแแ แแแแกแฃแฎแแแ 2 แแแ แขแแ แแแแฎแแแก:
- แแแ แแแแ แแแแฎแแ แแ แแก แจแแฅแแแแแ แแแขแแก แกแแฎแแแ. MyMikrotikROuter
- แแแแ แ แแแแฎแแ แแ แแก แจแแฅแแแแแ แแแขแแก แแแขแกแแฎแแแ (แฃแแแ แแแกแ แฃแแแแก แแแขแแ) MikrotikROuter_bot
แกแแแแกแฃแฎแแ, แฉแแแ แแแแแฆแแแ แฉแแแแ แแแขแแก แแแขแแแก, แฉแแแก แจแแแแฎแแแแแจแ แแก แแ แแก:
แแแแแแงแแแแ แแก แแแขแแแ HTTP API-แแ แฌแแแแแแกแแแแก: 265373548:AAFyGCqJCei9mvcxvXOWBfnjSt1p3sX1XH4
แจแแแแแ, แแฅแแแ แฃแแแ แแแแแแ แฉแแแแ แแแขแ แกแแฎแแแแก แซแแแแแจแ @MikrotikROuter_bot แแ แแแแญแแ แแ แแแฌแงแแแ แฆแแแแแก.
แแแแก แจแแแแแ, แแฅแแแ แฃแแแ แแแฎแกแแแ แแ แแฃแแแ แ แแ แจแแแงแแแแแ แจแแแแแแ แฎแแแ:
https://api.telegram.org/botXXXXXXXXXXXXXXXXXX/getUpdates
แกแแแแช XXXXXXXXXXXXXXXXXX แแ แแก แแฅแแแแ แแแขแแก แแแจแแแ.
แแแแฎแกแแแแ แจแแแแแแ แแแแ แแแก แแกแแแแกแ:
แแแกแแ แแแแฃแแแแ แจแแแแแ แขแแฅแกแขแก:
"แฉแแขแ":{"id":631290,
แแกแ แ แแ, แฉแแแ แแแแฅแแก แงแแแแ แกแแญแแ แ แแแคแแ แแแชแแ Mikrotik-แแกแแแแก แกแแ แแแขแแแแก แแแกแแฌแแ แแ, แแแ แซแแ:
แแแขแแก แแแขแแแ: 265373548:AAFyGCqJCei9mvcxvXOWBfnjSt1p3sX1XH4
แฉแแขแแก ID, แกแแแแช แแแ แฃแแแ แแแฌแแ แแก: 631290
แจแแกแแแแฌแแแแแแ แจแแแแแซแแแ แแ แแฃแแแ แแก แแแจแแแแแแ แแแแแแ แแ:
https://api.telegram.org/bot265373548:AAFyGCqJCei9mvcxvXOWBfnjSt1p3sX1XH4/sendmessage?chat_id=631290&text=test
แฃแแแ แแแแฆแแ แจแแแแแ:
แฉแแแแ แแแฎแแ แฎแแแฃแแแแแกแแแแก, แฉแแแ แแแฃแงแแแแแแแแ แแแแแแแขแแแ แแ แซแแแแแแแก แแแขแแกแแแแก:
แแแแแแแ แแแแแ แแจแ แกแแฎแแแแ @botfather
แจแแแแแ แฉแแแ แแฌแแ แ แแแก แแ แซแแแแแแก / setcommands
- แแแแแฎแแแก แ แแแแ แแแขแก
แฒฉแแแ แแฌแแ แ:
@MikrotikROuter_bot
แแแแแแขแแ แแ แซแแแแแแแ:
- helloworld< โ แกแแขแแกแขแ แจแแขแงแแแแแแแ แฉแแขแจแ 1
- แแแกแ แกแแแฃแจแแ-แกแแขแแกแขแ แจแแขแงแแแแแแแ แฉแแขแจแ 2
- wolmypc-แแแแฆแแแซแ แฉแแแ แแแแแแฃแขแแ แ
แแฎแแ, แแฃ แฉแแขแจแ แแแ แแคแแแ "/", แแฅแแแ แฃแแแ แแแแฆแแ:
แแฎแแ แแแแแแแแแ MikroTik-แแ.
RouterOS-แก แแฅแแก แแแแกแแแแก แแ แแแ แแแ ftp แแ http / https-แแก แกแแจแฃแแแแแแ แคแแแแแแแก แแแแแ แแแแกแแแแก, แแ แแแ แแแแก แแฌแแแแแ fetch, แ แแกแแช แฉแแแ แแแแแแแงแแแแแ.
แแแฎแกแแ แขแแ แแแแแแ แแ แจแแแงแแแแแ:
/tool fetch url="https://api.telegram.org/bot265373548:AAFyGCqJCei9mvcxvXOWBfnjSt1p3sX1XH4/sendmessage?chat_id=631290&text=test " keep-result=no
แแแฎแแแ แแแแแแแแแกแฌแแแแ MikroTik-แจแ, แแฅแแแ แแญแแ แแแแแ ""แแแจแแแก แแแฅแชแแแ"?' URL-แจแ.
แฃแแแ แแแแฆแแ แจแแแแแ:
แแฎแแ แแแแแ แแแแแแแแแ แกแแ แแแขแแแแ:
แแแแแ แฏแแแ แแกแแคแแแ
system script add name="helloworld" policy=read source={/tool fetch url="https://api.telegram.org/bot265373548:AAFyGCqJCei9mvcxvXOWBfnjSt1p3sX1XH4/sendmessage?chat_id=631290&text=Hello,world! " keep-result=no}
แแฃแจแแแแก
system script add name="itsworking" policy=read source={/tool fetch url="https://api.telegram.org/bot265373548:AAFyGCqJCei9mvcxvXOWBfnjSt1p3sX1XH4/sendmessage?chat_id=631290&text=Test OK, it's Working " keep-result=no}
wolmypc
system script add name="wolmypc" policy=read source="/tool wol mac=XX:XX:XX:XX:XX:XX interface=ifnamer
n/tool fetch url="https://api.telegram.org/boXXXXXXXXXXXXXXXXXXX?chat_id=631290&text=wol OK" keep-resul
t=no"
แแ แแแแแแแฌแงแแแ แแแฃแแแแแ แกแฌแแ แ Mac แแ แแแขแแ แคแแแกแแก แกแแฎแแแ, แแกแแแ bot-token แแ chat_id.
แแฎแแ แชแแขแแแ แแแแฎแกแแแ แ แแก แแแแแแแแ:
"helloworld" แกแชแแแแ แ แแแแแแแแก แจแแขแงแแแแแแแแก: "แแแแแ แฏแแแ, แกแแแงแแ แ!" แฉแแแแก แฉแแแจแ แแแขแแแ.
"itsworking" แกแแ แแแขแ แแแแแแแแก แจแแขแงแแแแแแแแก: "Test OK, It's Working!" แฉแแแแก แฉแแแจแ แแแขแแแ.
แแก แกแแ แแแขแแแ แกแแฉแแแแแแแแ แแแแแแแแกแแแแกแแ.
แแ แแแแแแแขแ "wolmypc" แกแแ แแแขแ, แ แแแแ แช แแ แ-แแ แแ แจแแกแแซแแ แแแแฎแแ แชแแแแแแ.
แกแแ แแแขแแก แจแแกแ แฃแแแแแก แจแแแแแ, แแแขแ แฉแแขแจแ แแแฌแแ แก "wol OK".
แกแแแแแแแแแแจแ, แแฅแแแ แจแแแแซแแแแ แแแฃแจแแแ แแแกแแแฃแขแฃแ แแ แแแแแกแแแแ แ แกแแ แแแขแ.
แจแแฅแแแแแ แแแแแแแแ:
Telegram.src
/system scheduler
add interval=30s name=Telegram on-event=":tool fetch url=("https://api.telegr
am.org/".$botID."/getUpdates") ;r
n:global content [/file get [/file find name=getUpdates] contents] ;r
n:global startLoc 0;r
n:global endLoc 0;r
nr
n:if ( [/file get [/file find name=getUpdates] size] > 50 ) do={r
nr
n:set startLoc [:find $content "update_id" $lastEnd ] ;r
n:set startLoc ( $startLoc + 11 ) ;r
n:local endLoc [:find $content "," $startLoc] ;r
n:local messageId ([:pick $content $startLoc $endLoc] + (1));r
n:put [$messageId] ;r
n:#log info message="updateID $messageId" ;r
nr
n:set startLoc [:find $content "text" $lastEnd ] ;r
n:set startLoc ( $startLoc + 7 ) ;r
n:local endLoc [:find $content "," ($startLoc)] ;r
n:set endLoc ( $endLoc - 1 ) ;r
n:local message [:pick $content ($startLoc + 2) $endLoc] ;r
n:put [$message] ;r
n:#log info message="message $message ";r
nr
n:set startLoc [:find $content "chat" $lastEnd ] ;r
n:set startLoc ( $startLoc + 12 ) ;r
n:local endLoc [:find $content "," $startLoc] ;r
n:local chatId ([:pick $content $startLoc $endLoc]);r
n:put [$chatId] ;r
n:#log info message="chatID $chatId ";r
nr
n:if (($chatId = $myChatID) and (:put [/system script find name=$messa
ge] != "")) do={r
n:system script run $message} else={:tool fetch url=("https://api.teleg
ram.org/".$botID."/sendmessage?chat_id=".$chatId."&text=I can't t
alk with you. ") keep-result=no} ;r
n:tool fetch url=("https://api.telegram.org/".$botID."/getUpdates?
offset=$messageId") keep-result=no; r
n} r
n" policy=
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon
start-date=nov/02/2010 start-time=00:00:00
add name=Telegram-startup on-event=":delay 5r
n:global botID "botXXXXXXXXXXXXXXXXXX" ;r
n:global myChatID "631290" ;r
n:global startLoc 0;r
n:global endLoc 0;r
n:tool fetch url=("https://api.telegram.org/".$botID."/getUpdates")
;" policy=
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon
start-time=startup
แฌแแแแแฎแแแแ แฎแแแแแแฃแแแแแ แแ แ แแขแแ, แแแแ แแ แกแแแฃแจแแ แกแแ แแแขแแแแ แแก แแ แแแแแแก แแแแแแแฃแ แแแแแชแแแแแก, แแแแแแขแ แกแแ แแแขแ แกแแกแขแแแแก แฉแแขแแแ แแแแกแแก.
Telegram-แแก แแแจแแแแ
:delay 5
:global botID "botXXXXXXXXXXXXXXXXXX" ; token bot
:global myChatID "xxxxxx" ; chat_id
:global startLoc 0;
:global endLoc 0;
:tool fetch url=("https://api.telegram.org/".$botID."/getUpdates") ;
แแแแแจแ
:tool fetch url=("https://api.telegram.org/".$botID."/getUpdates") ;
:global content [/file get [/file find name=getUpdates] contents] ;
:global startLoc 0;
:global endLoc 0;
:if ( [/file get [/file find name=getUpdates] size] > 50 ) do={
:set startLoc [:find $content "update_id" $lastEnd ] ;
:set startLoc ( $startLoc + 11 ) ;
:local endLoc [:find $content "," $startLoc] ;
:local messageId ([:pick $content $startLoc $endLoc] + (1));
:put [$messageId] ;
#:log info message="updateID $messageId" ;
:set startLoc [:find $content "text" $lastEnd ] ;
:set startLoc ( $startLoc + 7 ) ;
:local endLoc [:find $content "," ($startLoc)] ;
:set endLoc ( $endLoc - 1 ) ;
:local message [:pick $content ($startLoc + 2) $endLoc] ;
:put [$message] ;
#:log info message="message $message ";
:set startLoc [:find $content "chat" $lastEnd ] ;
:set startLoc ( $startLoc + 12 ) ;
:local endLoc [:find $content "," $startLoc] ;
:local chatId ([:pick $content $startLoc $endLoc]);
:put [$chatId] ;
#:log info message="chatID $chatId ";
:if (($chatId = $myChatID) and (:put [/system script find name=$message] != "")) do={
:system script run $message} else={:tool fetch url=("https://api.telegram.org/".$botID."/sendmessage?chat_id=".$chatId."&text=I can't talk with you. ") keep-result=no} ;
:tool fetch url=("https://api.telegram.org/".$botID."/getUpdates?offset=$messageId") keep-result=no;
}
แ แแแแ แแแแแแแก แแแแก แแฃแจแแแแ
แฉแแแแขแแแ แแแ แฉแแแแ "getUpdates" แจแแขแงแแแแแแแแแ แงแแแแ 30 แฌแแแจแ, แจแแแแแ แแแแแแแแแแแ แแแแก แแแกแแ แแแแแแ update_id (แจแแขแงแแแแแแแแก แแแแแ แ) แแ แขแแฅแกแขแ (แฉแแแแ แแฃแแแแแ) แแ chat_id . แแแแฃแแแกแฎแแแแแ, getUpdates แแฉแแแแแแก 1-แแแ 100 แจแแขแงแแแแแแแแแแ, แแแฎแแ แฎแแแฃแแแแแกแแแแก, แแ แซแแแแแแก แฌแแแแแฎแแแก แจแแแแแ, แฉแแแ แแจแแแ แจแแขแงแแแแแแแแก. Telegram api แแแแแแก, แ แแ แจแแขแงแแแแแแแแก แฌแแกแแแแแฎแแ แแญแแ แแแแแ แจแแขแงแแแแแแแแก แแแแแ แ + 1
/getUpdates?offset=update_id + 1
แงแแแแ แขแแกแขแแ แแแ Mikrotik rb915 RouterOS 6.37.1-แแ
แแฃ แแฅแแแ แแ แแแ แแฃแแแ แแแแแแแแแ แแแแ แแ แซแแแแแแก, แแกแแแ แงแแแแ แจแแกแ แฃแแแแแ แ แแแ แแแแแแ 30 แฌแแแแก แแแขแแ แแแแแ.
PS แแแแ แแแแแแแ แแแ แแ แแแแแแแแก แแแแแกแแแแก แแ แฉแแแก แแแแแแแ แแแแฅแกแแแแ แแก แกแชแแแแ แแแจแ แแแฎแแแ แแแแกแแแแก.
แแแขแแ แแขแฃแ แ
แแแแแฎแแแแ:
03:11:16
แแแฃแแฏแแแแกแแแฃแแ แกแแ แแแขแแแ:
แแแแแขแแแฃแแแ แฉแแแ chat_id-แแกแแแแก
แกแฃแแแแก แ แแ แแแแฌแแแแก, แแฃ แแแแแ แแแแแฌแแ แก แฉแแแแก แแแขแก, แฃแแแกแฃแฎแแแก: โแแแ แแแแแแแแแ แแแแแ. โ, แแแแแแแแฃแ แแ แแแแแแกแฃแฎแแแก, แแฃ แแก แแ แชแแแแก แแ แซแแแแแแก.
แแ แซแแแแแแก แจแแกแ แฃแแแแแก แจแแแแแ แแแขแ แแแแฃแฅแแแแก แฉแแขแก (แแฎแแแแ wolmypc แกแแ แแแขแ)
DUP
แแแแแแแแ
แแแแแฎแแแแ 08.12.2016
Telegram-แจแ, แ แแแแ แช แฉแแแก, แแแ แแแแแ แจแแชแแแแแก getUpdate-แแก โแแแแแแแแแแฅแแโ. แแฎแแ แแแแแแ แกแแ แแแขแจแ แแฅแแแ แฃแแแ แจแแแกแฌแแ แแ แจแแขแงแแแแแแแแก แแคแกแแขแ 2-แแแ 1-แแแ
แชแแแแแแแแแ
:local message [:pick $content ($startLoc + 2) $endLoc] ;
ะทะฐะผะตะฝะธัั ะฝะฐ :
:local message [:pick $content ($startLoc + 1) $endLoc] ;
แฌแงแแ แ: www.habr.com