लाइव वीडियो

लाइव वीडियो जैसी मल्टीमीडिया जानकारी, आपातकालीन कॉल लेने वालों के लिए मुश्किल समय में मददगार हो सकती है. उदाहरण के लिए:

  • कार से जुड़ी दुर्घटनाएं: घटनास्थल का लाइव वीडियो देखने से, उन्हें दुर्घटना में शामिल वाहनों के बारे में जानकारी मिल सकती है.
  • आग: आग की लपटों और नुकसान का पता लगाने के लिए.
  • मेडिकल इमरजेंसी: लोगों की जान बचाने के लिए, सीपीआर के बारे में जानकारी देना.

अब ईएलएस, कॉल लेने वाले व्यक्ति के भेजे गए उस एसएमएस को इंटरसेप्ट कर सकता है जिसमें उपयोगकर्ता से लाइव वीडियो दिखाने का अनुरोध किया गया हो. साथ ही, ईएलएस लाइव वीडियो दिखाने की सुविधा उपलब्ध करा सकता है. यह सुविधा खास तौर पर आपातकालीन स्थितियों के लिए है. इसलिए, इसका फ़ायदा यह है कि आपातकालीन स्थिति के दौरान, कैमरे को ऐक्सेस करने की अनुमति पहले से ही दी जानी चाहिए.

इस सुविधा को उपलब्ध कराने के हमारे मुख्य लक्ष्य ये हैं:

  • बिना किसी रुकावट के लाइव वीडियो देखने की सुविधा, जिसके लिए जटिल अनुमतियों की ज़रूरत नहीं होती
  • Android का इस्तेमाल करने वाले सभी लोगों को एक जैसा अनुभव मिले

यह कैसे काम करता है

ईएलएस लाइव वीडियो फ़्लो. इसमें दिखाया गया है कि Android उपयोगकर्ता के आपातकालीन कॉल या मैसेज से, ईएलएस कैसे ट्रिगर होता है. इसमें नया लाइव वीडियो टोकन भी शामिल है. जब कॉल लेने वाला सॉफ़्टवेयर इस टोकन का पता लगाता है और इसे Android उपयोगकर्ता को एसएमएस मैसेज में वापस भेजता है, तो ईएलएस, लाइव WebRTC वीडियो स्ट्रीम के लिंक के साथ इंटिग्रेटेड वीडियो अनुभव दे सकता है.

इंटिग्रेशन गाइड

1. रिसीविंग

लाइव वीडियो की सुविधा चालू करने के लिए, ईएलएस कॉन्फ़िगरेशन अपडेट करने के बाद, आपको एचटीटीपीएस ईएलएस मैसेज में live_video_token फ़ील्ड दिखने लगेगा. ऐसा तब होगा, जब किसी उपयोगकर्ता का फ़ोन इस सुविधा के साथ काम करता हो. यह सुविधा, Android 8 Oreo और इसके बाद के वर्शन वाले डिवाइसों पर काम करती है.

टोकन, डिवाइस पर जनरेट किया गया एक आईडी होता है. यह हर कॉल या मैसेज के साथ बदलता है. इसमें ये शामिल होते हैं:

  • छह वर्णों का रैंडम कोड
  • अक्षर और अंक दोनों शामिल हो सकते हैं
  • अपरकेस

2. Invitation

टोकन का पता चलने पर, उसे यूआरएल में पास करें. जैसे, वीडियो स्ट्रीम के लिंक वाले एसएमएस में यूआरएल पैरामीटर. उदाहरण के लिए: https://example.com/live?token=AFZ791. आपातकालीन कॉल या टेक्स्ट के दौरान, ईएलएस को आने वाले एसएमएस मैसेज का पता चलेगा. साथ ही, वह लाइव वीडियो टोकन से मेल खाने वाले टोकन की तलाश करेगा. इस मामले में, वह AFZ791 है.

जब डिवाइस को मान्य यूआरएल और टोकन का पता चलता है, तो उपयोगकर्ता को एक डायलॉग दिखाया जाएगा. इसमें पूछा जाएगा कि क्या वह अनुरोध स्वीकार करना चाहता है. अगर वे Accept पर क्लिक करते हैं, तो अनुरोध वाले एसएमएस में भेजा गया लिंक, इंटिग्रेटेड वेबव्यू में खुलेगा.

3. लाइव वीडियो देखने का अनुभव

आपके लाइव वीडियो के लिंक में, ये दो सुविधाएं काम करनी चाहिए:

A. वेब ब्राउज़र पर उपलब्ध सुविधा:

इसमें आपका कस्टम यूज़र इंटरफ़ेस (यूआई) शामिल हो सकता है. उदाहरण के लिए:

  • बटन
  • जगह की जानकारी के अनुरोध
  • डायलॉग और सहमति

B. इंटिग्रेट किया गया अनुभव:

इसके लिए, आपको:

  • सभी बटन हटाएं, क्योंकि टच इवेंट काम नहीं करेंगे
  • डायलॉग बॉक्स के बिना सीधे वीडियो स्ट्रीम शुरू करना

पहचान करना

Live वाले उपयोगकर्ता एजेंट को देखकर, इंटिग्रेटेड मोड का पता लगाया जा सकता है.

मोबाइल ब्राउज़र पर उपयोगकर्ता एजेंट का उदाहरण: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Mobile Safari/537.36

इंटिग्रेट किए गए वेबव्यू की सुविधा में उपयोगकर्ता एजेंट का उदाहरण: Mozilla/5.0 (Linux; Android 10; K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/125.000 Mobile Safari/537.36 Live/25.23.10

JavaScript में, इसे इस तरह से हासिल किया जा सकता है:

if (navigator.userAgent.includes("Live")) {
    <!-- Render integrated experience -->
} else {
    <!-- Render your your own custom UI -->
}

अनुमतियां

  • लाइव वीडियो को इंटिग्रेट करने के लिए, कैमरे का ऐक्सेस पहले से दिया जाना चाहिए. आपको JavaScript के ज़रिए, सामान्य तरीके से इन अनुमतियों का अनुरोध करना चाहिए.
  • जगह की जानकारी, ऑडियो, और अन्य अनुमतियां अपने-आप अस्वीकार कर दी जाएंगी.

हुक

उपयोगकर्ताओं को बेहतरीन अनुभव देने के लिए, इंटिग्रेट किए गए अनुभव में, कैमरा फ़्लिप करने और फ़्लैशलाइट चालू/बंद करने के लिए यूज़र इंटरफ़ेस (यूआई) एलिमेंट उपलब्ध कराए जाएंगे.

फ़ंक्शन का नाम वापसी का टिकट ब्यौरा
कैमरा switchCamera Promise<bool> लोड होने पर, पीछे की ओर लगे कैमरे (फ़ेसिंग मोड = एनवायरमेंट) से शुरू करें, क्योंकि यह आपातकालीन स्थितियों में सबसे ज़्यादा काम आता है. फ़ंक्शन को कॉल किए जाने पर, उपलब्ध कैमरों के बीच स्विच करें. कैमरे पर स्विच करने के बाद, true दिखाता है.
फ़्लैशलाइट toggleFlashlight Promise<bool> फ़ंक्शन को कॉल किए जाने पर, फ़्लैशलाइट को चालू और बंद करें. फ़्लैशलाइट चालू/बंद होने पर true दिखाता है.
फ़्लैशलाइट isFlashlightAvailable bool यह फ़ंक्शन, मौजूदा कैमरा मोड के लिए फ़्लैशलाइट की उपलब्धता के आधार पर true या false दिखाता है. switchCamera को कॉल करने के बाद, यह मान लेता है कि switchCamera के Promise के हल होते ही, रिटर्न वैल्यू में उपलब्धता की अपडेट की गई स्थिति दिखती है.
फ़्लैशलाइट isFlashlightOn bool फ़्लैशलाइट चालू होने पर, true दिखाता है. फ़्लैशलाइट बंद होने पर, false दिखाता है. toggleFlashlight को कॉल करने के बाद, यह मान लेता है कि टॉर्च की चालू/बंद स्थिति को अपडेट करने वाली वैल्यू, toggleFlashlight के Promise के पूरा होते ही दिख जाएगी