
[
    // *********************************************************************************
    {  "name"    : "VOICE",
       "type"    : "Service" },

    // *********************************************************************************
    {  "name"    : "QMI Client Voice",
       "type"    : "Client" },

    // *********************************************************************************
    {  "name"    : "QMI Message Voice",
       "type"    : "Message-ID-Enum" },

    // *********************************************************************************
    {  "name"    : "QMI Indication Voice",
       "type"    : "Indication-ID-Enum" },

  // *********************************************************************************
  {  "name"    : "Get Supported Messages",
     "type"    : "Message",
     "service" : "VOICE",
     "id"      : "0x001E",
     "version" : "2.21",
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "name"               : "List",
                     "id"                 : "0x10",
                     "mandatory"          : "no",
                     "type"               : "TLV",
                     "format"             : "array",
                     "size-prefix-format" : "guint16",
                     "array-element"      : { "format" : "guint8" },
                     "prerequisites"      : [ { "common-ref" : "Success" } ] } ] },

    // *********************************************************************************
    {  "name"    : "Dial Call",
       "type"    : "Message",
       "service" : "VOICE",
       "id"      : "0x0020",
       "version" : "1.0",
       "input"   : [ { "name"          : "Calling Number",
                       "id"            : "0x01",
                       "mandatory"     : "yes",
                       "type"          : "TLV",
                       "format"        : "string" } ],
       "output"  : [ { "common-ref" : "Operation Result" },
                     { "name"      : "Call ID",
                       "id"        : "0x10",
                       "mandatory" : "no",
                       "type"      : "TLV",
                       "format"    : "guint8" } ] },

    // *********************************************************************************
    {  "name"    : "End Call",
       "type"    : "Message",
       "service" : "VOICE",
       "id"      : "0x0021",
       "version" : "1.0",
       "input"   : [ { "name"          : "Call ID",
                       "id"            : "0x01",
                       "mandatory"     : "yes",
                       "type"          : "TLV",
                       "format"        : "guint8" } ],
       "output"  : [ { "common-ref" : "Operation Result" },
                     { "name"      : "Call ID",
                       "id"        : "0x10",
                       "mandatory" : "no",
                       "type"      : "TLV",
                       "format"    : "guint8" } ] },

    // *********************************************************************************
    {  "name"    : "Answer Call",
       "type"    : "Message",
       "service" : "VOICE",
       "id"      : "0x0022",
       "version" : "1.0",
       "input"   : [ { "name"          : "Call ID",
                       "id"            : "0x01",
                       "mandatory"     : "yes",
                       "type"          : "TLV",
                       "format"        : "guint8" } ],
       "output"  : [ { "common-ref" : "Operation Result" },
                     { "name"      : "Call ID",
                       "id"        : "0x10",
                       "mandatory" : "no",
                       "type"      : "TLV",
                       "format"    : "guint8" } ] },

    // *********************************************************************************
    {  "name"    : "All Call Status",
       "type"    : "Indication",
       "service" : "VOICE",
       "id"      : "0x002E",
       "version" : "2.0",
       "output"  : [ { "name"               : "Call Information",
                       "id"                 : "0x01",
                       "mandatory"          : "yes",
                       "type"               : "TLV",
                       "format"             : "array",
                       "size-prefix-format" : "guint8",
                       "array-element"      : { "name"     : "Call",
                                                "format"   : "struct",
                                                "contents" : [ { "name"   : "ID",
                                                                 "format" : "guint8" },
                                                               { "name"          : "State",
                                                                 "format"        : "guint8",
                                                                 "public-format" : "QmiVoiceCallState" },
                                                               { "name"          : "Type",
                                                                 "format"        : "guint8",
                                                                 "public-format" : "QmiVoiceCallType" },
                                                               { "name"          : "Direction",
                                                                 "format"        : "guint8",
                                                                 "public-format" : "QmiVoiceCallDirection" },
                                                               { "name"          : "Mode",
                                                                 "format"        : "guint8",
                                                                 "public-format" : "QmiVoiceCallMode" },
                                                               { "name"          : "Multipart Indicator",
                                                                 "format"        : "guint8",
                                                                 "public-format" : "gboolean" },
                                                               { "name"          : "ALS",
                                                                 "format"        : "guint8",
                                                                 "public-format" : "QmiVoiceAls" } ] } },
                     { "name"               : "Remote Party Number",
                       "id"                 : "0x10",
                       "mandatory"          : "yes",
                       "type"               : "TLV",
                       "format"             : "array",
                       "size-prefix-format" : "guint8",
                       "array-element"      : { "name"     : "Call",
                                                "format"   : "struct",
                                                "contents" : [ { "name"   : "ID",
                                                                 "format" : "guint8" },
                                                               { "name"          : "Presentation Indicator",
                                                                 "format"        : "guint8",
                                                                 "public-format" : "QmiVoicePresentation" },
                                                               { "name"   : "Type",
                                                                 "format" : "string" } ] } } ] },

    // *********************************************************************************
    {  "name"    : "Get Config",
       "type"    : "Message",
       "service" : "VOICE",
       "id"      : "0x0041",
       "version" : "2.1",
       "input"   : [ { "name"          : "Auto Answer",
                       "id"            : "0x10",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "Air Timer",
                       "id"            : "0x11",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "Roam Timer",
                       "id"            : "0x12",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "TTY Mode",
                       "id"            : "0x13",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "Preferred Voice Service Option",
                       "id"            : "0x14",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "AMR Status",
                       "id"            : "0x15",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "Preferred Voice Privacy",
                       "id"            : "0x16",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "NAM Index",
                       "id"            : "0x17",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" },
                     { "name"          : "Voice Domain Preference",
                       "id"            : "0x18",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "gboolean" } ],
       "output" : [ { "common-ref" : "Operation Result" },
                    { "name"      : "Auto Answer Status",
                      "id"        : "0x10",
                      "mandatory" : "no",
                      "type"      : "TLV",
                      "format"    : "guint8",
                      "public-format" : "gboolean" },
                    { "name"      : "Air Timer Count",
                      "id"        : "0x11",
                      "mandatory" : "no",
                      "type"      : "TLV",
                      "format"    : "sequence",
                      "contents"  : [ { "name"   : "NAM ID",
                                        "format" : "guint8" },
                                      { "name"   : "Air Timer",
                                        "format" : "guint32" } ] },
                    { "name"      : "Roam Timer Count",
                      "id"        : "0x12",
                      "mandatory" : "no",
                      "type"      : "TLV",
                      "format"    : "sequence",
                      "contents"  : [ { "name"   : "NAM ID",
                                        "format" : "guint8" },
                                      { "name"   : "Roam Timer",
                                        "format" : "guint32" } ] },
                    { "name"          : "Current TTY Mode",
                      "id"            : "0x13",
                      "mandatory"     : "no",
                      "type"          : "TLV",
                      "format"        : "guint8",
                      "public-format" : "QmiVoiceTtyMode" },
                    { "name"      : "Current Preferred Voice SO",
                      "id"        : "0x14",
                      "mandatory" : "no",
                      "type"      : "TLV",
                      "format"    : "sequence",
                      "contents"  : [ { "name"   : "NAM ID",
                                        "format" : "guint8" },
                                      { "name"          : "EVRC Capability",
                                        "format"        : "guint8",
                                        "public-format" : "gboolean" },
                                      { "name"          : "Home Page Voice Service Option",
                                        "format"        : "guint16",
                                        "public-format" : "QmiVoiceServiceOption" },
                                      { "name"          : "Home Origination Voice Service Option",
                                        "format"        : "guint16",
                                        "public-format" : "QmiVoiceServiceOption" },
                                      { "name"          : "Roaming Origination Voice Service Option",
                                        "format"        : "guint16",
                                        "public-format" : "QmiVoiceServiceOption" } ] },
                    { "name"      : "Current AMR Status",
                      "id"        : "0x15",
                      "mandatory" : "no",
                      "type"      : "TLV",
                      "format"    : "sequence",
                      "contents" : [ { "name"          : "GSM",
                                       "format"        : "guint8",
                                       "public-format" : "gboolean" },
                                     { "name"          : "WCDMA",
                                       "format"        : "guint8",
                                       "public-format" : "QmiVoiceWcdmaAmrStatus" } ] },
                     { "name"          : "Current Voice Privacy Preference",
                       "id"            : "0x16",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "QmiVoicePrivacy" },
                     { "name"          : "Current Voice Domain Preference",
                       "id"            : "0x17",
                       "mandatory"     : "no",
                       "type"          : "TLV",
                       "format"        : "guint8",
                       "public-format" : "QmiVoiceDomain" } ] }

]
