Kogno adalah kerangka kerja sumber terbuka yang berjalan pada bahasa pemrograman Ruby untuk mengembangkan aplikasi percakapan.
Ini didasarkan pada arsitektur MVC dan sangat terinspirasi oleh Rails, jadi jika Anda pernah mengerjakan kerangka ini, Kogno akan sangat familiar bagi Anda.
Platform perpesanan berikut saat ini didukung: WhatsApp, Messenger dan Telegram, mempertahankan kode terpadu dalam satu aplikasi untuk semuanya.
Dokumentasi Lengkap
Anda dapat membaca dokumentasi lengkapnya di https://docs.kogno.io atau lanjutkan saja di sini.
$ gem install kogno
$ kogno new my_chatbot
my_chatbot
dan instal dependensinya:Pustaka pengembangan MySQL harus diinstal sebelumnya sebelum menjalankan perintah berikut.
$ 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
Untuk menerima webhook, Anda harus mengonfigurasi platform perpesanan:
- Konfigurasikan WhatsApp
- Konfigurasikan Telegram
- Konfigurasikan Messenger
Kode di bawah mewakili kelas Context
, yang setara dengan kelas Controller
di Ruby on Rails:
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
Dalam contoh di atas, MainContext
memiliki kemampuan untuk menangani skenario berikut:
intent "greeting"
: Pesan ucapan seperti "Halo" atau "Hai". Yang sebelumnya telah dibuat dan dilatih pada mesin NLP.postback"featured_products"
: Klik event pada tombol "Lihat Produk" yang telah dikirim sebagai balasan di blok sebelumnya dengan maksud "salam".keyword ["stop", "quit"]
: Khususnya dua kata kunci "stop" atau "quit".everything_else
: Pesan apa pun yang karakteristiknya tidak sesuai dengan kriteria eksekusi blok yang tercantum di atas.Untuk lebih memahami cara kerja blok dan melihat daftar lengkapnya, periksa tautan berikut https://docs.kogno.io/contexts/blocks.
Anda dapat berkontribusi banyak pada proyek ini dengan mengembangkan aplikasi percakapan dengan Kogno dan jika Anda menemukan bug, silakan laporkan.
Dan jika Anda memiliki minat yang sama seperti kami, datanglah dan buat kode bersama kami dengan memperbaiki bug, menambahkan lebih banyak integrasi, dan membuat lebih banyak fitur.
Kogno dirilis di bawah Lisensi MIT.
Pelajari Lebih Lanjut
Baca dokumentasi selengkapnya di http://docs.kogno.io.
Anda juga dapat mengunduh kode sumber aplikasi demo reservasi penerbangan yang ditulis dalam Kogno.