Cara membuat deep link ke aplikasi dari agen RBM Anda

Di aplikasi seluler, deep linking memungkinkan pengguna langsung membuka konten dalam aplikasi. Tanpa deep linking, jika Anda membagikan kemeja yang Anda temukan di aplikasi toko retail kepada teman, link yang Anda kirimkan akan mengarahkan mereka ke browser atau mengarahkan mereka ke Play Store, tempat mereka harus menginstal atau membuka aplikasi, lalu menelusuri konten. Kedua situasi tersebut bukanlah pengalaman pengguna yang baik. Dengan deep linking, link tersebut akan membawa teman Anda ke kemeja yang Anda temukan dalam aplikasi retail.

Dalam dokumen ini, Anda akan mempelajari cara menggunakan deep link untuk membuat pengalaman yang beragam dan menarik bagi pengguna RBM.

Mengarahkan pengguna RBM ke aplikasi

Deep link hanyalah link ke aplikasi. Agen RBM Anda dapat membuka aplikasi yang diinstal di ponsel seseorang menggunakan OpenUrlAction dengan URL adalah deep link yang dikonfigurasi untuk aplikasi yang ingin Anda panggil. Anda dapat membaca selengkapnya di Membuat Deep Link ke Konten Aplikasi.

Lihat contoh berikut. Untuk membuka podcast Google Cloud dalam aplikasi Google Podcast, OpenUrlAction dapat dibuat dengan URI:

https://www.google.com/podcasts?feed=aHR0cDovL2ZlZWRzLmZlZWRidXJuZXIuY29tL0dvb2dsZUNsb3VkUGxhdGZvcm1Qb2RjYXN0

Banyak produk Google yang dikonfigurasi untuk mendukung deep link yang juga berfungsi sebagai URL web, termasuk YouTube dan Google Maps.

Untuk memicu salah satu aplikasi ini dari agen, kita perlu menentukan nilai ini sebagai URL di OpenUrlAction. Dalam contoh JSON berikut, kartu informasi RBM ditentukan dengan tiga tindakan URL terbuka, dengan setiap deep linking ke aplikasi yang berbeda.

{
    "contentMessage":{
        "richCard":{
            "standaloneCard":{
                "cardOrientation":"VERTICAL",
                "cardContent":{
                    "title":"Did you know that you can open apps from an RBM agent?",
                    "description":"",
                    "suggestions":[
                        {
                            "action":{
                                "text":"Google Cloud Podcast",
                                "postbackData":"podcast_tap",
                                "openUrlAction":{
                                    "url":"https://www.google.com/podcasts?feed=aHR0cDovL2ZlZWRzLmZlZWRidXJuZXIuY29tL1JvYkNlc3Rlcm5pbm8&nord=0"
                                }
                            }
                        },
                        {
                            "action":{
                                "text":"YouTube Video",
                                "postbackData":"youtube_tap",
                                "openUrlAction":{
                                    "url":"https://www.youtube.com/embed/xSE9Qk9wkig"
                                }
                            }
                        },
                        {
                            "action":{
                                "text":"Google Maps",
                                "postbackData":"maps_tap",
                                "openUrlAction":{
                                    "url":"https://goo.gl/maps/ToMSdr4PYX62"
                                }
                            }
                        }
                    ]
                }
            }
        }
    }
}

Saat payload JSON ini dirender dalam klien RCS pengguna, ikon tindakan yang disarankan akan cocok dengan aplikasi yang ditautkan secara mendalam. Mengetuk salah satu tindakan yang disarankan akan meluncurkan aplikasi yang sesuai langsung ke konten yang dienkode dalam URL.

URL yang disarankan dengan ikon aplikasi

Mengapa Anda menginginkan ini?

Ada beberapa alasan mengapa Anda mungkin ingin melakukan deep link ke aplikasi.

Autentikasi

Jika agen Anda menangani informasi yang berpotensi sensitif, salah satu cara untuk membantu mengamankan agen adalah dengan deep link ke aplikasi Anda untuk membantu mengautentikasi pengguna menggunakan sidik jari, login, atau beberapa cara lainnya. Setelah pengguna berhasil melakukan autentikasi, Anda dapat melacak autentikasi sisi server dan mengembalikan pengguna ke agen dengan memicu pesan RBM baru. Jika Anda mengirim pesan tindak lanjut yang berpotensi sensitif, Anda dapat memeriksa sisi server untuk memastikan pengguna diautentikasi. Jika tidak, Anda dapat mengirimnya kembali ke aplikasi untuk memperpanjang token autentikasi mereka.

Dukungan kasus penggunaan yang kompleks

Agen RBM sangat cocok untuk interaksi percakapan, tetapi aplikasi dapat melayani beberapa kasus penggunaan dengan lebih baik. Misalnya, jika Anda memiliki perusahaan furnitur dan telah membuat pengalaman augmented reality agar pengguna dapat mencoba furnitur di rumah mereka (lihat gambar berikut), kasus penggunaan Anda hanya dapat didukung oleh aplikasi.

Dalam situasi ini, sebaiknya Anda mengarahkan pengguna RBM ke aplikasi untuk menjalankan beberapa fungsi. Aplikasi Anda selalu dapat mengembalikan pengguna ke percakapan RBM dengan memicu pesan agen baru.

Deep link ke aplikasi Aplikasi dengan deep link

Memfasilitasi pembayaran

Anda dapat mendukung pembayaran dengan aplikasi pihak ketiga menggunakan deep linking.

Misalnya, Anda ingin mendukung transfer uang melalui perusahaan pembayaran fiktif AcmePay. Dengan menyelidiki secara online, Anda menemukan bahwa AcmePay mendukung deep linking menggunakan struktur URI uniknya sendiri yang memungkinkan Anda meneruskan nilai untuk penerima, jumlah, dan catatan menggunakan parameter querystring.

Berbekal pengetahuan ini, agen Anda perlu membuat OpenUrlAction dengan URI AcmePay berparameter yang ditentukan untuk bagian URL dari tindakan yang disarankan.

acmepay://paycharge?recipients=Jane+Smith&amount=10&note=Money+For+You!

Setelah penerima pesan RBM mengetuk tindakan yang disarankan, aplikasi AcmePay akan langsung diluncurkan ke layar transaksi dengan nilai yang diteruskan telah diisi.

Apa yang terjadi jika aplikasi tidak diinstal?

Jika aplikasi tidak diinstal di perangkat pengguna, perilaku deep linking bergantung pada struktur URI yang diteruskan ke OpenUrlAction. Jika URI dapat dikenali oleh minimal satu aplikasi di perangkat (misalnya, Chrome mengenali URL yang diawali dengan "http://"), tindakan yang disarankan akan ditampilkan seperti biasa di aplikasi tersebut. Saat pengguna mengetuk tindakan, URI akan terbuka di aplikasi mana pun yang mengenali struktur URI.

Jika Anda adalah developer aplikasi, sebaiknya gunakan deep link dengan URI yang dimulai dengan "http://" dan mengarah ke domain yang Anda miliki karena Chrome dapat mengarahkan pengguna ke halaman web sebagai tindakan penggantian. Di halaman web, Anda dapat mengarahkan pengguna untuk mendownload aplikasi atau mengarahkan mereka sesuai keinginan untuk kasus penggunaan Anda.

Jika URI menggunakan struktur kustom yang tidak dikenali oleh aplikasi apa pun di perangkat, tindakan yang disarankan tidak akan dirender dalam pesan RBM Anda.

Untuk memastikan tindakan yang disarankan selalu muncul, Anda dapat menggunakan URL yang Anda miliki dan meminta halaman web untuk mencoba mengalihkan browser ke URI kustom yang meluncurkan aplikasi. Jika aplikasi ada di perangkat, aplikasi akan diluncurkan seperti yang diharapkan. Jika tidak, pengguna tetap berada di halaman web, tempat Anda dapat mengarahkannya sesuai kebutuhan untuk kasus penggunaan Anda.

Berikut adalah contoh cara melakukannya dengan JavaScript. Skrip mencoba mengarahkan pengguna ke aplikasi AcmePay, tetapi jika aplikasi tersebut tidak diinstal, skrip akan mengalihkan pengguna ke Google Play Store untuk mendownload aplikasi.

<!doctype html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width,minimum-scale=1.0, maximum-scale=1.0" />
    <title>Acme Pay</title>

    <script type="text/javascript">
    window.onload = function() {
       // Launch Acme Pay app for existing users
       window.location = 'acmepay://paycharge?recipients=Jane+Smith&amount=10&note=Money+For+You!';

       // Redirect to Acme Pay app download for new users
       setTimeout("window.location = 'https://play.google.com/store/apps/details?id=com.acmepay.android';", 1000);
    }
    </script>
</head>
<body>
    <h1>Redirecting…</h1>
</body>
</html>

Penutupan & ringkasan

Anda dapat menggunakan tindakan yang disarankan OpenUrlAction untuk melakukan deep link ke aplikasi yang Anda miliki atau aplikasi yang ingin dipicu untuk membantu berinteraksi dengan pengguna. Dengan deep linking, Anda dapat memberikan pengalaman yang kaya dan menarik bagi pengguna atau keamanan yang lebih ditingkatkan untuk berbagi konten sensitif.

Semoga berhasil dan selamat melakukan coding.