Экстренные номера и вызовы

Вызов экстренных служб – это основная и критически важная функция устройств, которая должна работать для пользователей Android и соответствовать требованиям операторов связи и нормативных документов по всему миру. Фреймворк Android позволяет пользователям быстро и безопасно совершать экстренные вызовы.

В Android 10 улучшена поддержка функций экстренного вызова, обслуживания и обновлений на локальной платформе Android. Для этого используется подробный список номеров экстренных служб, полученный с SIM-карты, из сети, модема и базы данных. В Android 10 также поддерживаются экстренные вызовы в зависимости от типа экстренной службы, например полиции, пожарной службы или скорой помощи. В Android 10 улучшена поддержка устройств с несколькими SIM-картами. Теперь номера экстренных служб из разных подписок передаются в TelephonyManager API.

В Android 10 с Radio HAL 1.4 экстренные вызовы отделены от обычных в интерфейсе HAL, чтобы оптимизировать путь экстренного вызова и позволить устройствам набирать подходящий номер экстренной службы, настроенный в базе данных Android.

Реализация

Чтобы реализовать функции экстренного вызова и номера экстренной службы, используйте следующие API TelephonyManager и аппаратного интерфейса.

API TelephonyManager

Реализуйте следующие API:

  • Реализуйте getEmergencyNumberList, чтобы получать действительные номера экстренных служб для экстренных вызовов на основе источника номера, включая региональные настройки, SIM-карты, настройки по умолчанию, модем, базу данных Android и сеть. Для каждого номера экстренной службы укажите соответствующую категорию, например "Полиция", "Скорая помощь" или "Пожарная служба".
  • Реализуйте isEmergencyNumber, чтобы определять, является ли номер телефона номером экстренной службы.
  • Используйте isPotentialEmergencyNumber, чтобы определить номер как номер экстренной службы, если он начинается с тех же цифр, что и любой из номеров экстренных служб.

Возможные значения источников номеров экстренных служб:

  • EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING: номер получен из сигнала сети.
  • EMERGENCY_NUMBER_SOURCE_SIM: номер с SIM-карты.
  • EMERGENCY_NUMBER_SOURCE_DATABASE: номер взят из базы данных, которую поддерживает платформа.
  • EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG: номер из конфигурации модема.
  • EMERGENCY_NUMBER_SOURCE_DEFAULT: номер доступен по умолчанию. Номера 112 и 911 должны быть доступны всегда. Номера 000, 08, 110, 999, 118 и 119 должны быть доступны, даже если SIM-карта отсутствует. Подробнее об этом можно узнать в разделе 10 спецификации 3GPP TS 22.101.

Значения для категорий экстренных служб:

  • UNSPECIFIED: общий экстренный вызов, все категории
  • POLICE: полиция
  • AMBULANCE: скорая помощь
  • FIRE_BRIGADE: пожарная бригада
  • MARINE_GUARD: Marine Guard
  • MOUNTAIN_RESCUE: спасательные работы в горах
  • MIEC: вызов экстренных служб, инициированный вручную (MIeC)
  • AIEC: автоматически инициированный вызов экстренных служб (AIeC).

Подробнее об этом можно узнать в разделе 10 "Экстренные вызовы" спецификации 3GPP TS 22.101.

API для работы с аппаратным интерфейсом

Реализуйте emergencyDial в IRadio.hal. Реализуйте emergencyDialResponse в IRadioResponse.hal, чтобы отправлять ответы с типом ответа, серийным номером и информацией об ошибке.

Чтобы сообщить текущий список номеров экстренных служб, реализуйте currentEmergencyNumberList в IRadioIndication.hal. Реализуйте EmergencyNumber в types.hal, который содержит информацию о номере экстренной службы, включая адрес, код мобильной страны (MCC), код мобильной сети (MNC), категорию экстренной службы, универсальный код ресурса (URN) экстренной службы и источник номера экстренной службы.

Чтобы указать, как обрабатывается экстренный вызов, используйте структурированные данные типа EmergencyCallRouting. Экстренный вызов можно запросить, используя маршрутизацию экстренных вызовов или обычную маршрутизацию вызовов. Если задано значение UNKNOWN, маршрутизация определяется на основе реализации.

Проверка

Чтобы проверить реализацию, запустите следующие тесты CTS и VTS.

Тесты CTS

Тесты VTS

Ссылки

Дополнительную информацию о технических спецификациях и стандартах можно найти в следующих статьях:

  • 3GPP TS 22.101, раздел 10 "Экстренные вызовы"
  • 3GPP TS 24.008, раздел 9.2.13.4: список экстренных номеров
  • 3GPP TS 23.167, раздел 6 "Функциональное описание"
  • 3GPP TS 24.503, раздел 5.1.6.8.1: Общие сведения
  • RFC 5031: Унифицированное имя ресурса (URN) для экстренных и других известных служб