วิธีทำ Deep Link ไปยังแอปจากตัวแทน RBM ของคุณ

การทำ Deep Link ในแอปบนอุปกรณ์เคลื่อนที่ช่วยให้ผู้ใช้ไปยังเนื้อหาภายในแอปได้โดยตรง หากไม่มีการทำ Deep Link หากคุณแชร์เสื้อที่พบในแอปร้านค้าปลีกกับเพื่อน ลิงก์ที่คุณส่งให้เพื่อนอาจนำพวกเขาไปยังเบราว์เซอร์ หรือพาไปยัง Play Store ซึ่งผู้ใช้ต้องติดตั้งหรือเปิดแอป แล้วค้นหาเนื้อหา ทั้งสองสถานการณ์นี้ไม่ใช่ประสบการณ์การใช้งานที่ยอดเยี่ยม เมื่อใช้ Deep Link ลิงก์จะพาเพื่อนไปยังเสื้อที่คุณพบในแอปค้าปลีก

ในเอกสารนี้ คุณจะได้เรียนรู้วิธีใช้ Deep Link เพื่อสร้างประสบการณ์การใช้งานที่สมบูรณ์และน่าสนใจสําหรับผู้ใช้ RBM

นําผู้ใช้ RBM ไปยังแอป

Deep Link เป็นเพียงลิงก์ที่นำไปยังแอป ตัวแทน RBM ของคุณสามารถเปิดแอปที่ติดตั้งในโทรศัพท์ของผู้อื่นได้โดยใช้ OpenUrlAction โดย URL คือ Deep Link ที่กำหนดค่าไว้สำหรับแอปที่คุณต้องการเรียกใช้ อ่านเพิ่มเติมได้ที่สร้าง Deep Link สำหรับเนื้อหาในแอป

โปรดดูตัวอย่างต่อไปนี้ หากต้องการเปิดพอดแคสต์ Google Cloud ภายในแอป Google Podcasts ให้สร้าง OpenUrlAction ด้วย URI ต่อไปนี้

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

ผลิตภัณฑ์ Google จำนวนมากมีการกำหนดค่าให้รองรับ Deep Link ที่ใช้เป็น URL ของเว็บได้ด้วยเช่นกัน ซึ่งรวมถึง YouTube และ Google Maps

หากต้องการทริกเกอร์แอปเหล่านี้จากตัวแทน เราต้องระบุค่านี้เป็น URL ใน OpenUrlAction ในตัวอย่าง JSON ต่อไปนี้ มีการระบุการ์ดริชมีเดีย RBM ด้วยการดำเนินการเปิด URL 3 รายการ โดยแต่ละรายการจะทำการ Deep Link ไปยังแอปอื่น

{
    "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"
                                }
                            }
                        }
                    ]
                }
            }
        }
    }
}

เมื่อเพย์โหลด JSON นี้แสดงผลภายในไคลเอ็นต์ RCS ของผู้ใช้ ไอคอนของการดำเนินการที่แนะนำจะตรงกับแอปที่ทำ Deep Link การแตะการดำเนินการที่แนะนำจะเป็นการเปิดแอปที่เกี่ยวข้องไปยังเนื้อหาที่เข้ารหัสใน URL โดยตรง

URL ที่แนะนำพร้อมไอคอนแอป

เหตุผลที่ควรใช้

คุณอาจต้องการใช้ Deep Link ไปยังแอปด้วยเหตุผลหลายประการ

การตรวจสอบสิทธิ์

หากตัวแทนของคุณจัดการกับข้อมูลที่อาจมีความละเอียดอ่อน วิธีหนึ่งที่จะช่วยรักษาความปลอดภัยให้ตัวแทนของคุณคือการทำ Deep Link ไปยังแอปของคุณเพื่อช่วยตรวจสอบสิทธิ์ผู้ใช้โดยใช้ลายนิ้วมือ การเข้าสู่ระบบ หรือวิธีอื่นๆ เมื่อผู้ใช้ยืนยันตัวตนสําเร็จแล้ว คุณสามารถติดตามการยืนยันตัวตนฝั่งเซิร์ฟเวอร์และนําผู้ใช้กลับไปยังตัวแทนได้โดยเรียกใช้ข้อความ RBM ใหม่ หากส่งข้อความติดตามผลที่อาจมีความละเอียดอ่อน คุณสามารถตรวจสอบฝั่งเซิร์ฟเวอร์เพื่อให้แน่ใจว่าผู้ใช้ได้รับการตรวจสอบสิทธิ์แล้ว หากไม่ คุณสามารถส่งผู้ใช้กลับไปที่แอปเพื่อต่ออายุโทเค็นการตรวจสอบสิทธิ์

การสนับสนุนกรณีการใช้งานที่ซับซ้อน

ตัวแทน RBM เหมาะสําหรับการโต้ตอบแบบการสนทนา แต่แอปจะเหมาะกับบางกรณีการใช้งานมากกว่า ตัวอย่างเช่น หากคุณมีบริษัทเฟอร์นิเจอร์และได้สร้างประสบการณ์การใช้งาน Augmented Reality เพื่อให้ผู้ใช้ลองใช้เฟอร์นิเจอร์ในบ้าน (ดูรูปภาพต่อไปนี้) กรณีการใช้งานของคุณจะรองรับได้เฉพาะในแอปเท่านั้น

ในกรณีเหล่านี้ คุณควรนําผู้ใช้ RBM ไปยังแอปเพื่อดําเนินการบางอย่าง แอปสามารถนำผู้ใช้กลับมาที่การสนทนา RBM ได้เสมอโดยทริกเกอร์ข้อความตัวแทนใหม่

Deep Link ไปยังแอป แอปที่ทำ Deep Link แล้ว

อำนวยความสะดวกในการชําระเงิน

คุณรองรับการชำระเงินด้วยแอปของบุคคลที่สามได้โดยใช้ Deep Link

ตัวอย่างเช่น สมมติว่าคุณต้องการรองรับการโอนเงินผ่านบริษัทการชำระเงินสมมติชื่อ AcmePay จากการตรวจสอบทางออนไลน์ คุณพบว่า AcmePay รองรับ Deep Link โดยใช้โครงสร้าง URI ที่ไม่ซ้ำกันของตนเอง ซึ่งช่วยให้คุณส่งค่าสำหรับผู้รับ จํานวนเงิน และหมายเหตุได้โดยใช้พารามิเตอร์สตริงการค้นหา

เมื่อมีความรู้นี้ ตัวแทนของคุณจะต้องสร้าง OpenUrlAction ที่มี URI ของ AcmePay ที่ทำเป็นพารามิเตอร์ที่ระบุไว้ให้กับส่วน URL ของการดำเนินการที่แนะนำ

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

เมื่อผู้รับข้อความ RBM แตะการดําเนินการที่แนะนํา แอป AcmePay จะเปิดขึ้นโดยตรงในหน้าจอธุรกรรมโดยกรอกค่าที่ส่งเข้ามาแล้ว

จะเกิดอะไรขึ้นหากไม่ได้ติดตั้งแอป

หากไม่ได้ติดตั้งแอปในอุปกรณ์ของผู้ใช้ ลักษณะการทำงานของการทำ Deep Link จะขึ้นอยู่กับโครงสร้างของ URI ที่ส่งไปยัง OpenUrlAction หากแอปในอุปกรณ์อย่างน้อย 1 แอปรู้จัก URI ได้ (เช่น Chrome รู้จัก URL ที่ขึ้นต้นด้วย "http://") การดำเนินการที่แนะนำจะแสดงตามปกติในแอปดังกล่าว เมื่อผู้ใช้แตะการดำเนินการ URI จะเปิดขึ้นในแอปใดก็ตามที่รู้จักโครงสร้าง URI

หากคุณเป็นนักพัฒนาแอป ข้อดีของ Deep Link ที่มี URI ขึ้นต้นด้วย "http://" และชี้ไปยังโดเมนที่คุณเป็นเจ้าของ เนื่องจาก Chrome สามารถนำผู้ใช้ไปยังหน้าเว็บเป็นการดำเนินการสำรองได้ ในหน้าเว็บ คุณสามารถแนะนำให้ผู้ใช้ดาวน์โหลดแอป หรือนำทางผู้ใช้ตามความเหมาะสมกับกรณีการใช้งานของคุณ

ในสถานการณ์ที่ URI ใช้โครงสร้างที่กำหนดเองซึ่งแอปในอุปกรณ์ไม่รู้จัก การดำเนินการที่แนะนำจะไม่แสดงในข้อความ RBM

หากต้องการให้การดำเนินการที่แนะนำปรากฏขึ้นเสมอ คุณสามารถใช้ URL ที่คุณเป็นเจ้าของและทำให้หน้าเว็บพยายามเปลี่ยนเส้นทางเบราว์เซอร์ไปยัง URI ที่กำหนดเองซึ่งเปิดแอป หากแอปอยู่ในอุปกรณ์ แอปจะเปิดขึ้นตามที่คาดไว้ หากไม่ ผู้ใช้จะยังคงอยู่ในหน้าเว็บ ซึ่งคุณสามารถนําผู้ใช้ไปยังส่วนต่างๆ ตามต้องการสำหรับกรณีการใช้งาน

ต่อไปนี้เป็นตัวอย่างวิธีดำเนินการนี้ด้วย JavaScript สคริปต์จะพยายามเปลี่ยนเส้นทางผู้ใช้ไปยังแอป AcmePay แต่หากไม่ได้ติดตั้งแอปดังกล่าว สคริปต์จะเปลี่ยนเส้นทางผู้ใช้ไปยัง Google Play Store เพื่อดาวน์โหลดแอป

<!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>

สรุป

คุณสามารถใช้การดําเนินการที่แนะนําของ OpenUrlAction เพื่อทํา Deep Link ไปยังแอปที่คุณเป็นเจ้าของหรือแอปที่ต้องการทริกเกอร์เพื่อช่วยดึงดูดผู้ใช้ การทำ Deep Link ช่วยให้คุณมอบประสบการณ์การใช้งานที่สมบูรณ์และน่าสนใจให้แก่ผู้ใช้ หรือเพิ่มความปลอดภัยในการแชร์เนื้อหาที่มีความละเอียดอ่อนได้

ขอให้โชคดีและสนุกกับการเขียนโค้ด