Números de emergencia y llamadas de emergencia

Las llamadas de emergencia son fundamentales y críticas para los dispositivos, ya que deben funcionar para los usuarios de Android y, al mismo tiempo, cumplir con varios de los requisitos reglamentarios y de operadores de todo el mundo. El framework de Android les brinda a los usuarios una experiencia de llamadas de emergencia rápida y segura.

Android 10 proporciona compatibilidad mejorada para las funciones de llamadas de emergencia, el mantenimiento y las actualizaciones en la plataforma local de Android mediante una lista detallada de números de emergencia de la SIM, la red, el módem y la base de datos. Android 10 también admite llamadas de emergencia según el tipo de servicio de emergencia, como policía, bomberos o ambulancia. Android 10 proporciona compatibilidad mejorada para dispositivos con varias SIMs, ya que comparte números de emergencia de varias suscripciones en la API de TelephonyManager.

En Android 10 con la HAL de Radio 1.4, se mejora la llamada de emergencia, ya que se separan las llamadas de emergencia de las normales en la interfaz de HAL para optimizar la ruta de llamadas de emergencia y permitir que los dispositivos marquen el número de emergencia adecuado configurado en la base de datos de Android.

Implementación

Para implementar las funciones de llamadas de emergencia y números de emergencia, implementa las siguientes APIs de interfaz de hardware y TelephonyManager.

APIs de TelephonyManager

Implementa las siguientes APIs:

  • Implementa getEmergencyNumberList para obtener números de emergencia válidos para llamadas de emergencia según la fuente de números de emergencia, incluida la configuración regional, las tarjetas SIM, la configuración predeterminada, el módem, la base de datos de Android y la red. Para cada número de emergencia, especifica la categoría de servicio de emergencia correspondiente, como policía, ambulancia y bomberos.
  • Implementa isEmergencyNumber para identificar si un número de teléfono es de emergencia.
  • Implementa isPotentialEmergencyNumber para identificar un número como número de emergencia si tiene los mismos dígitos iniciales que cualquiera de los números de emergencia.

Los valores de las fuentes de números de emergencia son los siguientes:

  • EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING: El número proviene de la señal de red.
  • EMERGENCY_NUMBER_SOURCE_SIM: El número proviene de la tarjeta SIM.
  • EMERGENCY_NUMBER_SOURCE_DATABASE: El número proviene de la base de datos que mantiene la plataforma.
  • EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG: El número proviene de la configuración del módem.
  • EMERGENCY_NUMBER_SOURCE_DEFAULT: El número está disponible de forma predeterminada. Los números 112 y 911 deben estar siempre disponibles. 000, 08, 110, 999, 118 y 119 deben estar disponibles cuando no hay ninguna SIM. Para obtener más detalles, consulta la Sección 10: Llamadas de emergencia en el 3GPP TS 22.101.

Los valores de las categorías de servicios de emergencia son los siguientes:

  • UNSPECIFIED: Llamada de emergencia general, todas las categorías
  • POLICE: Policía
  • AMBULANCE: Ambulancia
  • FIRE_BRIGADE: Cuerpo de bomberos
  • MARINE_GUARD: Guardia costera
  • MOUNTAIN_RESCUE: Rescate de montaña
  • MIEC: Llamada electrónica iniciada de forma manual (MIeC)
  • AIEC: Llamada de emergencia automática (AIeC)

Para obtener más detalles, consulta la Sección 10: Llamadas de emergencia en 3GPP TS 22.101.

APIs de interfaz de hardware

Implementa emergencyDial en IRadio.hal. Implementa emergencyDialResponse en IRadioResponse.hal para enviar una respuesta con tipo de respuesta, información del error y número de serie.

Para informar la lista actual de números de emergencia, implementa currentEmergencyNumberList en IRadioIndication.hal. Implementa EmergencyNumber en types.hal, que contiene información sobre el número de emergencia, incluida la dirección del número, el código de país de móvil (MCC), el código de red móvil (MNC), la categoría de servicio de emergencia, el nombre de recurso uniforme (URN) de emergencia y la fuente del número de emergencia.

Para indicar cómo se maneja una llamada de emergencia, usa EmergencyCallRouting. Se puede solicitar una llamada de emergencia mediante el enrutamiento de emergencia o el enrutamiento de llamadas normal según sea necesario. Si es UNKNOWN, el enrutamiento se decide en función de la implementación.

Validación

Para validar tu implementación, ejecuta las siguientes pruebas de CTS y VTS.

Pruebas de CTS

Pruebas de VTS

Referencias

Para obtener más información sobre las especificaciones y los estándares técnicos relacionados, consulta lo siguiente: