Skip to content
a chatbot framework based on rails
Ruby HTML JavaScript CSS
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app fix: can't get platform params from kamigo Sep 29, 2019
bin git init Jul 20, 2019
config first version Jul 21, 2019
doc add image Aug 18, 2019
lib fix: can't get platform params from kamigo Sep 29, 2019
test git init Jul 20, 2019
.gitignore extract event parser Sep 10, 2019
Gemfile git init Jul 20, 2019
Gemfile.lock extract event parser Sep 10, 2019
MIT-LICENSE git init Jul 20, 2019
README.md add image Aug 18, 2019
Rakefile git init Jul 20, 2019
kamigo.gemspec support postback event Sep 22, 2019

README.md

Kamigo 簡介

Kamigo 是一個基於 Rails 的 Chatbot MVC Framework。

Kamigo 讓你開發 Chatbot 就跟開發網站一樣容易,甚至可以同時開發網站以及 Chatbot 介面,共用 Controller 和 Model,只需要針對 Chatbot 實作 View。

Kamigo 提供了重要的 generator,讓你開發聊天機器人時可以快的跟飛一樣。

以下將說明如何使用 Kamigo 來製作 Todo 的教學文件。

建立新的 rails 專案

以下指令直接複製全部,直接貼到 bash 執行即可。

# 建立新專案
rails new kamigo_demo
# 進入專案
cd kamigo_demo
# 安裝套件
bundle add kamigo
bundle add dotenv-rails
# 新增 resource controller
rails g scaffold todo name desc
rails db:create
rails db:migrate

設定首頁

在 config/routes.rb 當中加入首頁設定:

root to: "todos#index"

安裝 js 套件

app/assets/javascripts/application.js 當中加入一行程式碼:

//= require kamiliff

設定聊天機器人環境變數

本文假設你已經有一個自己的聊天機器人,請在專案根目錄下新增一個 .env 檔並且填入以下內容:

LINE_CHANNEL_SECRET=這裡填入你的 LINE_CHANNEL_SECRET
LINE_CHANNEL_TOKEN=這裡填入你的 LINE_CHANNEL_TOKEN
LIFF_COMPACT=這裡填入你的 LIFF_COMPACT
LIFF_TALL=這裡填入你的 LIFF_TALL
LIFF_FULL=這裡填入你的 LIFF_FULL

你可以在你的 LINE 管理後台找到 LINE_CHANNEL_SECRET 和 LINE_CHANNEL_TOKEN。

而 LIFF_COMPACT、LIFF_TALL 和 LIFF_FULL 你必須到 LINE 的後台中的 Liff 分頁去新增,詳細說明請參考 kamiliff_demo

設定聊天機器人 webhook url

請將以下網址填入 LINE Bot 的 webhook url 欄位中:

https://你的網域/line

至此串接完成。

實際使用

Kamigo 預設使用基本的語意理解模型,會將使用者輸入視為在瀏覽器網址上輸入文字,並且以 LINE Flex Message 來顯示對應的結果。

只要和你的聊天機器人說 /,就能看見首頁的樣子。

使用 kamigo 製作的聊天機器人

詳細的說明文件

計畫

  • 提供多種語意理解模型串接
  • 網站使用者與聊天機器人使用者綁定
  • 支援 Telegram
  • 支援 Facebook Messenger

License

The gem is available as open source under the terms of the MIT License.

You can’t perform that action at this time.