最短の準備時間でPythonのスクリプトからスマホとかApple watchのTelegramに通知を飛ばす方法
Telegramを使います。(LINEは宗教上の理由から使えません)
Telegramの@BotFatherにJOINして、ボット名を決めると、そのボットのためトークンを返してくれます。
トークンは、DDDDDDDDDD:CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC(Dは十進数で、Cは文字)のような文字列です。これを以下は[token]とします。
次に@RawDataBotなどを使って、自分のチャットIDを調べます。9桁の十進数でした。これを以下は[chat_id]とします。
以上の情報を使って、https://api.telegram.org/bot[token]/sendmessage?chat_id=[chat_id]&text=[text]をGETすると、ほぼノーウェイトで[text]が自分のチャットに送られます。知った時は、「え、こんな簡単でいいの?」と思いました。
追記:最近気づいたのですが、この方法はクライアントからボットをシークレットチャットの相手に追加しておかないとダメです。間違えてボット相手のチャットを削除してしまうと、メッセージを受け取れなくなるので注意してください。
これを関数にするとこんな感じです。
def telegram_send(message):
tele_url = "https://api.telegram.org/"
tele_token = "[token]"
tele_botId = "bot" + tele_token
my_chat_id = "[chat_id]"
params = {"chat_id" : my_chat_id, "text" : message}
r = requests.get(tele_url + tele_botId + "/sendmessage", params).json()
return(r)
telegram_send("ぷに")
簡単な仕組みだけど、どう通知したらいいか悩んでいる人の一助に共有します。
以下、投げ銭エリアで何も書いてないです。
この記事が気に入ったらサポートをしてみませんか?