kogno
1.0.0
Kogno 是一個運行在 Ruby 程式語言上的開源框架,用於開發會話應用程式。
它基於 MVC 架構並受到 Rails 的強烈啟發,因此如果您曾經使用過這個框架,那麼 Kogno 會對您非常熟悉。
目前支援以下訊息平台:WhatsApp、Messenger 和 Telegram,並在單一應用程式中為所有這些平台維護統一的程式碼。
完整文檔
您可以在 https://docs.kogno.io 閱讀完整文件或直接在此處繼續。
$ gem install kogno
$ kogno new my_chatbot
my_chatbot
並安裝依賴項:在執行以下命令之前,必須預先安裝 MySQL 開發庫。
$ bundle install
config/database.yml
配置資料庫: adapter : mysql2
pool : 5
username : your_user_name
password : your_password
host : localhost
database : your_database_name
encoding : utf8mb4
collation : utf8mb4_unicode_ci
$ kogno install
$ kogno http start
為了接收 webhook,您必須設定訊息傳遞平台:
- 配置 WhatsApp
- 配置電報
- 配置 Messenger
下面的程式碼代表一個Context
類,它相當於 Ruby on Rails 中的Controller
類別:
class MainContext < Conversation
def blocks
intent "greeting" do
@reply . text "Hello!"
@reply . button (
"How can I help you today?" ,
[
{
title : "View Products" ,
payload : "featured_products"
} ,
{
title : "My Cart" ,
payload : "purchases/view_cart"
}
]
)
end
postback "featured_products" do
@reply . text "Alright."
@reply . template "products/featured" , title : "Here is a list of today's featured products."
end
keyword [ "stop" , "quit" ] do
@reply . text "Alright"
@reply . typing 2 . seconds
@reply . text "I'll stop writing you now.."
end
everything_else do
@reply . text "Sorry, but I don't understand what you said."
end
end
end
在上面的範例中, MainContext
有能力處理以下場景:
intent "greeting"
:問候訊息,例如「Hello」或「Hi」。這是之前在 NLP 引擎上創建和訓練的。postback"featured_products"
:在上一個意圖「問候」中作為回復發送的「檢視產品」按鈕上的點擊事件。keyword ["stop", "quit"]
:具體是兩個關鍵字「stop」或「quit」。everything_else
:其特徵與上面列出的區塊的執行標準不符的任何訊息。為了更好地了解區塊的工作原理並查看它們的完整列表,請檢查以下連結 https://docs.kogno.io/contexts/blocks。
您可以透過使用 Kogno 開發會話應用程式來為這個專案做出很多貢獻,如果您發現錯誤,請報告它。
如果您和我們一樣對此充滿熱情,請與我們一起編寫程式碼,修復錯誤、添加更多整合並創建更多功能。
Kogno 是根據 MIT 許可證發布的。
了解更多
請閱讀 http://docs.kogno.io 上的完整文件。
您也可以下載用 Kogno 編寫的航班預訂演示應用程式的原始程式碼。