Menautkan ke Action Anda (Dialogflow)

Anda dapat membuat URL yang akan langsung tertaut ke Action tertentu, per Tindakan. Pengguna yang mengklik link Asisten (sebelumnya disebut link Action) di browser web atau seluler akan diarahkan ke Asisten di perangkatnya, dan mereka akan berinteraksi langsung dengan Action yang sesuai.

Beberapa contoh link Asisten yang berguna meliputi:

  • Menautkan pengguna ke petunjuk dengan panduan suara dari suatu situs petunjuk.
  • Menautkan pengguna ke pengalaman dukungan pelanggan dari halaman "dapatkan bantuan".
  • Menautkan pengguna ke intent update sehingga mereka dapat memilih untuk menerima update mendatang.

Untuk membuat URL bagi Action, lakukan hal berikut:

  1. Di Actions Console, buka Develop > Actions.
  2. Klik Action yang ingin Anda buat linknya.
  3. Di bagian Links, aktifkan Does you like to enable a URL for this Action.
  4. Masukkan Judul link. Judul ini harus menyertakan kata kerja yang menjelaskan tindakan yang akan dilakukan Action. Misalnya, jika Action Anda mengarahkan pengguna ke alur transaksi untuk membeli tiket konser, judul link yang berguna adalah "membeli tiket konser".
  5. Klik Simpan.

Anda dapat menyalin URL yang diberikan dan mereferensikannya di mana pun Anda ingin mengarahkan pengguna ke Action tertentu ini.

Link Asisten dapat berisi intent dan parameter di URL secara opsional. Google menangani parameter sesuai dengan jenis intent yang ditentukan dalam URL.

Sintaksis umum untuk URL link Asisten adalah sebagai berikut:

https://assistant.google.com/services/invoke[/$action_id][?intent=$intent&param.$param=$value][&$utm_param=$utm_value]

Parameter URL yang dapat Anda tetapkan dijelaskan dalam tabel berikut:

Parameter URL Deskripsi
$action_id ID numerik Action.
$intent Nama lengkap intent bawaan atau kustom.
$param Nama lengkap parameter intent yang ditentukan dalam paket Action.
$value Nilai yang dienkode URL dari jenis yang dideklarasikan untuk $param dalam paket Action.
$utm_param Daftar satu atau beberapa jenis parameter UTM. Nilai yang valid mencakup: utm_source, utm_medium, utm_campaign, utm_term, dan utm_content.
$utm_value Nilai string parameter UTM.

Jika link Asisten berisi intent bawaan (intent dimulai dengan actions.intent.*), Google akan mencoba mengekstrak parameter intent bawaan di URL dan meneruskannya ke Action. Setiap parameter yang tidak dipahami Google sebagai parameter intent bawaan akan dihapus.

Untuk Action percakapan, Google mengirimkan parameter ini ke fulfillment Anda sebagai bagian dari pesan AppRequest.

Contoh berikut menunjukkan cara menentukan URL link Asisten yang menyertakan intent bawaan dengan parameter intent tunggal:

https://assistant.google.com/services/invoke/uid/0000008ddd7eabec?intent=actions.intent.GET_HOROSCOPE&param.astrologySign=%22cancer%22

Untuk intent kustom, Google hanya mengekstrak parameter yang ditentukan oleh Action Anda sebagai bagian dari intent dan menghapus parameter lainnya.

Contoh berikut menunjukkan cara menentukan URL link Asisten yang menyertakan intent kustom:

https://assistant.google.com/services/invoke/uid/0000001f575305a0?intent=NEWS_UPDATE_DEEP_LINK&param.topic=sports

Untuk contoh URL di atas, dalam AppRequest, Google menambahkan objek JSON sebagai berikut:

argument {
  name: ‘topic’,
  raw_text: ‘sports’,
  text_value: ‘sports’,
}

Jika Anda tidak menentukan intent di link Asisten, Google akan menautkan ke intent MAIN (actions.intent.MAIN) Action Anda secara default dengan perilaku berikut:

  • Jika Anda tidak secara eksplisit mengaktifkan intent MAIN di link Asisten, Google akan memicu intent utama tanpa parameter apa pun, mirip dengan perilaku untuk "Bicara dengan app_name".
  • Jika Anda mengaktifkan intent MAIN secara eksplisit, Google akan meneruskan parameter ke Action Anda.

Contoh berikut menunjukkan cara menentukan URL link Asisten tanpa intent:

https://assistant.google.com/services/invoke/uid/000000d139bbc4d4

Parameter UTM adalah string yang dikirim Google ke Action Anda saat pengguna mengklik link Asisten, yang nantinya dapat digunakan untuk analisis.

Parameter UTM yang dikirimkan Google ke Action Anda mencakup hal berikut:

  • utm_source
  • utm_medium
  • utm_campaign
  • utm_term
  • utm_content

Contoh berikut menunjukkan cara menentukan URL link Asisten yang menyertakan parameter UTM:

https://assistant.google.com/services/invoke/uid/000000d139bbc4d4?utm_source=Google&utm_medium=email&utm_campaign=holiday+sale

Untuk contoh URL di atas, Google menambahkan argumen berikut dalam pesan AppRequest:

argument {
  name: ‘utm_source’,
  raw_text: ‘Google’,
  text_value: ‘Google’,
}
argument {
  name: ‘utm_medium’,
  raw_text: ‘email’,
  text_value: ‘email’,
}
argument {
  name: ‘utm_campaign’,
  raw_text: ‘holiday sale’,
  text_value: ‘holiday sale’,
}

Anda dapat menguji link Asisten untuk intent apa pun (utama atau kustom, dengan atau tanpa parameter) melalui simulator atau perangkat.

Untuk menguji link Asisten:

  1. Aktifkan link Asisten di konsol.
  2. Login ke Asisten dengan akun yang sama dengan yang Anda gunakan untuk membuat project Actions on Google.
  3. Buat versi link Asisten yang dapat diklik (di email, chat, dokumen, dll.).
  4. Di perangkat yang dilengkapi dengan Asisten, klik link yang dibuat di langkah sebelumnya.

Setelah mengonfirmasi fungsi link Asisten seperti yang diharapkan, Anda harus men-deploy ulang Action agar link tersedia bagi pengguna.

Batasan dan praktik terbaik

Karena URL link Asisten Anda kini dapat didistribusikan dan dirujuk di luar direktori atau layanan Google lainnya, perlu diperhatikan bahwa pembatasan dan praktik terbaik berikut berlaku:

  • Pastikan Anda terus mendukung semua link Asisten Anda. Jika Anda mendistribusikan link Asisten yang nantinya berhenti berfungsi, project Action Anda mungkin akan ditandai sebagai tidak responsif dan dihapus.
  • Memublikasikan link berarti Anda mendukung pemicuan dari sumber yang tidak tepercaya. Untuk setiap Action tertaut, Anda harus mengonfirmasi secara eksplisit dengan pengguna sebelum melakukan "tindakan nyata" apa pun. Misalnya, Action yang menonaktifkan peralatan smart home akan meminta pengguna mengucapkan "Yakin ingin menonaktifkan $applianceName?"

    Dalam konteks ini, "tindakan dunia nyata" adalah tindakan apa pun yang memengaruhi layanan, data, perangkat, jaringan, komputer, atau API pengguna. Misalnya, mengirim email, melakukan transaksi, mengubah status perangkat Smart Home, membuat langganan, atau memperbarui suatu konten.