LINE Notifyは、LINEと外部のWebサービスやアプリを連携し、ユーザーが個別にカスタマイズした情報を受け取ることができる機能です。
そして、LINE Notify API Documentを利用することで、Webサービス、アプリケーション、IoTデバイスなどからLINEが提供する公式アカウント「LINE Notify」に通知を送信できます。

利用は無料なの?制限とかはないの?
Pythonでどのように自動化すればいいの?(サンプルプログラムも欲しい)

安心して!
LINE Notifyは一部制限はあるけど、無料で利用可能だよ。
本記事では、PythonとLINE Notify API Documentを利用したLINEの自動通知方法を解説していきます。
- LINE Notifyの使い方(LINE Notify API Dodument)
- Pythonを用いたLINE通知自動化方法
1. LINE Notifyの制限
無料でLINE Notifyを利用することは可能ですが、一定の利用制限があることに留意する必要があります。制限は下記になります。
- 通知回数の制限:1,000[回/時間]
- メッセージ長の制限:1,000[文字/投稿]
- 添付ファイルサイズの制限:1[MB/投稿]
有料プランも提供されており、有料プランでは通知回数の拡大や機能を利用することができます。

有料プランも提供されているけど、無料プランでほとんどの場合は事足りると思うよ!
事業活動などに利用する場合は有料プランを検討するのもあり!
2. Pythonを用いたLINE通知自動化
2.1. LINE Notifyを使うための準備
LINE Notify公式サイトよりトークンを発行します。

メールアドレス、パスワードを入力し、ログインします。

ログインしたら、マイページに進みます。

アクセストークンの発行(開発者向け)のトークンを発行するを実行します。

トークン名を入力します。
※トークン名とは発行するトークンのタイトルのようなものです。わかりやすく管理しやすい名前にすることをお勧めします。
通知を送信するトークルームを選択します。
※要は送信相手を選んでください。

発行したトークンが表示されます。
トークンはコピーして覚えておきましょう。
※このトークン(文字列)は送信相手の情報のようなものです。後のPythonプログラムで使用します。
これでLINE Notifyの準備は完了です。
2.2. Pythonプログラム解説
LINE Notify API Documentを利用し、PythonプログラムでLINE Notifyへ通知を送信します。
全体のプログラムは下記です。
import requests
import sys
line_notify_token = 'トークン'
line_notify_api = 'https://notify-api.line.me/api/notify'
# メイン関数.
def main():
send_line_image('メッセージ')
# LINEへメッセージ&画像を送信する関数.
def send_line_image(notification_message):
headers = {'Authorization': 'Bearer ' + 'line_notify_token'}
payload = {'message': notification_message}
files = {'imageFile': open("ファイル名", "rb")}
requests.post('https://notify-api.line.me/api/notify', headers = headers, data = payload, files = files)
if __name__ == "__main__":
main()
headers = {'Authorization': 'Bearer ' + 'トークン'}
payload = {'message': 'メッセージ'}
files = {'imageFile': open("ファイル名", "rb")}
requests.post('https://notify-api.line.me/api/notify', headers = headers, data = payload, files = files)
トークン | LINE Notifyで発行したトークン |
メッセージ | LINEで通知したい任意の文字列 |
ファイル名 | 添付したいファイルのファイル名 |
トークンに自身の発行したトークンを、メッセージとファイル名にテストメッセージと画像ファイルを指定し、実行し結果が下記になります。

LINE Notifyから自身のアカウン宛にメッセージ”Image Recv from pi”、プロフィール画像添付で通知が送られてきました。
正常に通知ができていることが確認できました!今回はRaspberry PiからPythonプログラムを実行しています。
3. まとめ
LINE Notifyはアイデア次第で可能性が広がるLINEの機能です。
例えば、カメラから撮像した画像を定期的に通知することで見守りカメラ相当のことができます。また、天気や温度、湿度の定期通知など身の回りの環境を定期的に知りたいときにプログラムを組んでおけば簡単に実現できます。
Pythonのプログラムもとても簡単で初心者の方でもハードルは低いと言えるでしょう。
これを期にIoTに振れてみてはいかがでしょうか?
コメント