Buat Chatbot Anda sendiri untuk Facebook dengan ChatComposeChatbots dapat menjadi produk luar biasa yang memungkinkan orang untuk membuat pengalaman baru, dari melaporkan berita hingga mengirimkan informasi dari dukungan pelanggan. Show
Facebook memungkinkan penggunanya untuk membuat chatbots untuk halaman Facebook mereka melalui platform Pengembang Facebook mereka. Pada artikel ini, kami akan menunjukkan kepada Anda bagaimana melakukannya. Bagian terbaik? Kami akan membutuhkan waktu kurang dari satu jam. Langkah-langkah untuk Membuat Chatbot di Facebook1. Mendaftar di Facebook DevelopersDaftar di Facebook Developers dan buat aplikasi baru. Anda akan memerlukan akun Facebook jadi jika Anda tidak membuatnya, buatlah. Setelah aplikasi dibuat, kami akan menambahkan produk Messenger. Karena chatbot akan berkomunikasi dengan ini berarti perlu untuk membuat beberapa konfigurasi. Klik Produk di bilah kiri dan kemudian pilih Messenger. 2. Hasilkan TokenUntuk mengaktifkan chatbot di messenger, kami memerlukan token. Token ini dihasilkan melalui aplikasi yang Anda buat di Facebook Developers, yang terkait dengan halaman Facebook. Jika Anda tidak memiliki halaman Facebook untuk layanan atau produk Anda, buatlah. ( Cara membuat halaman facebook ) Halaman Facebook ini diperlukan untuk menghasilkan token dan itu adalah tempat Anda dapat melihat dan mengaktifkan chatbots Anda. Untuk membuat token, buka bagian Token Akses dan tautkan halaman Anda ke aplikasi Anda. Kemudian klik pada menghasilkan token. 3. Dapatkan rute untuk menghubungkan Messenger ke ChatComposeUntuk menyelesaikan langkah ini, Anda harus memiliki akun ChatCompose yang aktif. Anda bisa mendaftar di sini . Setelah terdaftar, akses akun Anda dan klik Install> Integrations. Di bagian ini Anda akan menemukan informasi untuk membuat koneksi antara ChatCompose dan Facebook Messenger. Salin token Anda yang dihasilkan pada langkah 2 ke panel Chatcompose. Anda juga akan memerlukan frasa rahasia, untuk alasan keamanan dan agar Facebook memastikan bahwa Anda memiliki kendali atas koneksi. Masukkan token Facebook di "ACCESS_TOKEN" dan buat frasa keamanan di "VERIFY_TOKEN" . Simpan perubahan Anda. Di "ROUTE" Anda akan menemukan rute akun ChatCompose Anda, Anda perlu mengintegrasikan bot Anda ke Messenger. 4. Masukkan rute dan frasa rahasiaKembali ke Facebook Developers, di bagian webhooks dari Produk Messenger Anda, klik "Configure Webhooks". Di jendela sembulan kita akan menyalin lintasan langkah 3 dan frasa keamanan. Masukkan rute dan frasa "VERIFY_TOKEN" , lalu tekan Verifikasi dan Simpan. Sekarang tekan "Tambahkan Langganan" dan pilih: "messages", "messaging_postbacks", "message_deliveries", "messaging_pre_checkouts" . 5. Uji ituCatatan: Setelah menyimpan token Anda, Anda perlu mengatur Bot Facebook Anda ke "ON" di platform. Setiap kali Anda ingin menghentikan chatbot, alihkan saja ke "OFF". Anda dapat menemukan tombol di bagian Instal> Facebook. Kunjungi halaman Facebook Anda dan bicarakan dengan bot Anda untuk memeriksa apakah itu berfungsi dengan baik. Untuk mengirim pesan ke chatbot Anda harus menambahkan messenger ke halaman Anda, dan memasukkan tombol Kirim Pesan. Kirim pesan (Tombol Tes) ke halaman Anda untuk memeriksa tanggapan chatbot Anda. Komponen dan KeterbatasanAnda dapat menggunakan komponen gambar, tautan dan unduhan untuk menunjukkan media. Komponen html tidak dapat dimuat. Messenger bukan browser dan tidak dapat merender html. 6. Tinjauan aplikasiUntuk menjadikan bot publik, Anda perlu menambahkan permintaan untuk "pages_messaging" , lengkapi formulir dan kirim permintaan peninjauan ke tim Facebook. Persetujuan tidak boleh lebih dari 2 hari. 7. Konfigurasi MenuSetelah menyimpan kunci facebook Anda di ChatCompose, tombol baru akan muncul (Pengaturan). Tekan untuk mengatur Konfigurasi Menu awal Anda. Messenger dapat menampilkan menu tetap di mana pengguna Anda dapat memuat komponen atau jawaban (lihat Menu Tetap ). Tombol akses menu memungkinkan Anda memuat komponen dan skrip tertentu. Anda dapat menggunakannya untuk menunjukkan kebijakan privasi Anda atau tugas-tugas penting untuk bot Anda.
Fitur “messenger bots” Facebook bukanlah hal yang baru, dan banyak bot keren sudah ada. Namun, sumber daya tentang cara membuat bot Anda sendiri sangat langka, dan tidak ada penjelasan untuk orang-orang yang baru menggunakan Facebook Graph API. Messenger bot sekarang juga mengharuskan Anda untuk menggunakan URL panggilan balik webhook SSL aman (lebih lanjut tentang itu nanti), dan pengaturan SSL tidak untuk semua orang, dan juga membutuhkan biaya. Pada artikel ini, saya akan memandu Anda melalui seluruh proses pembuatan bot messenger Facebook sederhana, karena dokumentasi Facebook sendiri agak kurang dijelaskan. Kami akan menyiapkan aplikasi cloud yang menggunakan protokol https, kode bot di Node.js (yang merupakan javascript, bahasa sisi server), gunakan git untuk mendorong kode ke aplikasi cloud, dan mengujinya di Facebook Messenger. Setup BotAnda perlu Node diinstal di laptop Anda. Jika tidak, buka situs web Node untuk mengunduh dan menginstalnya. Setelah selesai, Anda dapat melanjutkan dengan pengaturan untuk bot. Ikuti langkah-langkah di bawah ini: 1. Luncurkan Terminal. 2. Anda memerlukan direktori terpisah untuk menyimpan kode Anda.
3. Selanjutnya, inisialisasi aplikasi Node.
4. Instal
paket
5. Di Finder, buka direktori " testbot " yang Anda buat, dan cari file bernama " package.json "; buka ini di editor seperti Sublime Text. 6. Dalam file ini, kita perlu menambahkan baris
7. Selanjutnya, buat file baru di Teks Sublime, dan masukkan kode berikut di dalamnya: [js] var express = butuhkan ('express'); app.use (bodyParser.urlencoded ({extended: false})); [/ js] Simpan file ini sebagai index.js Catatan: Di Baris 13, nilai 'hub.verify_token' ditetapkan sebagai ' testbot_verify_token', ingat nilai ini karena akan digunakan saat membuat webhook di Facebook. Buat Git RepositorySekarang kita telah mengatur penanganan panggilan balik bot kita, kita perlu mendorong kode ke Heroku. Untuk itu, kita perlu membuat repositori git di direktori kita. Catatan: "git" adalah sistem kontrol versi untuk file dan kode perangkat lunak. Anda dapat membaca lebih lanjut di Wikipedia. Membuat repositori git itu mudah, dan hanya membutuhkan beberapa perintah Terminal. Catatan: Pastikan Anda berada di dalam direktori " testbot " di Terminal. Anda dapat melakukan ini dengan mengetikkan perintah Ikuti langkah-langkah ini untuk membuat repositori git: 1. 2. 3. Setup HerokuBahkan sebelum kita masuk ke halaman pengembang Facebook, kita memerlukan URL panggilan balik yang dapat diajak bicara oleh Facebook. URL ini perlu menggunakan protokol https, yang berarti kita perlu menginstal sertifikat SSL di situs web kami; tapi, ini adalah panduan pemula untuk bot messenger Facebook, jadi jangan menyulitkan. Kami akan menggunakan Heroku untuk menyebarkan kode kami. Heroku memberi Anda https URL untuk aplikasi Anda dan memiliki paket gratis yang memenuhi tuntutan kami (sangat mendasar). Buka situs web Heroku dan daftarkan diri Anda. Catatan: Di bidang yang bertuliskan "Pilih Bahasa Pengembangan Utama Anda", gunakan "Saya menggunakan bahasa lain". Setelah selesai, instal Heroku toolbelt untuk OS Anda (Mac, untuk saya), dan instal. Ini akan memberi Anda akses ke Heroku di Terminal Anda (atau command prompt, di Windows). Selanjutnya, kita akan membuat aplikasi di Heroku, yang akan menampung seluruh kode untuk bot kita. Ikuti langkah-langkah di bawah ini: 1. Luncurkan Terminal 2. Ketikkan
3. Ketikkan
4. Sekarang Anda dapat mendorong
kode aplikasi Anda ke Heroku 5. Setelah ini selesai, aplikasi Anda pada dasarnya hidup, dan Anda dapat mengunjungi tautan di browser Anda untuk memeriksa apakah semuanya berfungsi dengan baik. Itu harus membuka halaman web yang mengatakan " Ini adalah TestBot Server ". Pengaturan FacebookSaatnya untuk menghubungkan bot kami ke Facebook! Anda perlu membuat Halaman Facebook baru atau menggunakan yang sudah ada yang Anda miliki. Saya akan menunjukkan cara melanjutkan dengan membuat Halaman Facebook baru. 1. Buka Facebook dan buat halaman baru.
2. Langkah selanjutnya yang diperlihatkan Facebook adalah opsional, dan dapat dilewati. 3. Selanjutnya, kunjungi Situs Web Pengembang Facebook.
4. Isi rincian untuk Nama Aplikasi Anda dan alamat email kontak.
5. Anda akan dibawa ke dasbor untuk aplikasi Anda. Di bilah sisi, navigasikan ke " + Tambahkan Produk " dan pilih " Messenger " dengan mengklik tombol " Memulai ". 6. Pilih " Atur Webhooks ". 7. Isi bidang yang diperlukan, ganti “Callback URL” dengan URL aplikasi Heroku, Verifikasi Token dengan token yang digunakan dalam file index.js, dan pilih Bidang Langganan berikut:
Catatan: Pastikan Anda menambahkan " / webhook " ke URL Panggilan Balik sehingga index.js menjalankan fungsi yang diperlukan ketika Facebook mencoba untuk melakukan ping pada URL, itu dapat memverifikasi "Verifikasi Token". 8. Klik " Verifikasi dan Simpan ". 9. Di bagian “ Pembuatan Token ”, klik “ Pilih Halaman ” dan pilih halaman yang Anda buat sebelumnya. Ini akan menghasilkan " Token Akses Halaman ", simpan di suatu tempat; Anda akan membutuhkannya nanti. 10. Selanjutnya, Anda harus membuat kueri POST ke aplikasi Anda, menggunakan Token Akses Halaman yang dihasilkan pada langkah terakhir. Ini dapat dengan mudah dilakukan di Terminal. Cukup jalankan perintah berikut, ganti PAGE_ACCESS_TOKEN dengan Token Akses Laman yang Anda buat . curl -X POST “//graph.facebook.com/v2.6/me/subscribed_apps?access_token=PAGE_ACCESS_TOKEN” Anda harus menerima respons " sukses " di Terminal. Lebih Banyak Pengaturan HerokuYa, kita belum selesai. Tidak hampir. 1. Pergi ke situs web Heroku dan masuk dengan ID email Anda. 2. Temukan aplikasi Anda di "dasbor" dan klik di atasnya. 3. Navigasikan ke tab Pengaturan. 4. Klik pada " Reveal Config Vars " 5. Tambahkan PAGE_ACCESS_TOKEN sebagai " config var ", dan klik " Tambah ". Menyandikan Bot yang SebenarnyaSekarang setelah kita selesai dengan pekerjaan kasar, kita dapat fokus pada apa yang benar-benar penting: membuat bot merespons pesan. Sebagai permulaan, kami hanya akan merancang bot yang hanya menggemakan pesan yang diterimanya. Ternyata, tugas sederhana ini membutuhkan sedikit kode untuk berfungsi. 1. Mengkode Pendengar PesanSebelum bot dapat mengulangi pesan, ia harus dapat mendengarkan pesan. Ayo lakukan itu dulu. Dalam file index.js, tambahkan kode berikut: [js] app.post ('/ webhook', function (req, res) { [/ js] Apa fungsi ini, apakah memeriksa pesan yang diterima, dan kemudian memeriksa apakah ada teks dalam pesan. Jika ia menemukan teks dalam pesan yang diterima, ia memanggil fungsi sendMessage (ditampilkan nanti), meneruskan ID pengirim dan teks untuk dikirim kembali. Penting untuk memahami nilai-nilai berikut dan apa artinya:
2. Mengkode Fungsi sendMessageMari kode fungsi "sendMessage", sekarang. [js] fungsi sendMessage (recipientId, message) { [/ js] Fungsi "sendMessage" mengambil dua parameter:
ReceiverId diperlukan agar pesan dapat dialamatkan kepada pengguna yang benar. Pesan adalah teks aktual yang akan dikirim dalam respons. 3. Mendorong Perubahan ke HerokuJika Anda telah menyelesaikan langkah-langkah di atas, bot Anda harus dapat mengulang kembali teks yang diterima. Tapi pertama-tama, Anda harus mendorong perubahan ke aplikasi yang dihosting di Heroku. Untuk melakukan ini, ikuti langkah-langkah yang diberikan di bawah ini: 1. Luncurkan Terminal. 2. Ubah
direktori ke direktori testbot Anda 3. Lakukan langkah-langkah berikut:
4. Sekarang kirim pesan ke halaman Anda, dan bot akan mengulangi pesan itu kembali kepada Anda. Respons Bersyarat alias Membuat Bot Lebih CerdasKami dapat menggunakan pencocokan teks untuk memungkinkan bot messenger Facebook kami merespon sesuai dengan kata kunci khusus tertentu. Untuk mencapai ini, kita perlu menambahkan fungsi lain. Saya menamakannya "conditionalResponses", tetapi Anda dapat memilih nama apa pun yang Anda inginkan. 1. Mengkode Fungsi ConditionalResponses[js] function conditionalResponses (recipientId, text) { var what = text.match (/ what / gi); // periksa apakah string teks berisi kata "apa"; abaikan case // jika teks berisi "apa" dan "beebom", lakukan ini: if (what! = null &&; Gadget-Info.com! = null) { // jika teks berisi "siapa" dan "Anda", lakukan ini: // jika tidak ada yang cocok, kembalikan false untuk melanjutkan eksekusi fungsi dalam. [/ js] Dalam baris 4 hingga 7, kami telah menetapkan variabel tergantung pada pencocokan string yang diterima dengan kata-kata tertentu. Bagian terbaik tentang menggunakan "text.match ()" adalah ia menggunakan Ekspresi Reguler (biasanya disebut regex, baca lebih lanjut di sini.). Ini baik untuk kita, karena ini berarti bahwa selama bahkan bagian dari kata dalam teks yang diterima cocok dengan salah satu kata yang kita sebutkan di text.match (), variabel tidak akan menjadi nol. Ini berarti, bahwa jika pesan yang diterima adalah "Apa Beebom?", "Var apa" dan "var beebom" tidak akan menjadi nol, karena kata "Apa" berisi kata "apa". Jadi kita diselamatkan dari membuat pernyataan tambahan untuk setiap variasi di mana seseorang mungkin mengatakan "Apa". 2. Mengedit Pendengar PesanKami juga perlu mengedit Pendengar Pesan yang kami kodekan, untuk memastikan bahwa ia mencoba mencocokkan teks yang diterima dengan fungsi "conditionalResponses" juga. [js] app.post ('/ webhook', function (req, res) { //
pertama-tama coba periksa apakah pesan yang diterima memenuhi syarat untuk respons bersyarat. // jika tidak, gema pesan yang diterima kembali ke pengirim. [/ js] Perubahan pendengar mungkin tidak terlihat sangat drastis, tetapi pengaruhnya jelas. Sekarang, pendengar pertama-tama mencoba merespons dengan respons bersyarat, dan jika tidak ada kondisi yang valid untuk pesan yang diterima, itu hanya menggemakan pesan kembali ke pengguna. 3. Mendorong Perubahan ke HerokuSebelum Anda dapat mencoba fitur-fitur baru, Anda harus mendorong kode yang diperbarui ke aplikasi yang dihosting di Heroku. Ikuti langkah-langkah di bawah ini untuk melakukan ini: 1. Luncurkan Terminal. 2. Ubah direktori ke direktori testbot Anda 3. Lakukan langkah-langkah berikut:
4. Sekarang kirim pesan ke halaman Anda, dan bot akan mengulangi pesan itu kembali kepada Anda. Lebih Banyak FungsiBot kami sekarang merespons serangkaian kecil perintah dalam respons yang bagus dan terstruktur dengan baik. Tapi itu masih tidak terlalu berguna. Mari kita buat beberapa perubahan pada kode untuk menjadikan bot kita perangkat lunak yang lebih " fungsional ". Kami akan memperbaiki banyak fungsi, dan menambahkan beberapa lagi, jadi bersemangatlah. 1. Mengedit Pendengar PesanPendengar pesan kami, pada tahap ini, berfungsi dengan baik. Namun, itu tidak diformat dengan sangat baik dan jika kita terus meningkatkan pernyataan bersarang jika menambahkan " pemeriksaan kondisi " tambahan, itu akan dengan cepat menjadi jelek untuk dilihat, sulit dipahami dan lebih lambat dalam eksekusi. Kami tidak menginginkan itu, sekarang, kan? Mari kita lakukan beberapa perubahan. Catatan: Ada satu baris kode di pendengar pesan yang bertuliskan "res.sendStatus (200)", baris ini mengirimkan kode status 200 ke Facebook, memberi tahu bahwa fungsi tersebut berhasil dijalankan. Menurut dokumentasi Facebook, Facebook menunggu maksimal 20 detik untuk menerima status 200, sebelum memutuskan bahwa pesan tidak melewati dan menghentikan pelaksanaan kode. Pendengar pesan baru kami terlihat seperti ini. Kami menggunakan perintah " res.sendStatus (200) " untuk menghentikan eksekusi fungsi segera setelah suatu kondisi dicocokkan dan dieksekusi. [js] app.post
('/ webhook', function (req, res) { // pertama periksa teks pesan terhadap kondisi introResponse // karena tidak ada nama yang lebih baik, saya menyebut newResponse ini: p; periksa ini selanjutnya // selain itu, gema kembali pesan aslinya [/ js] 2. Pengodean Fungsi Respons baruPendengar pesan kami sekarang memeriksa teks pesan terhadap serangkaian kondisi di "newResponse" juga, tetapi pertama-tama, kita perlu kode fungsi newResponse. Kami akan menggunakan fungsi ini untuk memeriksa apakah pengguna meminta saran artikel dari situs Gadget-Info.com, mencari istilah permintaan di situs web, dan menyajikan tautan ke pengguna. Sekali lagi, kami akan menggunakan ekspresi reguler untuk mencocokkan teks dengan kata kunci tertentu. [js] function newResponse (recipientId, text) { // periksa apakah pengguna meminta saran artikel sama sekali [/ js] Kami menggunakan fungsi khusus lain yang disebut "sendButtonMessage" untuk mengirim pesan seandainya pengguna meminta saran artikel. Kami akan membuat ini selanjutnya. 3. Mengkode Fungsi sendButtonMessageFungsi sendButtonMessage mengambil dua parameter, ID penerima dan permintaan. ID penerima digunakan untuk mengidentifikasi pengguna kepada siapa pesan harus dikirim, dan permintaan digunakan untuk mengidentifikasi topik di mana pengguna menginginkan saran artikel. [js] fungsi sendButtonMessage (recipientId, query) { callSendAPI (messageData); [/ js] Sekali lagi, kami menggunakan fungsi khusus; kali ini untuk mengirim pesan terakhir, dengan tautan artikel, ke pengguna. Fungsi ini, dalam banyak hal, mirip dengan fungsi "sendMessage" yang kami kodekan sebelumnya, tetapi lebih umum dalam cara mengambil data pesan, yang sesuai dengan kami, karena data pesan kami berubah dengan kueri yang dibuat pengguna. 4. Mengkode Fungsi callSendAPIFungsi "callSendAPI" mengambil parameter tunggal, "messageData" . Parameter ini berisi seluruh data pesan, yang diformat dengan benar sesuai dengan aturan Facebook, sehingga messenger dapat menampilkannya dengan benar kepada pengguna. [js] function callSendAPI (messageData) { }, fungsi (kesalahan, respons, isi) { console.log ("Berhasil mengirim pesan umum dengan id% s ke penerima% s", [/ js] 5. Mendorong Perubahan ke HerokuKami berada pada langkah terakhir untuk menjadikan bot kami yang ditingkatkan langsung. Kami hanya perlu mendorong semua perubahan kode ke Heroku. Prosesnya sama seperti sebelumnya, dan dijelaskan di bawah ini: 1. Luncurkan Terminal. 2. Ubah direktori ke direktori testbot . 3. Lakukan hal berikut:
4. Sekarang kirim pesan seperti "Sarankan artikel di Android", atau "Beebom, sarankan saya artikel apa pun tentang topik Android"; dan bot akan mengirim pesan yang diformat dengan baik dengan tautan yang dapat Anda ketuk untuk membuka artikel yang terkait dengan permintaan Anda. Menggali lebih dalamSekarang setelah Anda tahu cara memulai mengembangkan bot messenger Facebook, baca dokumentasi Facebook tentang cara mengembangkan bot messenger Facebook. Meskipun dokumentasinya tidak bagus untuk pemula, Anda bukan pemula lagi. Anda harus memeriksa dokumentasi resmi dan mencoba mencari cara untuk membuat bot Anda lebih pintar. Pemikat: Anda dapat mengirim pesan dengan gambar dan tombol juga! Dimungkinkan juga untuk menggunakan layanan seperti Wit.ai dan Api.ai untuk mengkode bot Anda dan kemudian mengintegrasikannya dengan Facebook, tetapi dalam upaya lemah saya untuk menggunakan layanan tersebut, Wit.ai tidak bekerja dengan baik, dan Api.ai memiliki kurva belajar yang tajam untuk pemula. Pernahkah Anda mengembangkan bot messenger Facebook? Jika sudah, bagaimana Anda bisa mengembangkannya, dan apa yang bisa ia lakukan? Apakah Anda menggunakan layanan seperti Wit.ai dan Api.ai untuk membuat bot Anda? Jika Anda belum pernah mencoba mengkode bot, buka dan kembangkan bot messenger Facebook Anda sendiri, buat bot itu lebih pintar dan lebih baik, dan beri tahu kami tentang pengalaman Anda dalam komentar di bawah. |