কীভাবে আপনার RBM এজেন্ট থেকে অ্যাপের সাথে গভীর লিঙ্ক করবেন

মোবাইল অ্যাপে, ডিপ লিঙ্কিং ব্যবহারকারীদের সরাসরি একটি অ্যাপের মধ্যে থাকা সামগ্রীতে যেতে দেয়। ডিপ লিঙ্কিং ছাড়াই, আপনি যদি আপনার বন্ধুর সাথে একটি খুচরা দোকান অ্যাপে পাওয়া একটি শার্ট শেয়ার করেন, তাহলে আপনি তাদের পাঠানো একটি লিঙ্ক তাদের ব্রাউজারে নিয়ে যাবে বা প্লে স্টোরে নিয়ে যাবে, যেখানে তাদের ইনস্টল বা খুলতে হবে। অ্যাপ এবং তারপর সামগ্রী অনুসন্ধান করুন। উভয় পরিস্থিতি একটি দুর্দান্ত ব্যবহারকারীর অভিজ্ঞতা নয়। ডিপ লিঙ্কিংয়ের মাধ্যমে, লিঙ্কটি আপনার বন্ধুকে সেই শার্টে নিয়ে যায় যা আপনি খুচরা অ্যাপের মধ্যে পেয়েছিলেন।

এই নিবন্ধে, আপনি আপনার RBM ব্যবহারকারীদের জন্য সমৃদ্ধ এবং আকর্ষক অভিজ্ঞতা তৈরি করতে গভীর লিঙ্কগুলি কীভাবে ব্যবহার করবেন তা শিখবেন।

RBM ব্যবহারকারীকে একটি অ্যাপে নিয়ে যাওয়া

একটি গভীর লিঙ্ক একটি অ্যাপের মধ্যে একটি লিঙ্ক। আপনার RBM এজেন্ট একটি OpenUrlAction ব্যবহার করে কারো ফোনে ইনস্টল করা একটি অ্যাপ খুলতে পারে যেখানে URL হল একটি গভীর লিঙ্ক যা আপনি যে অ্যাপটি চালু করতে চান তার জন্য কনফিগার করা হয়েছে। আপনি অ্যাপ সামগ্রীতে গভীর লিঙ্ক তৈরি করুন- এ আরও পড়তে পারেন।

এর একটি নির্দিষ্ট উদাহরণ তাকান. Google পডকাস্ট অ্যাপের মধ্যে Google ক্লাউড পডকাস্ট খুলতে, URI দিয়ে একটি OpenUrlAction তৈরি করা যেতে পারে:

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

অনেক Google পণ্য ডিপ লিঙ্কগুলিকে সমর্থন করার জন্য কনফিগার করা হয়েছে যা YouTube এবং Google মানচিত্র সহ ওয়েব URL হিসাবেও কাজ করে৷

একটি এজেন্ট থেকে এই অ্যাপগুলির যেকোনও ট্রিগার করতে, আমাদের একটি OpenUrlAction-এ URL হিসাবে এই মানটিকে নির্দিষ্ট করতে হবে। নীচের JSON নমুনায়, একটি RBM রিচ কার্ড তিনটি ওপেন ইউআরএল অ্যাকশন সহ নির্দিষ্ট করা হয়েছে, প্রতিটি আলাদা অ্যাপের সাথে গভীরভাবে লিঙ্ক করা হয়েছে।

{
    "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-এ এনকোড করা সামগ্রীতে চালু হয়।

Suggested URLs with app icons

কেন আপনি এই চায়?

আপনি একটি অ্যাপে ডিপ লিঙ্ক করতে চাইতে পারেন এমন বিভিন্ন কারণ রয়েছে।

প্রমাণীকরণ

আপনার এজেন্ট যদি সম্ভাব্য সংবেদনশীল তথ্য নিয়ে কাজ করে, তাহলে আপনার এজেন্টকে সুরক্ষিত রাখতে সাহায্য করার একটি উপায় হল আপনার অ্যাপের সাথে গভীর লিঙ্ক করা যাতে ব্যবহারকারীকে আঙ্গুলের ছাপ, লগইন বা অন্য কোনো উপায়ে প্রমাণীকরণ করতে সহায়তা করে। একবার ব্যবহারকারী সফলভাবে প্রমাণীকরণ করলে, আপনি প্রমাণীকরণ সার্ভার-সাইড ট্র্যাক করতে পারেন এবং একটি নতুন RBM বার্তা ট্রিগার করে ব্যবহারকারীকে এজেন্টের কাছে ফিরিয়ে আনতে পারেন। আপনি যদি কোনো সম্ভাব্য সংবেদনশীল ফলো-আপ বার্তা পাঠান, তাহলে ব্যবহারকারীর প্রমাণীকরণ নিশ্চিত করতে আপনি সার্ভার-সাইড চেক করতে পারেন। যদি তারা না থাকে, আপনি তাদের প্রমাণীকরণ টোকেন পুনর্নবীকরণ করতে তাদের অ্যাপে ফেরত পাঠাতে পারেন।

জটিল ব্যবহারের ক্ষেত্রে সমর্থন

RBM এজেন্ট কথোপকথনের জন্য দুর্দান্ত, তবে অ্যাপগুলি কিছু ব্যবহারের ক্ষেত্রে আরও ভালভাবে পরিবেশন করতে পারে। উদাহরণস্বরূপ, যদি আপনার একটি আসবাবপত্র কোম্পানি থাকে এবং আপনি একটি অগমেন্টেড রিয়েলিটি অভিজ্ঞতা তৈরি করেন যাতে ব্যবহারকারীরা তাদের বাড়িতে আসবাবপত্র ব্যবহার করে দেখতে পারেন (নীচের ছবিটি দেখুন), আপনার ব্যবহারের ক্ষেত্রে শুধুমাত্র একটি অ্যাপ দ্বারা সমর্থিত হতে পারে।

এই পরিস্থিতিতে, কিছু কার্যকারিতা চালানোর জন্য আপনার RBM ব্যবহারকারীদের আপনার অ্যাপে নির্দেশ করা আপনার পক্ষে বোধগম্য। আপনার অ্যাপ সবসময় একটি নতুন এজেন্ট মেসেজ ট্রিগার করে ব্যবহারকারীকে RBM কথোপকথনে ফিরিয়ে আনতে পারে।

Deep link into appDeep-linked app

অর্থ প্রদানের সুবিধা

আপনি গভীর লিঙ্কিং সহ একটি তৃতীয় পক্ষের অ্যাপের মাধ্যমে অর্থপ্রদান সমর্থন করতে পারেন।

উদাহরণ স্বরূপ, ধরুন আপনি কাল্পনিক পেমেন্ট কোম্পানি AcmePay-এর মাধ্যমে অর্থ স্থানান্তর সমর্থন করতে চান। অনলাইনে তদন্ত করে, আপনি আবিষ্কার করেছেন যে AcmePay তার নিজস্ব ইউআরআই কাঠামো ব্যবহার করে গভীর লিঙ্কিং সমর্থন করে যা আপনাকে প্রাপকদের মান, পরিমাণ এবং কোয়েরিস্ট্রিং প্যারামিটারের মাধ্যমে একটি নোট পাস করতে দেয়।

এই জ্ঞান দিয়ে সজ্জিত, আপনার এজেন্টকে প্রস্তাবিত অ্যাকশনের url অংশের জন্য নির্দিষ্ট করা প্যারামিটারাইজড AcmePay URI সহ একটি OpenUrlAction তৈরি করতে হবে।

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

RBM বার্তার প্রাপক একবার প্রস্তাবিত ক্রিয়াটিতে ট্যাপ করলে, AcmePay অ্যাপটি ইতিমধ্যেই পূরণ করা পাস-ইন মানগুলির সাথে সরাসরি লেনদেন স্ক্রিনে চালু হয়।

অ্যাপটি ইনস্টল না হলে কী হবে?

যদি কোনো অ্যাপ ব্যবহারকারীর ডিভাইসে ইনস্টল করা না থাকে, তাহলে গভীর লিঙ্কিং আচরণ OpenUrlAction-এ পাস করা URI-এর কাঠামোর উপর নির্ভর করে। যদি ডিভাইসে অন্তত একটি অ্যাপ দ্বারা URI শনাক্ত করা যায় (উদাহরণস্বরূপ Chrome "http://" দিয়ে শুরু হওয়া URLগুলিকে চিনতে পারে), তাহলে প্রস্তাবিত ক্রিয়াটি সেই অ্যাপে স্বাভাবিক হিসাবে প্রদর্শিত হবে। ব্যবহারকারী যখন অ্যাকশনে ট্যাপ করে, তখন যেকোন অ্যাপে URI স্ট্রাকচার চিনতে পারে সেখানে URI খোলে।

আপনি যদি অ্যাপ ডেভেলপার হন, তাহলে "http://" দিয়ে শুরু হওয়া URI-এর সাথে ডিপ লিঙ্ক করা এবং আপনার মালিকানাধীন একটি ডোমেনের দিকে নির্দেশ করা সুবিধাজনক কারণ Chrome একটি ফলব্যাক অ্যাকশন হিসেবে ব্যবহারকারীকে একটি ওয়েবপেজে নিয়ে যেতে পারে। ওয়েবপেজে, আপনি ব্যবহারকারীকে অ্যাপটি ডাউনলোড করতে বা আপনার ব্যবহারের ক্ষেত্রে উপযুক্ত বলে নির্দেশ দিতে পারেন।

এমন পরিস্থিতিতে যেখানে URI একটি কাস্টম কাঠামো ব্যবহার করে যা ডিভাইসের কোনো অ্যাপ দ্বারা স্বীকৃত নয়, তখন প্রস্তাবিত ক্রিয়াটি আপনার RBM বার্তায় রেন্ডার হবে না

আপনার প্রস্তাবিত ক্রিয়াগুলি সর্বদা প্রদর্শিত হয় তা নিশ্চিত করতে, আপনি আপনার মালিকানাধীন একটি URL ব্যবহার করতে পারেন এবং ব্রাউজারটিকে একটি কাস্টম ইউআরআই-এ পুনঃনির্দেশিত করার চেষ্টা করতে পারেন যা অ্যাপটি চালু করে৷ অ্যাপটি ডিভাইসে বিদ্যমান থাকলে, এটি প্রত্যাশিতভাবে চালু হয়। যদি না হয়, ব্যবহারকারী ওয়েবপৃষ্ঠায় থাকে, যেখানে আপনি আপনার ব্যবহারের ক্ষেত্রে প্রয়োজন অনুসারে তাদের নির্দেশ করতে পারেন।

নিচে জাভাস্ক্রিপ্ট দিয়ে কীভাবে এটি করা যায় তার একটি উদাহরণ দেওয়া হল। স্ক্রিপ্টটি ব্যবহারকারীকে 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 সাজেস্ট করা অ্যাকশন ব্যবহার করতে পারেন আপনার মালিকানাধীন অ্যাপের মধ্যে গভীর লিঙ্ক করার জন্য অথবা আপনি যে অ্যাপগুলিকে ট্রিগার করতে চান আপনার ব্যবহারকারীদের জড়িত করতে সাহায্য করতে। গভীর সংযোগের মাধ্যমে, আপনি আপনার ব্যবহারকারীদের জন্য একটি সমৃদ্ধ এবং আকর্ষক অভিজ্ঞতা প্রদান করতে পারেন বা সংবেদনশীল বিষয়বস্তু শেয়ার করার জন্য আরও উন্নত নিরাপত্তা প্রদান করতে পারেন।

শুভকামনা এবং সুখী কোডিং!