チラ裏備忘録

情報整理

line-bot-sdkのメモ

GitHub - line/line-bot-sdk-python: LINE Messaging API SDK for Pythonline-bot-sdk-python/README.rst at master · line/line-bot-sdk-python · GitHubにあるサンプルプログラムの一部を自分用にメモ.

色々読み込み

# linebot.modelsから処理したいイベントをimport
from linebot.models import (
    MessageEvent, TextMessage, TextSendMessage,
)

# MessageEvent…メッセージを受け取った時に実行
@handler.add(MessageEvent, message=TextMessage)
def handle_message(event):
    line_bot_api.reply_message(
        event.reply_token,
        TextSendMessage(text=event.message.text))

@handler.add(MessageEvent, message=TextMessage)
の部分で,どのイベントが起きた時にどういった処理を実行するかを指定している(多分)
イベントには

  • MessageEvent
  • FollowEvent
  • UnfollowEvent
  • JoinEvent
  • LeaveEvent
  • MemberJoinedEvent
  • MemberLeftEvent
  • PostbackEvent
  • BeaconEvent
  • AccountLinkEvent

などがあるらしい.
line-bot-sdk-python/events.py at master · line/line-bot-sdk-python · GitHub
Messaging API reference | LINE Developers

サンプルプログラムの全容解説は以下のブログがわかりやすかった.
line-bot-sdk-pythonを使ってみた - 雑食日誌

オマケ

サンプルプログラム実行時(テキストメッセージを受け取った時)のeventの内容
Messaging APIリファレンス | LINE Developersより

{
  "replyToken": "nHuyWiB7yP5Zw52FIkcQobQuGDXCTA",
  "type": "message",
  "mode": "active",
  "timestamp": 1462629479859,
  "source": {
    "type": "user",
    "userId": "U4af4980629..."
  },
  "message": {
    "id": "325708",
    "type": "text",
    "text": "Hello, world!"
  }
}

event->message->text(受け取ったメッセージ)をそのまま返信することでオウム返ししている.