LINE_Bot

LINEのBotを作りたい!!!

TwitterBotを開発したわけで、LINEのBotにも手を出そうかなと思ったわけです。

 こんなツイートをするこいつをLINEにも進出させたいと思って色々しました。

実は今年の初めの時点でLINE developersアカウントは取得していて、なかなか忙しくて触れてなかっただけです!

しかし、ReplyAPI(返信するためのシステム)を使うためにはSSL証明書が要るとわかったので(具体的にはWebHookのURLがセキュアじゃないといけないため)コスト0円では一方的な発言しかできないBotしか作れないことが分かった。まぁその辺はまた今度調べるとして、今回は、Botに"sample"と発言させるまでをやりました。

できるだけ、初心者にもこのサイトだけで解決できるように書いたつもり。

 

必要なもの(ハード)

  • サーバ(ここではRaspberryPi2 ModelBを使用)

必要なもの(ソフト)

  • Python2.x(注意:3系ではうまくいかなった)
  • line-bot-sdk-python

 

github.com

作業開始

LINE developersのアカウントを作成して、Channel Access Token と UserIDを取得し、メモっとく。

 

(Python2.xは使用できることを前提としてます。)

まずGitからSDKをクローンします。

$git clone https://github.com/line/line-bot-sdk-python.git

クローンしたフォルダの中に移動して、以下の3つを実行

$ mkdir lib
$ pip install -t lib flask
$ pip install -t lib line-bot-sdk

libフォルダができるので、ここの中にまた移動。

(つまりカレントディレクトリは\line-bot-sdk-python\lib\)

ここに、以下のコードを保存します。名前はtest.pyとしました。

 

 

import re
import requests

from linebot import LineBotApi
from linebot.models import TextSendMessage
from linebot.exceptions import LineBotApiError

Channel_Access_Token="XXXXX"
User_Id="XXXXX"
Line_Bot_Api=LineBotApi(Channel_Access_Token)

Line_Bot_Api.push_message(User_Id,TextSendMessage(text="sample"))

 

"XXXXX"にはメモっておいた2つを入力。

で、実行すると、

f:id:hxbdy541:20170904122215j:plain

できました。

記事にすると、こんなあっさりしてますが、これをできるようになるまで2日かかってるの...

 

 

参考文献

qiita.com