Informacje multimedialne, takie jak transmisja wideo na żywo, mogą być przydatne dla osób odbierających połączenia alarmowe w sytuacjach kryzysowych. Na przykład:
- Wypadki samochodowe: film na żywo z miejsca zdarzenia może pomóc zrozumieć, jakie pojazdy brały w nim udział.
- Pożary: aby określić zasięg pożaru i skalę zniszczeń.
- Nagłe przypadki medyczne: instrukcje dotyczące resuscytacji krążeniowo-oddechowej, które mogą uratować życie.
ELS może teraz przechwytywać zainicjowane przez operatora SMS-y z prośbą o transmisję na żywo od użytkownika i prezentować zintegrowany obraz wideo. Ponieważ jest to funkcja przeznaczona specjalnie na sytuacje awaryjne, ma tę zaletę, że uprawnienia do korzystania z kamery powinny być wstępnie przyznane na czas trwania sytuacji awaryjnej.
Główne cele tej funkcji to zapewnienie użytkownikom:
- bezproblemowe transmisje wideo na żywo bez skomplikowanych uprawnień,
- spójne wrażenia dla wszystkich użytkowników Androida,
Jak to działa
Przewodnik po integracji
1. Wyłapania
Po zaktualizowaniu konfiguracji usługi ELS w celu włączenia transmisji wideo na żywo zaczniesz otrzymywać pole live_video_token w wiadomościach ELS przesyłanych przez HTTPS, gdy telefon użytkownika będzie obsługiwać tę funkcję. Ta funkcja jest obsługiwana na urządzeniach z Androidem 8 Oreo i nowszym.
Token to identyfikator generowany na urządzeniu, który zmienia się przy każdym wywołaniu lub tekście i składa się z:
- 6 losowych znaków
- Znaki alfanumeryczne
- Wielkie litery
2. Zaproszenie
Gdy wykryjesz token, przekaż go w adresie URL, np. w parametrze adresu URL, w SMS-ie zawierającym link do strumienia wideo, np.: https://example.com/live?token=AFZ791. ELS wykryje przychodzące SMS-y podczas połączeń lub wiadomości tekstowych w sytuacji awaryjnej i wyszuka pasujący token wideo na żywo, w tym przypadku: AFZ791.
Gdy urządzenie wykryje prawidłowy adres URL i token, użytkownikowi wyświetli się okno z pytaniem, czy chce zaakceptować żądanie. Jeśli klikną Accept, link wysłany w SMS-ie z prośbą o połączenie zostanie otwarty w zintegrowanym widoku internetowym.
3. Transmisja na żywo
Link do filmu na żywo musi obsługiwać 2 rodzaje treści:
A. Wersja przeglądarkowa:
Może to obejmować np. własny interfejs:
- Przyciski
- Prośby o lokalizację
- Okna i zgody
B. Zintegrowane środowisko:
W tym celu musisz:
- Usuń wszystkie przyciski, ponieważ zdarzenia dotknięcia nie będą działać.
- bezpośrednie uruchamianie strumienia wideo bez okien dialogowych;
Wykrywanie
Tryb zintegrowany możesz rozpoznać po tym, że ciąg znaków klienta użytkownika zawiera znak Live.
Przykładowy klient użytkownika w przeglądarce mobilnej: Mozilla/5.0 (Linux; Android
10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Mobile
Safari/537.36
Przykładowy ciąg znaków klienta użytkownika w zintegrowanym widoku internetowym: 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
W JavaScript można to osiągnąć w ten sposób:
if (navigator.userAgent.includes("Live")) {
<!-- Render integrated experience -->
} else {
<!-- Render your your own custom UI -->
}
Uprawnienia
- Uprawnienia dostępu do kamery powinny być wstępnie przyznane w przypadku zintegrowanego filmu na żywo. Musisz poprosić o nie w zwykły sposób za pomocą JavaScriptu.
- Lokalizacja, dźwięk i inne uprawnienia zostaną automatycznie odrzucone.
Elementy przykuwające uwagę
Aby zapewnić użytkownikom jak najlepsze wrażenia, w zintegrowanym interfejsie udostępnimy elementy interfejsu do przełączania kamery i włączania/wyłączania latarki.
| Nazwa funkcji | Powrót | Opis | |
|---|---|---|---|
| Aparat | switchCamera |
Promise<bool> |
Po wczytaniu zacznij od tylnego aparatu (tryb skierowania = otoczenie), ponieważ jest on najbardziej przydatny w sytuacjach awaryjnych. Przełączanie między dostępnymi aparatami za każdym razem, gdy funkcja jest wywoływana. Zwróć true po pomyślnym przełączeniu aparatu. |
| Latarka | toggleFlashlight |
Promise<bool> |
Włączaj i wyłączaj latarkę za każdym razem, gdy funkcja jest wywoływana. Zwraca true, jeśli latarka została włączona. |
| Latarka | isFlashlightAvailable |
bool |
Zwraca wartość true lub false w zależności od dostępności latarki w bieżącym trybie aparatu. Po wywołaniu funkcji switchCamera zakłada, że wartość zwracana odzwierciedla zaktualizowany stan dostępności, gdy tylko obietnica Promise funkcji switchCamera zostanie spełniona. |
| Latarka | isFlashlightOn |
bool |
Zwraca wartość true, gdy latarka jest włączona, a w przeciwnym razie false. Po wywołaniu funkcji toggleFlashlight zakłada, że wartość zwracana odzwierciedla zaktualizowany stan włączonej latarki, gdy tylko funkcja toggleFlashlight Promise zostanie rozwiązana. |