ข้อมูลมัลติมีเดีย เช่น วิดีโอสด อาจเป็นประโยชน์ต่อผู้รับสายโทรฉุกเฉินในสถานการณ์วิกฤต เช่น
- เหตุการณ์เกี่ยวกับรถยนต์: วิดีโอสดของฉากเหตุการณ์จะช่วยให้เข้าใจถึง ยานพาหนะที่เกี่ยวข้อง
- ไฟ: เพื่อทำความเข้าใจขอบเขตของเปลวเพลิงและความเสียหาย
- เหตุฉุกเฉินทางการแพทย์: แนะนำผู้ใช้เกี่ยวกับ CPR เพื่อช่วยชีวิต
ตอนนี้ ELS สามารถสกัดกั้น SMS ที่ผู้รับสายเป็นผู้เริ่มส่งเพื่อขอวิดีโอสดจากผู้ใช้และนำเสนอประสบการณ์การใช้งานวิดีโอแบบผสานรวมได้แล้ว เนื่องจากฟีเจอร์นี้มีไว้สำหรับสถานการณ์ฉุกเฉินโดยเฉพาะ จึงมีข้อดีคือควรให้สิทธิ์เข้าถึงกล้องล่วงหน้าตลอดระยะเวลาที่เกิดเหตุฉุกเฉิน
เป้าหมายหลักของเราในการพัฒนาฟีเจอร์นี้คือการมอบสิ่งต่อไปนี้ให้แก่ผู้ใช้
- ประสบการณ์การใช้งานวิดีโอสดที่ราบรื่นโดยไม่ต้องมีสิทธิ์ที่ซับซ้อน
- ประสบการณ์การใช้งานที่สอดคล้องกันสำหรับผู้ใช้ Android ทุกคน
วิธีการทำงาน
คู่มือการผสานรวม
1. รับบอล
หลังจากอัปเดตการกำหนดค่า ELS เพื่อเปิดใช้ฟีเจอร์วิดีโอสดแล้ว คุณจะเริ่มได้รับฟิลด์ live_video_token ในข้อความ ELS ของ HTTPS เมื่อโทรศัพท์ของผู้ใช้รองรับฟีเจอร์นี้
ฟีเจอร์นี้รองรับอุปกรณ์ Android 8 Oreo ขึ้นไป
โทเค็นคือรหัสที่สร้างขึ้นในอุปกรณ์ซึ่งจะเปลี่ยนไปตามการโทรหรือข้อความแต่ละครั้ง และประกอบด้วยข้อมูลต่อไปนี้
- อักขระแบบสุ่ม 6 ตัว
- ตัวอักษรและตัวเลขคละกัน
- ตัวพิมพ์ใหญ่
2. คำเชิญ
เมื่อตรวจพบโทเค็น ให้ส่งผ่านโทเค็นใน URL เช่น พารามิเตอร์ URL
ใน SMS ที่มีลิงก์ไปยังวิดีโอสตรีม เช่น
https://example.com/live?token=AFZ791 ELS จะตรวจหาข้อความ SMS ขาเข้า
ระหว่างการโทรหรือส่งข้อความฉุกเฉิน และมองหาโทเค็นวิดีโอสดที่ตรงกัน ในกรณีนี้คือ AFZ791
เมื่ออุปกรณ์ตรวจพบ URL และโทเค็นที่ถูกต้อง ผู้ใช้จะเห็น
กล่องโต้ตอบที่ถามว่าต้องการยอมรับคำขอหรือไม่ หากผู้ใช้คลิก
Accept ระบบจะเปิดลิงก์ที่ส่งใน SMS คำขอของคุณในประสบการณ์การใช้งาน
WebView ที่ผสานรวม
3. ประสบการณ์การใช้งานวิดีโอสด
ลิงก์วิดีโอสดต้องรองรับประสบการณ์การใช้งาน 2 แบบต่อไปนี้
ก. ประสบการณ์การใช้งานบนเว็บเบราว์เซอร์
ซึ่งอาจรวมถึง UI ที่กำหนดเองของคุณเอง เช่น
- ปุ่ม
- คำขอตำแหน่ง
- กล่องโต้ตอบและความยินยอม
ข. ประสบการณ์การใช้งานแบบผสานรวม
โดยคุณต้องทำดังนี้
- นำปุ่มทั้งหมดออกเนื่องจากเหตุการณ์การแตะจะไม่ทำงาน
- เริ่มสตรีมวิดีโอโดยตรงโดยไม่มีกล่องโต้ตอบ
การตรวจจับ
คุณตรวจหาโหมดผสานรวมได้โดยสังเกต User Agent ที่มี
Live
ตัวอย่าง User Agent ในประสบการณ์การใช้งานเบราว์เซอร์บนอุปกรณ์เคลื่อนที่ Mozilla/5.0 (Linux; Android
10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Mobile
Safari/537.36
ตัวอย่าง User Agent ในประสบการณ์ WebView แบบผสานรวม: 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 สำหรับวิดีโอสดที่ผสานรวม
- ระบบจะปฏิเสธสิทธิ์เข้าถึงตำแหน่ง เสียง และสิทธิ์อื่นๆ โดยอัตโนมัติ
ฮุก
เพื่อมอบประสบการณ์การใช้งานที่ดีที่สุดแก่ผู้ใช้ ประสบการณ์การใช้งานแบบผสานรวมจะมี องค์ประกอบ UI สำหรับพลิกกล้องและเปิด/ปิดไฟฉาย
| ชื่อฟังก์ชัน | รีเทิร์น | คำอธิบาย | |
|---|---|---|---|
| กล้อง | switchCamera |
Promise<bool> |
เมื่อโหลด ให้เริ่มด้วยกล้องหลัง (โหมดหัน = สภาพแวดล้อม) เนื่องจากมีประโยชน์มากที่สุดในสถานการณ์ฉุกเฉิน สลับระหว่างกล้องที่พร้อมใช้งานทุกครั้งที่มีการเรียกใช้ฟังก์ชัน ส่งคืน true เมื่อเปลี่ยนกล้องสำเร็จ |
| ไฟฉาย | toggleFlashlight |
Promise<bool> |
เปิดและปิดไฟฉายทุกครั้งที่มีการเรียกใช้ฟังก์ชัน ส่งคืน true เมื่อเปิด/ปิดไฟฉายสำเร็จ |
| ไฟฉาย | isFlashlightAvailable |
bool |
แสดง true หรือ false ขึ้นอยู่กับความพร้อมใช้งานของไฟฉายสำหรับโหมดกล้องปัจจุบัน หลังจากเรียกใช้ switchCamera แล้ว จะถือว่าค่าที่ส่งคืนแสดงถึงสถานะความพร้อมใช้งานที่อัปเดตทันทีที่ Promise ของ switchCamera แก้ไข |
| ไฟฉาย | isFlashlightOn |
bool |
แสดง true เมื่อไฟฉายเปิดอยู่ และ false ในกรณีอื่นๆ หลังจากเรียกใช้ toggleFlashlight แล้ว ให้ถือว่าค่าที่แสดงผลจะแสดงสถานะไฟฉายที่อัปเดตทันทีที่ Promise ของ toggleFlashlight แก้ไข |