Raspberry Pi 起動時、【IPアドレス】をLineに通知

raspberry_pi

ディスプレイもキーボードも接続していないラズパイに、
外部PCからSSH接続(VNC、VSCodeなど)する際、
IPアドレスが変わっていて、ディスプレイを接続した経験はないでしょうか?

そんな時、ラズパイの電源を入れると、
ラズパイのIPアドレスを、Lineに通知してくれたら便利ですよね。

というわけで、
ラズパイの電源を入れると、IPアドレスをLIneに通知してみますね。

やることリスト

番号作業項目備考
IPアドレスをLineに送信
起動時にファイル実行

IPアドレスをLineに送信

LineからAccess Token取得に関しては、
以下記事「LineからAccess Token取得」の章を
参照ください。

Raspberry Pi を使って、喋った内容を【Lineへ通知】
今回は、ラズパイに接続したスピーカーに喋った内容を、Lineに送信していきます。使い方として、・子供が学校から帰って来た時の「ただいま」、を伝えることが出来る。・用事があった時、喋って用事を伝えることが出来る。スマホが使えなくても...

プログラム

以下の通り、ディレクトリとファイルを作成する。
この章では、以下赤字のファイルを修正する。

/home/pi/work/ip_line/
└line.py

line.py

以下、
“Your Access Token” の箇所に、
「LineからAccess Token取得」 で取得した Access Token の文字列を設定下さい。

# -*- coding: utf-8 -*-
import requests

import ipget


def line(message: str):
    url = "https://notify-api.line.me/api/notify"
    token = "Your Access Token"
    headers = {"Authorization": "Bearer " + token}

    params = {"message":  message}
    r = requests.post(url, headers=headers, params=params)
    print(r.text)


if __name__ == '__main__':
    ip_address = ipget.ipget()
    message = f"IP Address: {ip_address.ipaddr('wlan0')}"
    line(message)

実行

以下コマンドでプログラムを実行します。

python3 line.py

結果として、
Lineに「ラズパイのIPアドレス」が通知されれば成功です!

起動時にプログラム実行

ラズパイ起動時にプログラムを実行する為に、
/etc/rc.local ファイルに、
実行したいプログラムを書いていきます。

ただ、 それだけではラズパイ起動時に /etc/rc.local は実行されません。
ラズパイ起動時に /etc/rc.local を実行するには、
ラズパイのコンフィグ設定が必要になります。

起動時にプログラム実行

sudo nano /etc/rc.local

でファイルを開き、
ファイルの最後の行、

exit 0

の前に、以下を追加します。

/usr/bin/python3 /home/pi/work/ip_line/line.py &

コンフィグ設定

ラズパイ起動時に /etc/rc.local を実行する為に、
ラズパイのコンフィグ設定を行います。

以下コマンドでコンフィグ画面へ入ります。

sudo raspi-config
  • 「1 System Options」を選択。
  • 「S6 Network at Boot」を選択。
  • 「Would you like boot to wait until a network connection is established?」で、「はい」を選択。
  • 「Waiting for network on boot is enabled」で、「<了解>」を選択。

以上で設定は完了です。

実行

では、ラズパイを再起動してみて、
Lineに「ラズパイのIPアドレス」が通知されれば成功です!

最後に

如何だったでしょうか?
無事、ラズパイのIPアドレスは取得出来ましたか?

これが出来ると、
外部PCからラズパイにSSH接続出来ない時でも、
わざわざディスプレイを接続しなくても済みますね♪

少しでも皆さんのお役に立てたら嬉しいです。

以下記事では他にも色んな電子工作を作っています。
あなたが作りたいモノのヒントがあれば嬉しいです。

電子工作(Raspberry Pi でできること)
このサイトは、「モノづくりの楽しさをあなたに伝えたい」との思いで作っています。「難易度:☆☆☆」の章に、Raspberry Pi(マイコン) と Python(プログラミング言語)を使ったおもちゃの作り方を書いています。あ...

記事を更新するとTwitterでつぶやきます。
フォローしてもらうと、記事を書くモチベーションが上がります。
下のTwitterアイコンからフォローお願いします。

不明な点があればページTOPの「お問い合わせ」にてご連絡下さい。

もし一人で作るのが難しかったら、
一緒に作るサービスをしています。
お気軽に ページTOPの「お問い合わせ」にてご連絡下さい。

タイトルとURLをコピーしました