Pada September 2020, Sberbank mengubah namanya menjadi Sberbank (yang disebut rebranding), dan, untuk merayakannya, meluncurkan platform asisten suaranya sendiri yang disebut Salyut . Fitur dari Salut adalah hadirnya tiga asisten suara sekaligus untuk pilihan pengguna: Sber - seorang pria, gaya menyapa "kamu", Athena - seorang wanita, juga memanggil "kamu", dan Joy - seorang gadis dengan "kamu" yang ramah.
Sberbank (bank, bukan namanya - asisten suara) membuka platform ini untuk pengembang pihak ketiga, mengundang mereka untuk membuat aplikasi untuknya, yang disebut. smartups - analog dari keterampilan asisten suara Alice, dan mengadakan kompetisi untuk mereka dengan dana hadiah yang sangat besar. Dalam tutorial ini, kita akan melihat cara membuat smart-up di Node.js , menempatkan kodenya di Yandex.Cloud (menggunakan fungsi), dan, terakhir, membuat proyek di Salyut , melalui moderasi di sana, dan mempublikasikan smart-up kita sehingga menjadi publik.
Dan kami akan melakukan smart-up dengan kode nama "Pikiran Cerdas" . Topik favorit saya karena ini adalah artikel ketiga. Sebelumnya ada: Alice memperoleh keterampilan (tentang "Pikiran Cerdas" untuk Alice ), dan Membangun bot Telegram di Yandex.Cloud (tentang membuat @SmartThoughtsBot - bot dengan nama biasa yang sama). Jadi, inilah rencananya hari ini:
- , . .
- ., — .. serverless.
- SmartApp Studio — - , , — .
- , — .. .
- , . . , .
1.
Clone repositori GitHub , buka root proyek, dan instal dependensi seperti yang ditunjukkan di bawah ini:
Software yang dibutuhkan
git clone https://github.com/stmike/smart-thoughts-salute.git
cd smart-thoughts-salute
npm install
Kode untuk smartup ini ditulis menggunakan API SmartApp terbuka dan spesifikasi Yandex Cloud Functions , yang saya yakin ingin Anda ketahui . Setelah penerapan, proyek ini akan terlihat seperti ini untuk Anda.
Perhatikan bahwa kode tersebut penuh dengan komentar seperti tablet paku Sumeria. Menurut saya, lebih mudah membaca berbagai penjelasan dalam konteks kode daripada melihat kode, lalu membaca teks artikel satu per satu. Buat beberapa perubahan pada proyek, misalnya, ke file / src / lexicon-formal - di mana frase smartup dengan alamat "Anda" untuk Sberbank dan Athena dikumpulkan , atau ke file / src / lexicon-unformal - di mana frasa dengan referensi " kamu "untuk Joy... Setelah itu, buat arsip ZIP dan sertakan: file index.js , direktori file src , dan direktori node_modules . Kami akan segera mengunggah arsip ini ke Yandex.Cloud.
2. Yandex.Cloud
Buka Yandex.Cloud. Jika Anda belum memahaminya, ikuti petunjuk di sana untuk membuat akun penagihan dan pengaturan awal lainnya. Dalam artikel saya Alice di negara Bitrix, saya telah membahas semua ini secara mendetail, oleh karena itu, agar tidak mengulangi diri saya di sini, saya merujuk pembaca yang membutuhkan informasi lebih lanjut tentang topik ini ke artikel ini. Jadi, di Yandex.Cloud, pilih fungsi Cloud di sebelah kiri menu , dan klik tombol Buat fungsi . Halaman pembuatan fungsi akan terbuka.
Isi kolom Nama dan Deskripsi dan klik tombol Buat . Wizard Fungsi Baru sekarang akan mulai.
Pilih Node.js 10thversi, dan juga hapus centang pada kotak Tambahkan file dengan contoh kode . Klik tombol Lanjutkan .
Pada langkah wizard ini, pilih opsi dan isi bidang yang ditunjukkan pada tangkapan layar sebagai berikut:
- Pilih tab arsip ZIP .
- Klik tombol Select file, dan pilih arsip ZIP dengan smartup kami yang baru saja kami buat di komputer lokal Anda .
- Di kolom Entry Point , masukkan index.skill . Di sini indeks adalah singkatan dari nama file dan keterampilan adalah nama modul di file indeks kami .
- 7, 7 ( — 3 ).
- .
Setelah beberapa detik, fungsi baru akan dibuat dan Anda akan dibawa ke halaman Ikhtisar .
Di sini Anda perlu menyalakan sakelar Fungsi publik ke ON , mis. buatlah agar Salute dapat meneleponnya tanpa masalah. Jaga kerahasiaan tautan untuk panggilan dan pengenal fungsi, karena siapa pun dapat memanggil fungsi publik, dan Anda akan membayar. Tuliskan Calling Link di manset Anda - kami akan segera membutuhkannya.
3. Pembuatan proyek untuk Salut
Proyek Salut dibuat menggunakan SmartApp Studio .
Masuk ke studio ini jika Anda sudah memiliki ID Sber , atau daftar sebaliknya. Pendaftaran adalah proses yang sepele, kami tidak akan membahas ini. Tetapi saya akan mencatat fitur penting: ini dilakukan dengan menggunakan nomor ponsel Rusia , dan jika Anda tidak memiliki ini (nomor Rusia, ponsel, atau tidak satu pun di atas), pendaftaran, menurut pemahaman saya, tidak akan berfungsi. Kami memasuki. Di akun saya, kami melihat yang sudah dibuat dan sejauh ini satu-satunya yang cerdas, kode dan metode pembuatan yang saya bagikan dengan Anda di sini hari ini. Tombol Jelajahi Dokumentasi
Anda mungkin akan membutuhkannya terlebih dahulu, tetapi untuk keperluan artikel ini, kita masih akan mengklik Buat Smartup sekarang .
Gambar tersebut menunjukkan bahwa di bawah nama smartup terdapat tulisan Webhook dan Launched . Prasasti pertama mengatakan bahwa aplikasi kami berjalan pada layanan pihak ketiga (kami memilikinya Yandex.Cloud ), dan yang kedua - bahwa aplikasi telah diterbitkan (saya akan menulisnya alih-alih "Diluncurkan"). Mari lanjutkan dengan membuat smartup kita sendiri. Masukkan nama (Anda tidak dapat menduplikasi, jadi pilih nama Anda sendiri, misalnya, "Frase Bijak"). Kemudian pilih Aplikasi Obrolan (ya, ada juga jenis Aplikasi Kanvas dan rencananya, tampaknya, Aplikasi Asli , tetapi hari ini kami akan melakukannya denganAplikasi Obrolan , karena lebih mudah dibuat, dan membaca tentang jenis lain di dokumentasi ).
Kemudian, di bagian Pilih alat pada halaman , pilih Ada aplikasi yang sudah jadi (dan ini memang benar), dan di bidang Webhook, masukkan Tautan untuk memanggil fungsi kami di Yandex.Cloud , yang baru-baru ini Anda rekam di manset Anda.
Dan terakhir, klik tombol Create smart-up , setelah itu proyek baru akan dibuat, dan pada halaman PengaturanAnda akan melihat sesuatu yang mirip dengan yang di bawah ini. Tambahkan deskripsi, isi bidang lain, dan jangan ragu untuk mengirimkan smartup baru Anda untuk moderasi. Tapi ketahuilah: jika mereka tidak menerimanya karena jenis yang sama dengan aplikasi yang ada, saya menolak untuk bertanggung jawab atas ini. Namun, bagaimanapun juga - apakah mereka akan menerimanya atau tidak, apakah Anda mengirimkan smartup untuk moderasi atau tidak - smartup Anda sendiri sudah akan berfungsi di akun Anda sejak saat itu! Tetapi lebih dari itu di bawah.
Harap perhatikan juga bahwa ada lencana segera di bagian atas tab Katalog... Jika Anda mencoba menempatkan ikon dan screenshot smartup, tidak akan ada hasil. Ketika saya mengirimkan smart-up saya untuk moderasi pada paruh pertama November 2020, setelah diterima, seorang karyawan (mungkin ini juga moderator yang digabung menjadi satu) meminta saya untuk mengirim ikon melalui surat, tetapi tidak mengatakan apa-apa untuk tangkapan layar. Tetapi dia mengatakan bahwa segera keadaan ini akan berubah, dan semuanya akan bekerja sepenuhnya. Kami akan berharap.
4. Pengujian
Saatnya untuk menguji smartup kita beraksi. Instal aplikasi seluler SBER Salute untuk Android atau SBER Salute untuk iOS . Aplikasi ini terutama ditujukan untuk mengontrol set-top box SberBox , tetapi bahkan tanpa set-top box, aplikasi ini dapat sepenuhnya berkomunikasi dengan asisten suara dan menjalankan ponsel pintar pihak ketiga. Untuk melakukan ini, buka aplikasi SBER Salute di ponsel cerdas Anda , masuk dengan ID SBER Anda - tepatnya ID yang Anda gunakan untuk masuk ke SmartApp Studio ! Klik pada ikon bulat di bawah, melambangkan asisten suara, dan dengarkan sapaannya ( Sber dipilih sebagai asisten default di sana.). Lalu ucapkan "Turn on ..." atau "Start ..." dan ucapkan nama yang Anda berikan untuk smartup Anda. Saya ulangi: Anda dapat menguji smart-up yang tidak dipublikasikan jika Sber ID yang Anda gunakan untuk memasukkan aplikasi seluler SBER Salyut sama dengan ID Sber yang Anda gunakan untuk memasukkan SmartApp Studio saat Anda membuat smart-up. Jika Anda belum membuat apa pun sendiri, tetapi Anda sudah ingin melihat apa yang sebenarnya dihasilkan oleh kode program yang ditawarkan kepada Anda di sini, beri tahu asisten Anda: "Aktifkan Pemikiran Cerdas". Ini akan meluncurkan smartup sederhana yang memungkinkan Anda mengobrol sedikit dengannya. Harap dicatat bahwa dalam Saluttidak perlu mengucapkan kata "smartup" atau "skill", seperti yang diperlukan saat berkomunikasi dengan Alice, misalnya: "Turn on smartup Smart Thoughts", atau "Run the skill Smart Thoughts." Kata-kata ini dapat dihilangkan di sini, sehingga komunikasi dengan asisten suara lebih alami dan menyenangkan.
Saat Anda mengobrol sedikit dengan Sberbank (asisten), ucapkan: "Telepon Athena". Dan kemudian: "Panggil Joy." Pastikan bahwa masing-masing memiliki gaya komunikasi yang berbeda: beberapa - untuk "Anda", dan beberapa - untuk "Anda". Ini berarti bahwa smartup Anda (atau Pikiran Pintar ) dengan benar memproses "fitur" Saluta ini .
5. Kesimpulan
Jelas (setidaknya bagi saya) bahwa platform Salyut masih dalam masa kanak-kanak atau, paling banter, remaja. Jika kita membandingkan Pikiran Pandai yang sama - di sini dan dengan Alice - Alice akan memiliki "lebih dingin" - ada juga musik dan gambar. Semua ini tidak tersedia di Salute . Mereka mengatakan itu untuk saat ini. Dan sepertinya sebenarnya - dengan energi dan tekanan besar, mereka menerima asisten suara! Selain itu, Salyut memberikan dukungan aktif dan operasional yang tidak biasa untuk pengembang independen - seringkali hanya dalam waktu nyata di saluran Komunitas & Dukungan Telegram SmartApp Studio . Saya menduga Sberbank itu(Bank) menetapkan tujuan dalam waktu dekat untuk menjadi nomor satu di ceruk pasar asisten suara di Rusia. Karena itu, jika Anda mengerti apa yang disebut. "Jendela peluang" dan sedikit berpetualang - Anda dapat terhubung ke prosesnya. Masih sulit bekerja untuk Salut , tapi itu sudah nyata.
Sekian untuk hari ini. Lebih banyak materi mengikuti. Siapa pun yang tertarik membaca ini - berlangganan pemberitahuan tentang publikasi baru. Anda dapat berlangganan di situs ini (tombol Berlangganan di bawah), atau di Telegram- channel IT Tutorial Zakhar , atau di komunitas dengan nama yang sama di VK , atau Twitter @mikezaharov .