Merge "Add Emergency Uniform Resource Name (URN)"
This commit is contained in:
commit
8baf2a13be
3 changed files with 53 additions and 33 deletions
|
@ -103,14 +103,14 @@ interface IRadio extends @1.3::IRadio {
|
|||
oneway setDataProfile_1_4(int32_t serial, vec<DataProfileInfo> profiles);
|
||||
|
||||
/**
|
||||
* Initiate emergency voice call, with zero or more emergency service category(s) and routing
|
||||
* information for handling the call. Android uses this request to make its emergency call
|
||||
* instead of using @1.0::IRadio.dial if the 'address' in the 'dialInfo' field is identified
|
||||
* as an emergency number by Android.
|
||||
* Initiate emergency voice call, with zero or more emergency service category(s), zero or
|
||||
* more emergency Uniform Resource Names (URN), and routing information for handling the call.
|
||||
* Android uses this request to make its emergency call instead of using @1.0::IRadio.dial
|
||||
* if the 'address' in the 'dialInfo' field is identified as an emergency number by Android.
|
||||
*
|
||||
* In multi-sim senario, this radio request is sent through the IRadio service that serves
|
||||
* the subscription the emergency number belongs to, no matter of the PUK/PIN state of the
|
||||
* subscription and the service state.
|
||||
* In multi-sim scenario, if the emergency number is from a specific subscription, this radio
|
||||
* request is sent through the IRadio service that serves the subscription, no matter of the
|
||||
* PUK/PIN state of the subscription and the service state of the radio.
|
||||
*
|
||||
* Some countries or carriers require some emergency numbers that must be handled with normal
|
||||
* call routing or emergency routing. If the 'routing' field is specified as
|
||||
|
@ -120,22 +120,29 @@ interface IRadio extends @1.3::IRadio {
|
|||
* @1.4::EmergencyNumberRouting#UNKNOWN, Android does not know how to handle the call.
|
||||
*
|
||||
* If the dialed emergency number does not have a specified emergency service category, the
|
||||
* 'categories' field is set to @1.4::EmergencyServiceCategory#UNSPECIFIED; if the underlying
|
||||
* technology used to request emergency services does not support the emergency service
|
||||
* category, the categories may be ignored.
|
||||
* 'categories' field is set to @1.4::EmergencyServiceCategory#UNSPECIFIED; if the dialed
|
||||
* emergency number does not have specified emergency Uniform Resource Names, the 'urns' field
|
||||
* is set to an empty list. If the underlying technology used to request emergency services
|
||||
* does not support the emergency service category or emergency uniform resource names, the
|
||||
* field 'categories' or 'urns' may be ignored.
|
||||
*
|
||||
* Reference: 3gpp TS 22.101, Section 10 - Emergency Calls
|
||||
* Reference: 3gpp 22.101, Section 10 - Emergency Calls;
|
||||
* 3gpp 23.167, Section 6 - Functional description;
|
||||
* 3gpp 24.503, Section 5.1.6.8.1 - General;
|
||||
* RFC 5031
|
||||
*
|
||||
* @param serial Serial number of request.
|
||||
* @param dialInfo the same @1.0::Dial information used by @1.0::IRadio.dial.
|
||||
* @param categories bitfield<@1.4::EmergencyServiceCategory> the Emergency Service Category(s)
|
||||
* of the call.
|
||||
* @param urns the emergency Uniform Resource Names (URN)
|
||||
* @param routing @1.4::EmergencyCallRouting the emergency call routing information.
|
||||
*
|
||||
* Response function is IRadioResponse.emergencyDialResponse()
|
||||
*/
|
||||
oneway emergencyDial(int32_t serial, Dial dialInfo,
|
||||
bitfield<EmergencyServiceCategory> categories, EmergencyCallRouting routing);
|
||||
bitfield<EmergencyServiceCategory> categories, vec<string> urns,
|
||||
EmergencyCallRouting routing);
|
||||
|
||||
/**
|
||||
* Starts a network scan
|
||||
|
|
|
@ -27,22 +27,24 @@ interface IRadioIndication extends @1.3::IRadioIndication {
|
|||
* Report the current list of emergency numbers
|
||||
*
|
||||
* Each emergency number (@1.4::EmergencyNumber) in the emergency number list contains a
|
||||
* dialing number, zero or more service category(s), mobile country code, mobile network code,
|
||||
* and source(s) that indicate where it comes from.
|
||||
* dialing number, zero or more service category(s), zero or more emergency uniform resource
|
||||
* names, mobile country code, mobile network code, and source(s) that indicate where it comes
|
||||
* from.
|
||||
*
|
||||
* Radio must report all the valid emergency numbers with known mobile country code, mobile
|
||||
* network code and emergency service categories from all available sources including network
|
||||
* signaling, sim, modem/oem configuration, and default configuration (112 and 911 must be
|
||||
* always available; additionally, 000, 08, 110, 999, 118 and 119 must be available when sim
|
||||
* is not present). Radio shall not report emergency numbers that are invalid in the current
|
||||
* locale. The reported emergency number list must not have duplicate @1.4::EmergencyNumber
|
||||
* entries. Please refer the documentation of @1.4::EmergencyNumber to construct each
|
||||
* emergency number to report.
|
||||
* network code, emergency service categories, and emergency uniform resource names from all
|
||||
* available sources including network signaling, sim, modem/oem configuration, and default
|
||||
* configuration (112 and 911 must be always available; additionally, 000, 08, 110, 999, 118
|
||||
* and 119 must be available when sim is not present). Radio shall not report emergency numbers
|
||||
* that are invalid in the current locale. The reported emergency number list must not have
|
||||
* duplicate @1.4::EmergencyNumber entries. Please refer the documentation of
|
||||
* @1.4::EmergencyNumber to construct each emergency number to report.
|
||||
*
|
||||
* Radio must report the complete list of emergency numbers whenever the emergency numbers in
|
||||
* the list are changed or whenever the client and the radio server are connected.
|
||||
*
|
||||
* Reference: 3gpp 22.101, Section 10 - Emergency Calls
|
||||
* Reference: 3gpp 22.101, Section 10 - Emergency Calls;
|
||||
* 3gpp 24.008, Section 9.2.13.4 - Emergency Number List
|
||||
*
|
||||
* @param type Type of radio indication
|
||||
* @param emergencyNumberList Current list of emergency numbers known to radio.
|
||||
|
|
|
@ -52,20 +52,27 @@ enum AccessNetwork : @1.2::AccessNetwork {
|
|||
};
|
||||
|
||||
/**
|
||||
* Emergency number contains information of number, one or more service category(s), mobile country
|
||||
* code (mcc), mobile network country (mnc) and source(s) that indicate where it comes from.
|
||||
* Emergency number contains information of number, one or more service category(s), zero or more
|
||||
* emergency uniform resource names, mobile country code (mcc), mobile network country (mnc) and
|
||||
* source(s) that indicate where it comes from.
|
||||
*
|
||||
* If the source of the emergency number is associated with country, field ‘mcc’ must be provided;
|
||||
* otherwise the field ‘mcc’ must be an empty string.
|
||||
* If the emergency number is associated with country, field ‘mcc’ must be provided, otherwise
|
||||
* field ‘mcc’ must be an empty string. If the emergency number is associated with network
|
||||
* operator, field ‘mcc’ and 'mnc' must be provided, otherwise field ‘mnc’ must be an empty
|
||||
* string. If the emergency number is specified with emergency service category(s), field
|
||||
* 'categories' must be provided, otherwise field 'categories' must be
|
||||
* @1.4::EmergencyServiceCategories::UNSPECIFIED. If the emergency number is specified with
|
||||
* emergency uniform resource names (URN), field 'urns' must be provided, otherwise field 'urns'
|
||||
* must be an empty list.
|
||||
*
|
||||
* If the source of the emergency number is associated with network operator, field ‘mcc’ and
|
||||
* 'mnc' must be provided; otherwise the field ‘mnc’ must be an empty string.
|
||||
* A unique EmergencyNumber has a unique combination of ‘number’, ‘mcc’, 'mnc', 'categories' and
|
||||
* 'urns' fields. Multiple @1.4::EmergencyNumberSource should be merged into one 'sources' field
|
||||
* via bitwise-OR combination for the same EmergencyNumber.
|
||||
*
|
||||
* A unique EmergencyNumber has a unique combination of ‘number’, ‘mcc’, 'mnc' and 'categories'
|
||||
* fields. Multiple @1.4::EmergencyNumberSource should be merged into the bitfield for the same
|
||||
* EmergencyNumber.
|
||||
*
|
||||
* Reference: 3GPP TS 22.101 version 9.1.0 Release 9
|
||||
* Reference: 3gpp 22.101, Section 10 - Emergency Calls;
|
||||
* 3gpp 23.167, Section 6 - Functional description;
|
||||
* 3gpp 24.503, Section 5.1.6.8.1 - General;
|
||||
* RFC 5031
|
||||
*/
|
||||
struct EmergencyNumber{
|
||||
/**
|
||||
|
@ -86,6 +93,10 @@ struct EmergencyNumber{
|
|||
* the value of each bit.
|
||||
*/
|
||||
bitfield<EmergencyServiceCategory> categories;
|
||||
/**
|
||||
* The list of emergency Uniform Resource Names (URN).
|
||||
*/
|
||||
vec<string> urns;
|
||||
/**
|
||||
* The bitfield of @1.4::EmergencyNumberSource(s). See @1.4::EmergencyNumberSource for the
|
||||
* value of each bit.
|
||||
|
|
Loading…
Reference in a new issue