Numéros d'urgence et appels d'urgence

Les appels d'urgence sont fondamentaux et essentiels pour les appareils, car ils doivent fonctionner pour les utilisateurs Android tout en répondant aux diverses exigences des opérateurs et des autorités réglementaires du monde entier. Le framework Android offre aux utilisateurs une expérience d'appel d'urgence rapide et sécurisée.

Android 10 offre une meilleure prise en charge des fonctions d'appel d'urgence, de la maintenance et des mises à jour sur la plate-forme Android locale en utilisant une liste détaillée des numéros d'urgence de la carte SIM, du réseau, du modem et de la base de données. Android 10 prend également en charge les appels d'urgence en fonction du type de services d'urgence, comme la police, les pompiers ou les ambulances. Android 10 offre une meilleure prise en charge des appareils avec plusieurs cartes SIM en partageant les numéros d'urgence de plusieurs abonnements dans l'API TelephonyManager.

Dans Android 10 avec Radio HAL 1.4, les appels d'urgence sont améliorés en séparant les appels d'urgence des appels normaux dans l'interface HAL afin d'optimiser le chemin d'appel d'urgence et d'autoriser les appareils à composer le numéro d'urgence approprié configuré dans la base de données Android.

Implémentation

Pour implémenter les fonctions d'appel d'urgence et de numéro d'urgence, implémentez les API TelephonyManager et d'interface matérielle suivantes.

API TelephonyManager

Implémentez les API suivantes:

  • Implémentez getEmergencyNumberList pour obtenir des numéros d'urgence valides pour les appels d'urgence en fonction de la source de numéros d'urgence, y compris les paramètres régionaux, les cartes SIM, la valeur par défaut, le modem, la base de données Android et le réseau. Pour chaque numéro d'urgence, spécifiez la catégorie de service d'urgence correspondante, comme la police, les premiers secours et les pompiers.
  • Implémentez isEmergencyNumber pour déterminer si un numéro de téléphone est un numéro d'urgence.
  • Implémentez isPotentialEmergencyNumber pour identifier un numéro comme un numéro d'urgence s'il commence par les mêmes chiffres que l'un des numéros d'urgence.

Les valeurs des sources de numéros d'urgence sont les suivantes:

  • EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING: le nombre provient du signal réseau
  • EMERGENCY_NUMBER_SOURCE_SIM: le numéro provient de la carte SIM
  • EMERGENCY_NUMBER_SOURCE_DATABASE: le nombre provient de la base de données gérée par la plate-forme
  • EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG: le numéro provient de la configuration du modem
  • EMERGENCY_NUMBER_SOURCE_DEFAULT: le numéro est disponible par défaut. Les numéros 112 et 911 doivent toujours être disponibles. Les valeurs 000, 08, 110, 999, 118 et 119 doivent être disponibles lorsqu'aucune carte SIM n'est présente. Pour en savoir plus, consultez la section 10: Appels d'urgence de la 3GPP TS 22.101.

Les valeurs des catégories de services d'urgence sont les suivantes:

  • UNSPECIFIED: appel d'urgence général, toutes les catégories
  • POLICE: Police
  • AMBULANCE: ambulance
  • FIRE_BRIGADE: Brigade de pompiers
  • MARINE_GUARD: garde maritime
  • MOUNTAIN_RESCUE: sauvetage en montagne
  • MIEC: eCall déclenché manuellement (MIeC)
  • AIEC: eCall déclenché automatiquement (AIeC)

Pour en savoir plus, consultez la section 10: Appels d'urgence de la norme 3GPP TS 22.101.

API d'interface matérielle

Implémentez emergencyDial dans IRadio.hal. Implémentez emergencyDialResponse dans IRadioResponse.hal pour envoyer une réponse avec le type de réponse, le numéro de série et les informations d'erreur.

Pour signaler la liste actuelle des numéros d'urgence, implémentez currentEmergencyNumberList dans IRadioIndication.hal. Implémentez EmergencyNumber dans types.hal, qui contient des informations sur le numéro d'urgence, y compris l'adresse numérique, le mobile country code (MCC), le mobile network code (MNC), la catégorie de service d'urgence, le nom de ressource uniforme d'urgence (URN) et la source du numéro d'urgence.

Pour indiquer comment un appel d'urgence est géré, utilisez EmergencyCallRouting. Un appel d'urgence peut être demandé à l'aide du routage d'urgence ou du routage d'appel normal, selon les besoins. Si la valeur est UNKNOWN, le routage est décidé en fonction de l'implémentation.

Validation

Pour valider votre implémentation, exécutez les tests CTS et VTS suivants.

Tests CTS

Tests VTS

Références

Pour en savoir plus sur les spécifications techniques et les normes associées, consultez les documents suivants: