1syntax = "proto2"; 2 3package ecc; 4 5option java_package = "com.android.phone.ecc"; 6option java_outer_classname = "ProtobufEccData"; 7 8// EccInfo represents an Emergency Call Code (i.e. an emergency phone 9// number such as 911, 112, ...) 10message EccInfo { 11 enum Type { 12 TYPE_UNSPECIFIED = 0; 13 POLICE = 1; 14 AMBULANCE = 2; 15 FIRE = 3; 16 MARINE_GUARD = 4; 17 MOUNTAIN_RESCUE = 5; 18 MIEC = 6; 19 AIEC = 7; 20 } 21 22 enum Routing { 23 UNKNOWN = 0; 24 EMERGENCY = 1; 25 NORMAL= 2; 26 } 27 28 // Required: Every EccInfo shall contain a phone number. 29 optional string phone_number = 1; 30 31 // Extra rules: Every Ecc should have at least 1 valid type. 32 repeated Type types = 2 [packed=true]; 33 34 35 //Optional: By default, routing is assumed to be 'UNKNOWN' 36 optional Routing routing = 3 [default = UNKNOWN]; 37 38 //Optional: This field is evaluated only if routing is set to NORMAL 39 //If the field is empty, NORMAL routing is used for all MNCs 40 //Else normal routing is used only for list of MNCs specified 41 repeated string normal_routing_mncs = 4; 42 43} 44 45// CountryInfo represents available ECCs of a country/region, recognized 46// with ISO country code. 47message CountryInfo { 48 // Required: Every CountryInfo shall contain a ISO country code. 49 optional string iso_code = 1; 50 51 // Extra rules: There should be at least one EccInfo in this list. 52 repeated EccInfo eccs = 2; 53 54 // Required: Every CountryInfo shall contain a fallback number, shall 55 // be either 112 or 911. 56 // 57 // If an emergency number in EccInfo is declined by ril.ecclist, this 58 // fallback number may take the place. 59 // 60 // Per http://www.etsi.org/deliver/etsi_ts/122100_122199/122101/09.01.00_60/ts_122101v090100p.pdf, 61 // 112 and 911 shall always be available. 62 optional string ecc_fallback = 3; 63 64 // Required: Every CountryInfo shall specify whether emergency numbers sourced from modem config 65 // should be ignored. 66 // 67 // If this value is set to true, we have a pretty good authority of emergency numbers in the 68 // android emergency number db for this country. 69 optional bool ignore_modem_config = 4 [default = false]; 70} 71 72message AllInfo { 73 // The revision value in ecc/input/eccdata.json should be increased 74 // before releasing a new content. 75 // 76 // This field is not used to compare data revision for online updating. 77 // It's reserved for identifying ecc info problems. 78 optional int32 revision = 1; 79 80 // Extra rules: There should be at least one CountryInfo in this list. 81 repeated CountryInfo countries = 2; 82} 83 84