Video en vivo

La información multimedia, como el video en vivo, puede ser útil para los operadores de llamadas de emergencia en situaciones críticas. Por ejemplo:

  • Incidentes automovilísticos: Un video en vivo de la escena puede ayudar a comprender los vehículos involucrados.
  • Incendios: Para comprender el alcance del incendio y los daños
  • Emergencias médicas: Guiar a los usuarios a través de la RCP para salvar vidas

Ahora, el ELS puede interceptar un SMS iniciado por un operador que solicita video en vivo a un usuario y presentar una experiencia de video integrada. Como esta función es específicamente para situaciones de emergencia, tiene el beneficio de que el permiso de la cámara debe otorgarse previamente durante la emergencia.

Nuestros objetivos principales con esta función son brindarles a los usuarios lo siguiente:

  • Experiencia de video en vivo sin inconvenientes y sin permisos complejos
  • Experiencia coherente para todos los usuarios de Android

Cómo funciona

El flujo de video en vivo de ELS, que muestra cómo una llamada o un mensaje de texto de emergencia de un usuario de Android activa ELS, incluido un nuevo token de video en vivo. Cuando el software de recepción de llamadas detecta este token y lo reenvía al usuario de Android en un mensaje SMS con un vínculo a una transmisión de video en vivo de WebRTC, el SLE puede proporcionar una experiencia de video integrada.

Guía de integración

1. Receptor

Después de actualizar la configuración de ELS para habilitar el video en vivo, comenzarás a recibir el campo live_video_token en los mensajes de ELS a través de HTTPS cuando el teléfono de un usuario admita la función. La función es compatible con dispositivos Android 8 Oreo y versiones posteriores.

El token es un ID generado en el dispositivo que cambia con cada llamada o mensaje de texto y consta de lo siguiente:

  • 6 caracteres aleatorios
  • Alfanuméricos
  • Mayúscula

2. Invitación

Cuando detectes el token, pásalo a través de la URL, como un parámetro de URL, en el SMS que contiene el vínculo a tu transmisión de video, por ejemplo: https://example.com/live?token=AFZ791. El ELS detectará los mensajes SMS entrantes durante las llamadas o los mensajes de emergencia, y buscará el token de video en vivo correspondiente, que, en este caso, es AFZ791.

Cuando el dispositivo detecte una URL y un token válidos, se le mostrará al usuario un diálogo en el que se le preguntará si desea aceptar la solicitud. Si hace clic en Accept, el vínculo que se envió en el SMS de solicitud se abrirá en una experiencia de WebView integrada.

3. Experiencia de video en vivo

El vínculo de tu video en vivo debe admitir dos experiencias:

A. Experiencia basada en el navegador web:

Esto puede incluir tu propia IU personalizada, por ejemplo:

  • Botones
  • Solicitudes de ubicación
  • Diálogos y consentimientos

B. Experiencia integrada:

Para ello, debes hacer lo siguiente:

  • Quita todos los botones, ya que los eventos táctiles no funcionarán.
  • Se inicia directamente en la transmisión de video sin diálogos.

Detección

Puedes detectar el modo integrado observando el usuario-agente que contiene Live.

Ejemplo de usuario-agente en la experiencia del navegador para dispositivos móviles: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Mobile Safari/537.36

Ejemplo de agente de usuario en la experiencia de WebView integrada: 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

En JavaScript, esto se puede lograr con lo siguiente:

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

Permisos

  • El permiso para la cámara debe otorgarse previamente para el video en vivo integrado. Debes solicitar estos permisos de la manera habitual a través de JavaScript.
  • La ubicación, el audio y otros permisos se rechazarán automáticamente.

Contenido atractivo

Para brindar la mejor experiencia del usuario, la experiencia integrada proporcionará los elementos de la IU para cambiar la cámara y activar o desactivar la linterna.

Nombre de la función Volver Descripción
Cámara switchCamera Promise<bool> Al cargar, comienza con la cámara orientada hacia atrás (modo de orientación = entorno), ya que es la más útil en situaciones de emergencia. Alterna entre las cámaras disponibles cada vez que se llama a la función. Devuelve true si el cambio de cámara se realizó correctamente.
Linterna toggleFlashlight Promise<bool> Activa y desactiva la linterna cada vez que se llama a la función. Devuelve true si se activa o desactiva la linterna correctamente.
Linterna isFlashlightAvailable bool Devuelve true o false según la disponibilidad de la linterna para el modo de cámara actual. Después de una llamada a switchCamera, se supone que el valor de devolución refleja el estado de disponibilidad actualizado tan pronto como se resuelve el Promise de switchCamera.
Linterna isFlashlightOn bool Devuelve true cuando la linterna está encendida y false en caso contrario. Después de una llamada a toggleFlashlight, supone que el valor de devolución refleja el estado actualizado de la linterna en cuanto se resuelve el Promise de toggleFlashlight.