Skip to content

Rule-based Line chatbot demo, constructed with django.

Notifications You must be signed in to change notification settings

zake7749/Line-Chatbot

Repository files navigation

Line 天氣應答機器人

result

設計方式

聊天機器人

  • 如果對話中包含「天氣」,則回覆目前臺南市的天氣
  • 如果對話中包含「天氣」且存在臺灣縣市名,則回傳目前該縣市之天氣
    • 縣市名請用繁體表示,如「臺南市」而非「台南市」
  • 否則回傳與輸入相同的對話

天氣資料來源為中央氣象局的開放資料平台,支援 RESTful API 與 XML 兩種爬取方式,可以 python3 weatherbot.py 測試聊天機器人的運作。

Django Server 設計

請參考 [Bot] Line Echo Bot on Django

環境配置

本專案採用 python-3.5.2 開發

套件需求

Django==1.10.4
future==0.16.0
gunicorn==19.6.0
line-bot-sdk==1.0.2
requests==2.12.3

環境變數

本專案一共會使用到四個環境變數

設定方式

export SECRET_KEY='Your django secret key'
export LINE_CHANNEL_ACCESS_TOKEN='Your line channel access token'
export LINE_CHANNEL_SECRET='Your line channel secret'
export WEATHER_AUTHORIZATION_KEY='Your authorization key of opendata platform'

Django 配置

Django Project: line_bot
└──app : line_weather_bot

Line 機器人的 Webhook URL 連結設定為:https://your.server.ip/line_bot/callback/

Heroku 配置

參考聊天機器人佈署:[Bot] Deploy LineBot on Heroku

  • 其中 Heroku 環境變數的設定要稍做修正,更改為 key=value
  • 請注意,在運行前務必於 Heroku 完成設定方式中 4 個環境變數的配置

About

Rule-based Line chatbot demo, constructed with django.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published