كيفية إنشاء رابط لموضع معيّن في التطبيقات من وكيل RBM

في التطبيقات المتوافقة مع الأجهزة الجوّالة، تتيح إمكانية الربط بصفحة معيّنة للمستخدمين الانتقال مباشرةً إلى المحتوى داخل التطبيق. بدون الربط بصفحة معيّنة، إذا شاركت قميصًا عثرت عليه في تطبيق لمتجر البيع بالتجزئة مع صديقك، سينقله الرابط الذي ترسله إليه إلى المتصفح أو ينقله إلى "متجر Play"، حيث سيحتاج إلى تثبيت التطبيق أو فتحه ثم البحث عن المحتوى. ولا تتمثل أي من الحالتين في تجربة مستخدم رائعة. من خلال الربط بصفحة معيّنة، ينقل الرابط صديقك إلى القميص نفسه الذي عثرت عليه في تطبيق البيع بالتجزئة.

في هذه المقالة، ستتعرّف على كيفية استخدام الروابط لصفحات معيّنة في التطبيق للحصول على تجارب مفيدة وجذابة لمستخدمي ميزة "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)".

نقل مستخدم RBM إلى تطبيق

الرابط لصفحة في التطبيق هو رابط إلى تطبيق. يمكن لموظّف دعم ميزة "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)" فتح تطبيق تم تثبيته على هاتف أحد المستخدمين باستخدام ميزة OpenUrlAction حيث يكون عنوان URL عبارة عن رابط لصفحة في التطبيق الذي تريد استدعاءه. ويمكنك قراءة المزيد من المعلومات في مقالة إنشاء روابط لصفحات معيّنة في محتوى التطبيق.

لنلقِ نظرة على مثال محدد. لفتح بودكاست Google Cloud ضمن تطبيق "Google بودكاست"، يمكن إنشاء OpenUrlAction باستخدام معرّف الموارد المنتظم (URI):

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

تم ضبط العديد من منتجات Google بحيث تتوافق مع روابط لصفحات في التطبيق تعمل أيضًا على عناوين URL للويب، بما في ذلك YouTube و"خرائط Google".

لتشغيل أي من هذه التطبيقات من وكيل، نحتاج إلى تحديد هذه القيمة كعنوان URL في OpenUrlAction. في نموذج JSON أدناه، يتم تحديد بطاقة RBM التفاعلية مع ثلاثة إجراءات لعناوين URL مفتوحة، كل رابط لصفحة في التطبيق في تطبيق مختلف.

{
    "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) للمستخدم، يطابق رمز الإجراء المقترَح التطبيق المرتبط بصفحة معيّنة. ويؤدي النقر على أي من الإجراءات المقترَحة إلى تشغيل التطبيق المقابل مباشرةً في المحتوى المشفّر في عنوان URL.

عناوين URL المقترَحة التي تتضمّن رموز تطبيقات

ما هو سبب رغبتك في ذلك؟

هناك عدة أسباب قد تدفعك إلى وضع رابط لصفحة في تطبيق.

المصادقة

إذا كان وكيلك يتعامل مع معلومات قد تكون حساسة، تتمثل إحدى طرق المساعدة في تأمين وكيلك في الربط بصفحة معيّنة بتطبيقك للمساعدة في مصادقة المستخدم من خلال بصمة الإصبع أو تسجيل الدخول أو أي طريقة أخرى. بعد مصادقة المستخدم بنجاح، يمكنك تتبُّع جهة المصادقة وإعادة توجيه المستخدم إلى الوكيل من خلال تشغيل رسالة جديدة لميزة "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)". إذا أرسلت أي رسائل متابعة يُحتمل أن تكون حساسة، يمكنك التحقّق من جهة الخادم للتأكّد من مصادقة المستخدم. إذا لم يكن الأمر كذلك، يمكنك إعادة إرساله إلى التطبيق لتجديد رمز المصادقة المميز.

دعم حالة الاستخدام المعقدة

ويمثّل وكلاء "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)" وسيلة رائعة للتفاعل مع المحادثات، لكن التطبيقات يمكنها أن تخدم بشكل أفضل بعض حالات الاستخدام. على سبيل المثال، إذا كانت لديك شركة أثاث وأنشأت تجربة الواقع المعزّز حتى يتمكن المستخدمون من تجربة الأثاث في منازلهم (راجع الصورة أدناه)، يمكن أن تكون حالة الاستخدام متاحة فقط من خلال تطبيق.

في هذه الحالات، من المنطقي توجيه مستخدمي ميزة "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)" إلى تطبيقك لتنفيذ بعض الوظائف. يمكن لتطبيقك دائمًا إعادة المستخدم إلى المحادثة المستندة إلى ميزة "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)" من خلال تشغيل رسالة وكيل جديدة.

رابط لصفحة في التطبيق تطبيق مرتبط بصفحة معيّنة

تسهيل الدفع

يمكنك توفير الدفعات باستخدام تطبيق تابع لجهة خارجية من خلال ربط بصفحة معيّنة في التطبيق.

على سبيل المثال، لنفترض أنك تريد دعم عمليات تحويل الأموال من خلال شركة AcmePay الوهمية. من خلال التحقّق من الأمر على الإنترنت، تبيّن لك أنّ AcmePay تتوفّر روابط لصفحات معيّنة في التطبيق باستخدام بنية معرّف الموارد المنتظم (URI) الفريدة التي تتيح لك تمرير القيم للمستلِمين والمبلغ وملاحظة من خلال معلَمات سلسلة الطلب.

استنادًا إلى هذه المعلومات، ما عليك سوى إنشاء وكيل OpenUrlAction باستخدام معرّف الموارد المنتظم (URI) لـ AcmePay المحدّد للجزء من الإجراء المقترَح.

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

بعد أن ينقر مستلِم رسالة "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)" على الإجراء المقترَح، يتم تشغيل تطبيق AcmePay مباشرةً على شاشة المعاملة مع القيم التي تم تمريرها مسبقًا.

ماذا يحدث إذا لم يكن التطبيق مثبّتًا؟

إذا لم يتم تثبيت تطبيق على جهاز المستخدم، يعتمد سلوك الربط بصفحة معيّنة على بنية معرّف الموارد المنتظم (URI) الذي يتم تمريره إلى OpenUrlAction. إذا كان من الممكن التعرّف على معرّف الموارد المنتظم (URI) من خلال تطبيق واحد على الأقل على الجهاز (على سبيل المثال، يتعرّف Chrome على عناوين URL التي تبدأ بـ "http://")، يتم عرض الإجراء المقترَح كالمعتاد على هذا التطبيق. وعندما ينقر المستخدم على الإجراء، يتم فتح معرّف الموارد المنتظم (URI) في أي تطبيق يتعرّف على بنية معرّف الموارد المنتظم (URI).

إذا كنت مطوّر التطبيقات، من المفيد الربط بصفحة معيّنة باستخدام معرّفات الموارد المنتظمة (URI) التي تبدأ بالنطاق "http://" والإشارة إلى نطاق تملكه لأنّ متصفّح Chrome يمكنه توجيه المستخدم إلى صفحة ويب كإجراء احتياطي. في صفحة الويب، يمكنك توجيه المستخدم لتنزيل التطبيق أو توجيهه كما تراه مناسبًا لحالة استخدامك.

إذا كان معرّف الموارد المنتظم (URI) يستخدم بنية مخصّصة لا يتعرّف عليها أي تطبيق على الجهاز، لن يتم عرض الإجراء المقترَح في رسالة "مراسلة الأنشطة التجارية من خلال خدمات الاتصالات التفاعلية (RCS)".

للتأكّد من ظهور الإجراءات المقترَحة دائمًا، يمكنك استخدام عنوان URL تملكه ومحاولة إعادة توجيه صفحة الويب إلى معرّف الموارد المنتظم (URI) مخصّص لتشغيل التطبيق. في حال توفّر التطبيق على الجهاز، يتم تشغيله على النحو المتوقّع. وإذا لم يكن الأمر كذلك، سيظل المستخدم على صفحة الويب حيث يمكنك توجيهه حسب الحاجة لحالة الاستخدام.

في ما يلي مثال على كيفية إجراء ذلك باستخدام JavaScript. يحاول النص البرمجي إعادة توجيه المستخدم إلى تطبيق AcmePay، ولكن إذا لم يكن هذا التطبيق مثبّتًا، يعيد النص البرمجي توجيه المستخدم إلى "متجر Google Play" لتنزيله.

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

الخاتمة والنص طويل جدًّا ولم تتم قراءته (TL;DR)

يمكنك استخدام الإجراء المقترح OpenUrlAction للربط بصفحة معيّنة في التطبيقات التي تملكها أو التطبيقات التي تريد تشغيلها للمساعدة في جذب المستخدمين. من خلال ربط صفحات معيّنة في التطبيق، يمكنك تقديم تجربة مفيدة وجذابة للمستخدمين أو المزيد من الأمان لمشاركة المحتوى الحساس.

نتمنى لك حظًا موفقًا ونتمنى لك التوفيق في الترميز.