
Flows adalah mesin otomatisasi drag-and-drop yang kuat untuk membuat alur komunikasi. Awalnya kami menganggapnya sebagai solusi tanpa kode, tetapi kami menemukan banyak pengguna dapat mendapatkan perilaku yang sangat kuat dengan menulis beberapa kode untuk kasus penggunaan spesifik. Potongan kode ini dapat berada di dalam Flow Builder, atau dapat berupa fungsi cloud pihak ketiga seperti fungsi AWS Lambda atau Google Cloud Functions.
Ini adalah demonstrasi sederhana menggunakan GoogleCloud Functions dan Flows untuk melakukan pengenalan gambar pada gambar yang dikirim di Telegram.
Flows dan Beyond
Sebagai pengembang Flows, saya sering memikirkan siapa pengguna kami, mengapa mereka menggunakan Flows, dan apa yang mereka butuhkan untuk mencapai tujuan mereka; dan kemudian, fitur mana yang perlu kami terapkan untuk melayani pengguna tersebut dengan sebaik-baiknya.
Flows adalah mesin otomatisasi drag-and-drop yang kuat untuk membuat alur komunikasi. Kami awalnya menganggapnya sebagai solusi tanpa kode, tetapi kami menemukan banyak pengguna dapat memiliki perilaku yang sangat kuat dengan menulis beberapa kode untuk penggunaan tertentu. Misalnya, Anda dapat membuat alur yang secara otomatis menghasilkan prospek dan kasus di Salesforce berdasarkan interaksi pelanggan di berbagai saluran. Potongan kode ini dapat berada di dalam Flows, atau dapat berupa fungsi cloud pihak ketiga seperti fungsi AWS Lambda atau Google Cloud Functions.
Kasus penggunaan menarik: Image Recognition
Untuk contoh singkat dan lucu, saya akan menunjukkan cara mengimplementasikan aplikasi yang mengenali hot dog. Kami akan mengatur alur di Flows, yang akan menerima gambar dari pengguna dan memutuskan, apakah mereka mengirim hotdog atau tidak.
Bagi banyak pelanggan kami, jenis pengenalan gambar ini bisa sangat kuat. Bayangkan Anda menjalankan layanan pengiriman dan Anda ingin memverifikasi pengiriman yang sukses secara otomatis. Mirip dengan apa yang akan saya tunjukkan, Anda dapat menggunakan data lokasi, foto paket, dan bahkan tanda tangan penerima untuk membuat alur verifikasi di dalam Flows.
Sebuah rencana untuk sukses
Menyiapkan Google Cloud Function
Pertama, kita perlu menyiapkan fungsi cloud. Untuk memulai dengan cepat, ikuti tutorial memulai cepat Cloud Functions Google. Sebagai ‘Trigger’ pilih pemicu HTTP, lingkungan eksekusi: Node.js 10, dan di bidang kode sumber masukkan potongan kode. Ini adalah kode sederhana, yang memeriksa apakah permintaan mengandung kode JSON dan menjawab ya atau tidak.

Selanjutnya, Anda perlu menerapkan fungsi ini. Untuk menguji di dalam Google Cloud Platform, ikuti langkah-langkah dari tutorial.
Untuk menguji dari browser Anda, buka URL berikut dengan memasukkan alamat spesifik untuk fungsi Anda:
https://your-function-address.cloudfunctions.net/HotDogOrNot/?url=hello
harus mengembalikan {“isHotDog”: true} dan alamat https://your-function-address.cloudfunctions.net/HotDogOrNot
harus mengembalikan {“isHotDog”: false}.
Kerja bagus! Anda telah menyiapkan fungsi cloud Google. Sekarang kita perlu membuat fungsi cloud kita lebih pintar.
Menyiapkan Google Vision API
Untuk membuatnya lebih pintar, mari kita tambahkan pengenalan gambar. Untuk tujuan ini kita akan menggunakan Google Vision API. Untuk memulai, ikuti langkah 1-4 di Panduan memulai cepat Vision API. Dalam tutorial, Anda akan mengaktifkan Vision API dan membuat akun layanan untuk menggunakannya.
Sekarang kembali ke fungsi cloud yang Anda buat. Alihkan “Variabel lingkungan, jaringan, batas waktu dan lainnya” dan dalam file “Akun layanan” pilih akun layanan VisionAPI yang baru saja Anda buat. Sekarang kita dapat mengakses Vision API di dalam fungsi kita.

Sekarang mari kita ubah kode. Pada tab “Package.json”, masukkan kode ini. Ini akan menambahkan perpustakaan Google Vision API sebagai dependensi ke fungsi Anda.
pada tab "Index.js" perbarui kode yang ada dengan cuplikan kode berikut.

Apa bedanya dibandingkan dengan versi sebelumnya? Kami menambahkan permintaan ke VisionAPI, yang mengembalikan ‘label’ yang ditemukan pada gambar. Kemudian kami memfilter label ini berdasarkan deskripsi: jika mengandung “hot dog” dan jika memiliki kepercayaan lebih dari 60% pada label tersebut. Jika ada setidaknya 1 label yang tersisa setelah pemfilteran, itu berarti kami menemukan hotdog pada gambar.
Untuk memahami bagaimana Google Vision API bekerja dan melihat respons sampel, periksa dokumentasi Vision API resmi.
Setelah itu, terapkan versi baru dari fungsi kita. Untuk mengujinya dari browser Anda, cari gambar hotdog dan simpan URL-nya. Sekarang pergi ke URL fungsi Anda (memasukkan alamat yang benar untuk fungsi Anda) https://your-function-address.cloudfunctions.net/HotDogOrNot?url=url_to_image
dan ganti “url_to_image” dengan URL ke gambar yang ditemukan. Jika ada hotdog dalam gambar, halaman akan mengembalikan {“isHotDog”: true}.
Sekarang mari kita hubungkan fungsi ini ke Flow Builder.
Membuat sebuah flow di Flows
Masuk ke dalam Dashboard Bird atau daftar akun jika Anda belum memilikinya.
Jika Anda baru di Flows dan belum memiliki saluran yang diatur, Anda perlu pergi ke halaman pengaturan Saluran, dan pilih untuk mengatur saluran Telegram. Saya memilih Telegram untuk demo ini karena mudah dan cepat untuk diatur.

Sekarang Anda memiliki saluran yang dapat kita gunakan di Flows. Pergi ke halaman Flows, buat alur kustom baru, dan pilih pemicu saluran “Telegram”.

Anda akan dialihkan ke halaman alur, di mana Anda harus memilih saluran Telegram Anda sebagai pemicu, dalam kasus kami adalah “Hotdog”. Silakan tambahkan 2 langkah: “Fetch variables” dan “Reply to channel message”.
Di dalam langkah “Fetch variables” kami akan memanggil fungsi cloud kami dan mengambil respons ke dalam variabel “isHotDog” yang akan berisi “true” atau “false” sebagai respons dari fungsi GoogleCloud. Di bidang URL silakan masukkan URL ke fungsi Anda https://your-function-address.cloudfunctions.net/HotDogOrNot
dan isi semua bidang lainnya seperti pada gambar "Fetch variable step content".
Dan di dalam langkah “Reply to channel message” kami akan merespons pelanggan dengan pesan yang berisi jawaban ya atau tidak. Untuk itu masukkan di bidang "Reply with message" teks berikut "Hotdog pada gambar? {{isHotDog}}".


Jika Anda mengalami kesulitan membangun alur, Anda dapat menggunakan cuplikan berikut:

Untuk mengujinya, kirim gambar ke bot Telegram Anda.
Sejauh ini, terlihat keren! Kami menciptakan bot obrolan kecil, yang memeriksa gambar yang dikirim pelanggan. Untuk membuatnya lebih menarik, mari kita tambahkan beberapa langkah lagi seperti yang ditunjukkan di bawah ini:

Jika Anda mengalami kesulitan membangun alur, Anda dapat menggunakan cuplikan berikut:
Hasil


Walaupun ini adalah contoh yang menyenangkan, kami percaya bahwa jenis fungsionalitas ini dapat sangat berguna bagi pengguna kami.
Jika Anda menginginkan fitur seperti ini yang terintegrasi di Flows, tulislah kepada tim dukungan kami untuk memberi tahu kami.