物事を極めるために「継続は力なり」よく言われますが、慣れないこと・得意でないことだとつい逃避行動に走ってしまうのが人の性。でも上手く仕組み化さえできれば用を足すかの如く案外習慣化するものです。私の場合、「今年こそは資産運用に力を入れたい」と年初の抱負で毎年語るのですが、結局1年経っても資産は微増です。そこでまずは簡単なことから習慣化してみようということで「注目している銘柄の株価を毎日確認すること」だけやってみたいと思います。それを実現するために、毎日確実に利用するSNSであるLINEで通知されるようにすれば、アプリアイコン上の「通知バッジ」は消さないと気が済まない自らの性に合うと思ったのでその仕組みのベースをまずは作ってみます。※株価情報取得との組み合わせはまた別途まとめます。
今回は下の2つのステップで仕組みを作りたいと思います。
「LINE Messaging API」とはLINEが提供するAPIで、メッセージ送付の自動化等ができるものです。これの利用にあたっては「LINE Developers」への登録が必要となります。
LINE Developers登録には既存のLINEアカウント・ビジネスアカウントからも作成可能でメールアドレスさえあれば新規作成も可能なようです。ただし、ビジネスアカウントで作成すると後ほど出てきますが"あなたのユーザーID"が非表示となり今回やりたいことができなくなってしまうため、今回は既存のLINEアカウントで作成しましょう。諸々情報入力して登録が完了したら、ここから"今すぐはじめよう"でMessaging APIを利用するためのチャネルを作成します。
チャネル作成についても基本的には利用情報を入力するだけですが、以下2点については一応仕組みを理解しておきましょう。
詳しくは公式ドキュメントにも記載があります。
続いてAPIを利用するためのアクセストークンを発行します。
上のセクションでチャネル作成は完了したと思いますが、そのチャネル内に"Messaging API設定"タブがあるのでこれをクリックし、画面最下部までスクロールします。すると(上の画像では隠れていますが)"チャネルアクセストークン"の"発行"というボタンがあるのでこれをクリックするとアクセストークンが発行できるので、安全な場所に一度保管しておいてください。
続いて、同チャネル内"Messaging API設定"タブの横に"チャネル基本設定"というタブがあるので同様に画面最下部までスクロールすると、下から3番目あたりに"あなたのユーザーID"という項目があります。こちらもコピーだけして安全な場所に保管しておいてください。
この時点でLINEアカウント(チャネル)は既に作成されていますが、Python側からメッセージを送付するには既存のLINEアプリ側からLINEアカウント(チャネル)を友だち登録する必要があります。再度"Messaging API設定"タブ側に戻るとQRコードがあるのでこれをスマホで読み取って友だち登録しておきます。
これでLINE Messaging API側の準備が完了しました。続いてPython側で実装していきます。
実装にあたり、公式ライブラリが公開されているので、以下の通りインストールして効率よく実装していきましょう。
pip install line-bot-sdk
※なおPython以外の言語でも同様にライブラリが用意されているようです。
インストールが完了したら、以下の通りコードを書いていきます。
アクセストークン発行時に控えておいた、"チャネルアクセストークン"と"あなたのユーザーID"を環境変数として設定しPythonファイルから呼び出せるようにしておきます。
特別難しいことはしていませんが、linebot
モジュールからLineBotApi
をインポート、linebot.models
からTextSendMessage
をインポートします。それぞれ環境変数から値を呼び出して、メッセージをプッシュしてあげることでスマホの既存のLINEアプリ側にメッセージが送信されます。
これでPython側からメッセージを送付する仕組みを作ることができました。"Messaging API"タブを確認すると他にも"応答メッセージ"や"あいさつメッセージ"があるのでこれらを設定することでより双方向性の高いコミュニケーションが取れるようになると思います。また、このコードをHeroku等にアップロードすると、Cron設定も簡単にできるため定期的にメッセージ送付が可能になります。いずれも今後まとめようと思います。
よろしければこちらの記事も参考にしてみてください。
Loading...