Pages - Menu

2021年4月5日 星期一

[軟體]telegram api使用

前言

上一篇寫到用flagger,建立webhook發送通知。
公司有在用的就skype跟 telegram,所以就…開始吧。

如果要玩telegram 的機器人的話,剛開始的申請方式也一樣。

但差別只在於,當使用者在telegram上面輸入訊息時,

必須要讓telegram轉送他的訊息到你的程式內然後去解析,再回覆。 

下面的作法跟 line notfiy差不多,都只是單純通知而已。


正文

  1. 首先你要有telegram帳號 XDDD
  2. 加入 @BotFather ,輸入指令 /newBot,開始命名,注意機器人名稱可以不用bot結尾,但@帳號最後一定是Bot結尾
(fig.1)
  1. 建立好了後,會有一組token,請不要隨意給人,因為只要有這組就能發送訊息出去了。
(fig.2)
  1. 到此已經完成一半了,再來是使用取得channel的id,先將channel的頻道設公開,並把機器人加入到channel裡面。
    這邊需要記得你的channel,不能跟其他人的重複,所以需要自己試試。
(fig.3)
ezioflaggernotfiy就是我的chatid,
然後組合一下api,送出去就能取得channel的id,請先將機器人加入到channel裡面。

https://api.telegram.org/bot<token>/sendMessage?chat_id=@<chatid>&text=Hello,world

<token> 在 step.3,前面記得加bot
<chatid> 在step.4 ,記得前面要加 @

送出去後,回傳的資料上面會顯示 chat.id,此時就能把channel 設成 private了。

(fig.4)
  1. 如果是公開的channel,就到第四步就結束了。
    如果是私人的話,將chatid改成 ,上面step.4拿到的 chat.id ,即可。
    不用再加@ 在chat_id前面了。此時所用的已是唯一的channel sn。
  https://api.telegram.org/bot1234:JMwL6qw/sendMessage\?chat_id\=-12345\&text\=hello,telegram
  1. 如果訊息太長,想要有明顯一點的訊息,可加上parse_mode=html
    並在字的前後加上<code>abc</code>,在電腦上看到的字會明顯許多。
(fig.5) 但在手機上的telegram,看不到此特效。


沒有留言:

張貼留言