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

  // *********************************************************************************
  {  "name"    : "QMI Client WDS",
     "type"    : "Client",
     "since"   : "1.0" },

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

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

  // *********************************************************************************
  {  "name"    : "Reset",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0000",
     "version" : "1.0",
     "since"   : "1.0",
     "output"  : [  { "common-ref" : "Operation Result" } ] },

  // *********************************************************************************
  {  "name"    : "Set Event Report",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0001",
     "version" : "1.0",
     "since"   : "1.18",
     "input"   : [  { "name"          : "Channel Rate",
                      "id"            : "0x10",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Transfer Statistics",
                      "id"            : "0x11",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "sequence",
                      "contents"  : [ { "name"          : "Interval Seconds",
                                        "format"        : "guint8" },
                                      { "name"          : "Indicators",
                                        "format"        : "gint32",
                                        "public-format" : "QmiWdsSetEventReportTransferStatistics" } ] },
                    { "name"          : "Data Bearer Technology",
                      "id"            : "0x12",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Dormancy Status",
                      "id"            : "0x13",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "MIP Status",
                      "id"            : "0x14",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8" },
                    { "name"          : "Current Data Bearer Technology",
                      "id"            : "0x15",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Data Call Status",
                      "id"            : "0x17",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Preferred Data System",
                      "id"            : "0x18",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "EVDO PM Change",
                      "id"            : "0x19",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Data Systems",
                      "id"            : "0x1A",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Uplink Flow Control",
                      "id"            : "0x1B",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Limited Data System Status",
                      "id"            : "0x1C",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "PDN Filter Removals",
                      "id"            : "0x1D",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Extended Data Bearer Technology",
                      "id"            : "0x1E",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" } ],
     "output"  : [  { "common-ref" : "Operation Result" } ] },

  {  "name"    : "Event Report",
     "type"    : "Indication",
     "service" : "WDS",
     "id"      : "0x0001",
     "since"   : "1.18",
     "output"  : [  { "name"      : "Tx Packets Ok",
                      "id"        : "0x10",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "guint32" },
                    { "name"      : "Rx Packets Ok",
                      "id"        : "0x11",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "guint32" },
                    { "name"      : "Tx Packets Error",
                      "id"        : "0x12",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "guint32" },
                    { "name"      : "Rx Packets Error",
                      "id"        : "0x13",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "guint32" },
                    { "name"      : "Tx Overflows",
                      "id"        : "0x14",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "guint32" },
                    { "name"      : "Rx Overflows",
                      "id"        : "0x15",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "guint32" },
                    { "name"      : "Channel Rates",
                      "id"        : "0x16",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "sequence",
                      "contents"  : [ { "name"   : "Tx Rate BPS",
                                        "format" : "gint32" },
                                      { "name"   : "Rx Rate BPS",
                                        "format" : "gint32" } ] },
                    { "name"          : "Data Bearer Technology",
                      "id"            : "0x17",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "gint8",
                      "public-format" : "QmiWdsDataBearerTechnology" },
                    { "name"          : "Dormancy Status",
                      "id"            : "0x18",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsDormancyStatus" },
                    { "name"          : "Tx Bytes Ok",
                      "id"            : "0x19",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint64" },
                    { "name"          : "Rx Bytes Ok",
                      "id"            : "0x1A",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint64" },
                    { "name"          : "MIP Status",
                      "id"            : "0x1B",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Current Data Bearer Technology",
                      "id"            : "0x1D",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "sequence",
                      "contents"      : [ { "name"          : "Network Type",
                                            "format"        : "guint8",
                                            "public-format" : "QmiWdsNetworkType" },
                                          { "name"   : "RAT Mask",
                                            "format" : "guint32" },
                                          { "name"   : "SO Mask",
                                            "format" : "guint32" } ] },
                    { "name"          : "Data Call Status",
                      "id"            : "0x1F",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsDataCallStatus" },
                    { "name"          : "Preferred Data System",
                      "id"            : "0x20",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint32",
                      "public-format" : "QmiWdsDataSystem" },
                    { "name"          : "Data Call Type",
                      "id"            : "0x22",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "sequence",
                      "contents"      : [ { "name"          : "Data Call Type",
                                            "format"        : "guint8",
                                            "public-format" : "QmiWdsDataCallType" },
                                          { "name"          : "Tethered Call Type",
                                            "format"        : "guint8",
                                            "public-format" : "QmiWdsTetheredCallType" } ] },
                    { "name"          : "EVDO Page Monitor Period Change",
                      "id"            : "0x23",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "sequence",
                      "contents"      : [ { "name"          : "Period Change",
                                            "format"        : "guint8" },
                                          { "name"          : "Force Long Sleep",
                                            "format"        : "guint8",
                                            "public-format" : "gboolean" } ] },
                    { "name"          : "Data Systems",
                      "id"            : "0x24",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "sequence",
                      "contents"      : [ { "name"               : "Preferred Network Type",
                                            "format"             : "guint8",
                                            "public-format"      : "QmiWdsDataSystemNetworkType" },
                                          { "name"               : "Networks",
                                            "format"             : "array",
                                            "size-prefix-format" : "guint8",
                                            "array-element"      : { "name"     : "Network",
                                                                     "format"   : "struct",
                                                                     "contents" : [ { "name"          : "Network Type",
                                                                                      "format"        : "guint8",
                                                                                      "public-format" : "QmiWdsDataSystemNetworkType" },
                                                                                    { "name"   : "RAT Mask",
                                                                                      "format" : "guint32" },
                                                                                    { "name"   : "SO Mask",
                                                                                      "format" : "guint32" } ] } } ] },
                    { "name"          : "Tx Packets Dropped",
                      "id"            : "0x25",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint32" },
                    { "name"          : "Rx Packets Dropped",
                      "id"            : "0x26",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "guint32" },
                    { "name"          : "Uplink Flow Control Enabled",
                      "id"            : "0x27",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      "format"        : "gint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Data Call Address Family",
                      "id"            : "0x28",
                      "type"          : "TLV",
                      "since"         : "1.18",
                      // Yes, TLV wants a u32
                      "format"        : "guint32",
                      "public-format" : "QmiWdsIpFamily" },
                    { "name"      : "PDN Filters Removed",
                      "id"        : "0x29",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "PDN Filter Handler",
                                        "format"        : "array",
                                        "size-prefix-format" : "guint8",
                                        "array-element" : { "format": "guint32" } } ] },
                    { "name"      : "Extended Data Bearer Technology",
                      "id"        : "0x2A",
                      "type"      : "TLV",
                      "since"     : "1.18",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Data Bearer Technology",
                                        "format"        : "guint32",
                                        "public-format" : "QmiWdsDataSystemNetworkType" },
                                      { "name"          : "Radio Access Technology",
                                        "format"        : "guint32",
                                        "public-format" : "QmiWdsRadioAccessTechnology" },
                                      { "name"          : "Extended Data Bearer Technology 3GPP",
                                        "format"        : "guint16",
                                        "public-format" : "QmiWdsExtendedDataBearerTechnology3gpp" },
                                      { "name"          : "Reserved1",
                                        "visible"       : "no",
                                        "format"        : "guint8" },
                                      { "name"          : "Extended Data Bearer Technology 3GPP2",
                                        "format"        : "guint16",
                                        "public-format" : "QmiWdsExtendedDataBearerTechnology3gpp2" },
                                      { "name"          : "Reserved2",
                                        "visible"       : "no",
                                        "format"        : "guint8" },
                                      { "name"          : "Reserved3",
                                        "visible"       : "no",
                                        "format"        : "guint8" },
                                      { "name"          : "Reserved4",
                                        "visible"       : "no",
                                        "format"        : "guint8" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Abort",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0002",
     "version" : "1.0",
     "since"   : "1.0",
     // This magic tag allows us to avoid creating a method in the client
     "scope"   : "library-only",
     "input"   : [  { "name"      : "Transaction ID",
                      "id"        : "0x01",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint16" } ],
     "output"  : [  { "common-ref" : "Operation Result" } ] },

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

  // *********************************************************************************
  {  "name"    : "Start Network",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0020",
     "version" : "1.0",
     "since"   : "1.0",
     // This method may be aborted
     "abort"   : "yes",
     "input"   : [  { "name"      : "Primary DNS Address Preference",
                      "id"        : "0x10",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32" },
                    { "name"      : "Secondary DNS Address Preference",
                      "id"        : "0x11",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32" },
                    { "name"      : "Primary NBNS Address Preference",
                      "id"        : "0x12",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32" },
                    { "name"      : "Secondary NBNS Address Preference",
                      "id"        : "0x13",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32" },
                    { "name"      : "APN",
                      "id"        : "0x14",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "string" },
                    { "name"      : "IPv4 Address Preference",
                      "id"        : "0x15",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32" },
                    { "name"          : "Authentication Preference",
                      "id"            : "0x16",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsAuthentication" },
                    { "name"      : "Username",
                      "id"        : "0x17",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "string" },
                    { "name"      : "Password",
                      "id"        : "0x18",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "string" },
                    { "name"          : "IP Family Preference",
                      "id"            : "0x19",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsIpFamily" },
                    { "name"          : "Technology Preference",
                      "id"            : "0x30",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsTechnologyPreference" },
                    { "name"      : "Profile Index 3GPP",
                      "id"        : "0x31",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint8" },
                    { "name"      : "Profile Index 3GPP2",
                      "id"        : "0x32",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint8" },
                    { "name"          : "Enable Autoconnect",
                      "id"            : "0x33",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "gboolean" },
                    { "name"          : "Extended Technology Preference",
                      "id"            : "0x34",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      // Note: docs give this as gint16 with negative enum values. Instead, we use
                      // guint16 with equivalent positive enum values.
                      "format"        : "guint16",
                      "public-format" : "QmiWdsExtendedTechnologyPreference" },
                    { "name"          : "Call Type",
                      "id"            : "0x35",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsCallType" } ],
     "output"  : [  { "common-ref" : "Operation Result" },
                    { "name"      : "Packet Data Handle",
                      "id"        : "0x01",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32",
                      "prerequisites": [ { "common-ref" : "Success" } ] },
                    { "name"          : "Call End Reason",
                      "id"            : "0x10",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint16",
                      "public-format" : "QmiWdsCallEndReason",
                      "prerequisites" : [ { "field"     : "Result.Error Status",
                                            "operation" : "!=",
                                            "value"     : "QMI_STATUS_SUCCESS" },
                                          { "field"     : "Result.Error Code",
                                            "operation" : "==",
                                            "value"     : "QMI_PROTOCOL_ERROR_CALL_FAILED" } ] },
                    { "name"      : "Verbose Call End Reason",
                      "id"        : "0x11",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Type",
                                        "format"        : "guint16",
                                        "public-format" : "QmiWdsVerboseCallEndReasonType" },
                                      { "name"   : "Reason",
                                        "format" : "gint16" } ],
                      "prerequisites": [ { "field"     : "Result.Error Status",
                                           "operation" : "!=",
                                           "value"     : "QMI_STATUS_SUCCESS" },
                                         { "field"     : "Result.Error Code",
                                           "operation" : "==",
                                           "value"     : "QMI_PROTOCOL_ERROR_CALL_FAILED" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Stop Network",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0021",
     "version" : "1.0",
     "since"   : "1.0",
     "input"   : [  { "name"      : "Packet Data Handle",
                      "id"        : "0x01",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32" },
                    { "name"          : "Disable Autoconnect",
                      "id"            : "0x10",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "gboolean" } ],
     "output"  : [  { "common-ref" : "Operation Result" } ] },

  // *********************************************************************************
  {  "name"    : "Get Packet Service Status",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0022",
     "version" : "1.0",
     "since"   : "1.0",
     "output"  : [  { "common-ref" : "Operation Result" },
                    { "name"          : "Connection Status",
                      "id"            : "0x01",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsConnectionStatus",
                      "prerequisites" : [ { "common-ref" : "Success" } ] } ] },

  {  "name"    : "Packet Service Status",
     "type"    : "Indication",
     "service" : "WDS",
     "id"      : "0x0022",
     "version" : "1.0",
     "since"   : "1.14",
     "output"  : [ { "name"          : "Connection Status",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "sequence",
                     "contents"      : [ { "name"          : "Status",
                                           "format"        : "guint8",
                                           "public-format" : "QmiWdsConnectionStatus" },
                                         { "name"          : "Reconfiguration Required",
                                           "format"        : "guint8",
                                           "public-format" : "gboolean" } ] },
                   { "name"          : "Call End Reason",
                     "id"            : "0x10",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "guint16",
                     "public-format" : "QmiWdsCallEndReason" },
                   { "name"      : "Verbose Call End Reason",
                     "id"        : "0x11",
                     "type"      : "TLV",
                     "since"     : "1.14",
                     "format"    : "sequence",
                     "contents"  : [ { "name"          : "Type",
                                       "format"        : "guint16",
                                       "public-format" : "QmiWdsVerboseCallEndReasonType" },
                                     { "name"   : "Reason",
                                       "format" : "gint16" } ] },
                    { "name"          : "IP Family",
                      "id"            : "0x12",
                      "type"          : "TLV",
                      "since"         : "1.14",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsIpFamily" },
                    { "name"          : "Extended Technology Preference",
                      "id"            : "0x34",
                      "type"          : "TLV",
                      "since"         : "1.14",
                      // Note: docs give this as gint16 with negative enum values. Instead, we use
                      // guint16 with equivalent positive enum values.
                      "format"        : "guint16",
                      "public-format" : "QmiWdsExtendedTechnologyPreference" } ] },

  // *********************************************************************************
  {  "name"    : "Get Channel Rates",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0023",
     "version" : "1.0",
     "since"   : "1.20",
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "name"       : "Channel Rates",
                      "id"        : "0x01",
                      "type"      : "TLV",
                      "since"     : "1.0",
                     "format"     : "sequence",
                     "contents"   : [ { "name"          : "Channel TX Rate BPS",
                                        "format"        : "guint32" },
                                      { "name"          : "Channel RX Rate BPS",
                                        "format"        : "guint32" },
                                      { "name"          : "Max Channel TX Rate BPS",
                                        "format"        : "guint32" },
                                      { "name"          : "Max Channel RX Rate BPS",
                                        "format"        : "guint32" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Get Packet Statistics",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0024",
     "version" : "1.0",
     "since"   : "1.6",
     "input"   : [ { "name"          : "Mask",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "public-format" : "QmiWdsPacketStatisticsMaskFlag" } ],
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "name"          : "Tx Packets Ok",
                     "id"            : "0x10",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Rx Packets Ok",
                     "id"            : "0x11",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Tx Packets Error",
                     "id"            : "0x12",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Rx Packets Error",
                     "id"            : "0x13",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Tx Overflows",
                     "id"            : "0x14",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Rx Overflows",
                     "id"            : "0x15",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Tx Bytes Ok",
                     "id"            : "0x19",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint64",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Rx Bytes Ok",
                     "id"            : "0x1A",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint64",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   // Note: last call TX/RX given along with QMI Error 'out of call'
                   { "name"          : "Last Call Tx Bytes Ok",
                     "id"            : "0x1B",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint64" },
                   { "name"          : "Last Call Rx Bytes Ok",
                     "id"            : "0x1C",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint64" },
                   { "name"          : "Tx Packets Dropped",
                     "id"            : "0x1D",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Rx Packets Dropped",
                     "id"            : "0x1E",
                     "type"          : "TLV",
                     "since"         : "1.6",
                     "format"        : "guint32",
                     "prerequisites" : [ { "common-ref" : "Success" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Go Dormant",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0025",
     "version" : "1.0",
     "since"   : "1.18",
     "output"  : [ { "common-ref" : "Operation Result" } ] },

  // *********************************************************************************
  {  "name"    : "Go Active",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0026",
     "version" : "1.0",
     "since"   : "1.18",
     "output"  : [ { "common-ref" : "Operation Result" } ] },

  // *********************************************************************************
  {  "name"    : "Create Profile",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0027",
     "version" : "1.1",
     "since"   : "1.18",
     "input"   : [ { "name"          : "Profile Type",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.18",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsProfileType" },
                   { "common-ref"    : "WDS Profile Name",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Type",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Header Compression Type",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Data Compression Type",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS APN Name",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Primary IPv4 DNS Address",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Secondary IPv4 DNS Address",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Requested QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Minimum QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS GPRS Requested QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS GPRS Minimum QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Username",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Password",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Authentication",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv4 Address Preference",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PCSCF Address Using PCO",
                     "since"         : "1.18" },
                   // 0x20, PDP access control flag
                   { "common-ref"    : "WDS PCSCF Address Using DHCP",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IMCN Flag",
                     "since"         : "1.18" },
                   // 0x23, TFT ID1 Parameters
                   // 0x24, TFT ID2 Parameters
                   { "common-ref"    : "WDS PDP Context Number",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Context Secondary Flag",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Context Primary ID",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv6 Address Preference",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Requested QoS With Signaling Indication Flag",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Minimum QoS With Signaling Indication Flag",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv6 Primary DNS Address Preference",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv6 Secondary DNS Address Preference",
                     "since"         : "1.18" },
                   // 0x2D, DHCP/NAS Preference
                   { "common-ref"    : "WDS LTE QoS Parameters",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS APN Disabled Flag",
                     "since"         : "1.22" },
                   // 0x30, PDN inactivity timeout
                   // 0x31, APN class
                   { "common-ref"    : "WDS Roaming Disallowed Flag",
                     "since"         : "1.22" } ],
                   // 0x90, Negotiate DNS server preference
                   // 0x91, PPP session close timer for DO
                   // 0x92, PPP session close timer for 1X
                   // 0x93, Allow/disallow lingering of interface
                   // 0x94, LCP ACK timeout
                   // 0x95, IPCP ACK timeout
                   // 0x96, AUTH timeout
                   // 0x97, LCP configuration request retry count value
                   // 0x98, IPCP configuration request retry count value
                   // 0x99, Authentication retry
                   // 0x9A, Authentication protocol,
                   // 0x9B, User ID
                   // 0x9C, Authentication password
                   // 0x9D, Data rate
                   // 0x9E, Application type
                   // 0x9F, Data mode
                   // 0xA0, Application priority
                   // 0xA1, APN string
                   // 0xA2, PDN type
                   // 0xA3, Is PCSCF address needed
                   // 0xA4, IPv4 Primary DNS address
                   // 0xA5, IPv4 Secondary DNS address
                   // 0xA6, IPv6 Primary DNS address
                   // 0xA7, IPv6 Secondary DNS address
                   // 0xA8, RAT type
                   // 0xA9, APN enabled
                   // 0xAA, PDN inactivity timeout
                   // 0xAB, APN class
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "common-ref"    : "WDS Profile Identifier",
                     "since"         : "1.18",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "common-ref" : "WDS Extended Error Code",
                     "since"      : "1.18" } ] },

  // *********************************************************************************
  {  "name"    : "Modify Profile",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0028",
     "version" : "1.1",
     "since"   : "1.18",
     "input"   : [ { "common-ref"    : "WDS Profile Identifier",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Profile Name",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Type",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Header Compression Type",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Data Compression Type",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS APN Name",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Primary IPv4 DNS Address",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Secondary IPv4 DNS Address",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Requested QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Minimum QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS GPRS Requested QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS GPRS Minimum QoS",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Username",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Password",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS Authentication",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv4 Address Preference",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PCSCF Address Using PCO",
                     "since"         : "1.18" },
                   // 0x20, PDP access control flag
                   { "common-ref"    : "WDS PCSCF Address Using DHCP",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IMCN Flag",
                     "since"         : "1.18" },
                   // 0x23, TFT ID1 Parameters
                   // 0x24, TFT ID2 Parameters
                   { "common-ref"    : "WDS PDP Context Number",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Context Secondary Flag",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS PDP Context Primary ID",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv6 Address Preference",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Requested QoS With Signaling Indication Flag",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS UMTS Minimum QoS With Signaling Indication Flag",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv6 Primary DNS Address Preference",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS IPv6 Secondary DNS Address Preference",
                     "since"         : "1.18" },
                   // 0x2D, DHCP/NAS Preference
                   { "common-ref"    : "WDS LTE QoS Parameters",
                     "since"         : "1.18" },
                   { "common-ref"    : "WDS APN Disabled Flag",
                     "since"         : "1.22" },
                   // 0x30, PDN inactivity timeout
                   // 0x31, APN class
                   { "common-ref"    : "WDS Roaming Disallowed Flag",
                     "since"         : "1.22" } ],
                   // 0x90, Negotiate DNS server preference
                   // 0x91, PPP session close timer for DO
                   // 0x92, PPP session close timer for 1X
                   // 0x93, Allow/disallow lingering of interface
                   // 0x94, LCP ACK timeout
                   // 0x95, IPCP ACK timeout
                   // 0x96, AUTH timeout
                   // 0x97, LCP configuration request retry count value
                   // 0x98, IPCP configuration request retry count value
                   // 0x99, Authentication retry
                   // 0x9A, Authentication protocol,
                   // 0x9B, User ID
                   // 0x9C, Authentication password
                   // 0x9D, Data rate
                   // 0x9E, Application type
                   // 0x9F, Data mode
                   // 0xA0, Application priority
                   // 0xA1, APN string
                   // 0xA2, PDN type
                   // 0xA3, Is PCSCF address needed
                   // 0xA4, IPv4 Primary DNS address
                   // 0xA5, IPv4 Secondary DNS address
                   // 0xA6, IPv6 Primary DNS address
                   // 0xA7, IPv6 Secondary DNS address
                   // 0xA8, RAT type
                   // 0xA9, APN enabled
                   // 0xAA, PDN inactivity timeout
                   // 0xAB, APN class
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "common-ref" : "WDS Extended Error Code",
                     "since"      : "1.18" } ] },

  // *********************************************************************************
  {  "name"    : "Delete Profile",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0029",
     "version" : "1.1",
     "since"   : "1.18",
     "input"   : [ { "common-ref" : "WDS Profile Identifier",
                     "since"      : "1.18" } ],
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "common-ref" : "WDS Extended Error Code",
                     "since"      : "1.18" } ] },

  // *********************************************************************************
  {  "name"    : "Get Profile List",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x002A",
     "version" : "1.1",
     "since"   : "1.8",
     "input"   : [ { "name"          : "Profile Type",
                     "id"            : "0x10",
                     "type"          : "TLV",
                     "since"         : "1.8",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsProfileType" } ],
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "name"          : "Profile List",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.8",
                     "format"        : "array",
                     "array-element" : { "name"     : "Profile",
                                         "format"   : "struct",
                                         "contents" : [ { "name"          : "Profile Type",
                                                          "format"        : "guint8",
                                                          "public-format" : "QmiWdsProfileType" },
                                                        { "name"   : "Profile Index",
                                                          "format" : "guint8" },
                                                        { "name"   : "Profile Name",
                                                          "format" : "string" } ] },
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "common-ref" : "WDS Extended Error Code",
                     "since"      : "1.8" } ] },

  // *********************************************************************************
  {  "name"    : "Get Profile Settings",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x002B",
     "version" : "1.1",
     "since"   : "1.8",
     "input"   : [ { "name"      : "Profile ID",
                     "id"        : "0x01",
                     "type"      : "TLV",
                     "since"     : "1.8",
                     "format"    : "sequence",
                     "contents"  : [ { "name"          : "Profile Type",
                                       "format"        : "guint8",
                                       "public-format" : "QmiWdsProfileType" },
                                     { "name"          : "Profile Index",
                                       "format"        : "guint8" } ] } ],
     "output"  : [  { "common-ref"    : "Operation Result" },
                    { "common-ref"    : "WDS Profile Name",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Type",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Header Compression Type",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Data Compression Type",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS APN Name",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Primary IPv4 DNS Address",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Secondary IPv4 DNS Address",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Requested QoS",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Minimum QoS",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS GPRS Requested QoS",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS GPRS Minimum QoS",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Username",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Password",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Authentication",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv4 Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PCSCF Address Using PCO",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x20, PDP access control flag
                    { "common-ref"    : "WDS PCSCF Address Using DHCP",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IMCN Flag",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x23, TFT ID1 Parameters
                    // 0x24, TFT ID2 Parameters
                    { "common-ref"    : "WDS PDP Context Number",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Context Secondary Flag",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Context Primary ID",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv6 Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Requested QoS With Signaling Indication Flag",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Minimum QoS With Signaling Indication Flag",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv6 Primary DNS Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv6 Secondary DNS Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x2D, DHCP/NAS Preference
                    { "common-ref"    : "WDS LTE QoS Parameters",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS APN Disabled Flag",
                      "since"         : "1.22",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x30, PDN inactivity timeout
                    // 0x31, APN class
                    { "common-ref"    : "WDS Roaming Disallowed Flag",
                      "since"         : "1.22",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x90, Negotiate DNS server preference
                    // 0x91, PPP session close timer for DO
                    // 0x92, PPP session close timer for 1X
                    // 0x93, Allow/disallow lingering of interface
                    // 0x94, LCP ACK timeout
                    // 0x95, IPCP ACK timeout
                    // 0x96, AUTH timeout
                    // 0x97, LCP configuration request retry count value
                    // 0x98, IPCP configuration request retry count value
                    // 0x99, Authentication retry
                    // 0x9A, Authentication protocol,
                    // 0x9B, User ID
                    // 0x9C, Authentication password
                    // 0x9D, Data rate
                    // 0x9E, Application type
                    // 0x9F, Data mode
                    // 0xA0, Application priority
                    // 0xA1, APN string
                    // 0xA2, PDN type
                    // 0xA3, Is PCSCF address needed
                    // 0xA4, IPv4 Primary DNS address
                    // 0xA5, IPv4 Secondary DNS address
                    // 0xA6, IPv6 Primary DNS address
                    // 0xA7, IPv6 Secondary DNS address
                    // 0xA8, RAT type
                    // 0xA9, APN enabled
                    // 0xAA, PDN inactivity timeout
                    // 0xAB, APN class
                    { "common-ref" : "WDS Extended Error Code",
                      "since"      : "1.8" } ] },

  // *********************************************************************************
  {  "name"    : "Get Default Settings",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x002C",
     "version" : "1.1",
     "since"   : "1.8",
     "input"   : [ { "name"      : "Profile Type",
                     "id"        : "0x01",
                     "type"      : "TLV",
                     "since"     : "1.8",
                     "format"    :  "guint8",
                     "public-format" : "QmiWdsProfileType" } ],
     "output"  : [  { "common-ref" : "Operation Result" },
                    { "common-ref"    : "WDS Profile Name",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Type",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Header Compression Type",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Data Compression Type",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS APN Name",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Primary IPv4 DNS Address",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Secondary IPv4 DNS Address",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Requested QoS",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Minimum QoS",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS GPRS Requested QoS",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS GPRS Minimum QoS",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Username",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Password",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Authentication",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv4 Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PCSCF Address Using PCO",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x20, PDP access control flag
                    { "common-ref"    : "WDS PCSCF Address Using DHCP",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IMCN Flag",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x23, TFT ID1 Parameters
                    // 0x24, TFT ID2 Parameters
                    { "common-ref"    : "WDS PDP Context Number",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Context Secondary Flag",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Context Primary ID",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv6 Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Requested QoS With Signaling Indication Flag",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS UMTS Minimum QoS With Signaling Indication Flag",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv6 Primary DNS Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS IPv6 Secondary DNS Address Preference",
                      "since"         : "1.8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x2D, DHCP/NAS Preference
                    { "common-ref"    : "WDS LTE QoS Parameters",
                      "since"         : "1.18",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    // 0x2F, APN disabled flag
                    // 0x30, PDN inactivity timeout
                    // 0x31, APN class
                    // 0x90, Negotiate DNS server preference
                    // 0x91, PPP session close timer for DO
                    // 0x92, PPP session close timer for 1X
                    // 0x93, Allow/disallow lingering of interface
                    // 0x94, LCP ACK timeout
                    // 0x95, IPCP ACK timeout
                    // 0x96, AUTH timeout
                    // 0x97, LCP configuration request retry count value
                    // 0x98, IPCP configuration request retry count value
                    // 0x99, Authentication retry
                    // 0x9A, Authentication protocol,
                    // 0x9B, User ID
                    // 0x9C, Authentication password
                    // 0x9D, Data rate
                    // 0x9E, Application type
                    // 0x9F, Data mode
                    // 0xA0, Application priority
                    // 0xA1, APN string
                    // 0xA2, PDN type
                    // 0xA3, Is PCSCF address needed
                    // 0xA4, IPv4 Primary DNS address
                    // 0xA5, IPv4 Secondary DNS address
                    // 0xA6, IPv6 Primary DNS address
                    // 0xA7, IPv6 Secondary DNS address
                    // 0xA8, RAT type
                    // 0xA9, APN enabled
                    // 0xAA, PDN inactivity timeout
                    // 0xAB, APN class
                   { "common-ref" : "WDS Extended Error Code",
                      "since"     : "1.8" } ] },

  // *********************************************************************************
  {  "name"    : "Get Current Settings",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x002D",
     "version" : "1.2",
     "since"   : "1.0",
     "input"   : [  { "name"          : "Requested Settings",
                      "id"            : "0x10",
                      "mandatory"     : "yes",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint32",
                      "public-format" : "QmiWdsGetCurrentSettingsRequestedSettings" } ],
     "output"  : [  { "common-ref" : "Operation Result" },
                    { "common-ref"    : "WDS Profile Name",
                      "since"         : "1.0",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS PDP Type",
                      "since"         : "1.0",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS APN Name",
                      "since"         : "1.0",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Primary IPv4 DNS Address",
                      "since"         : "1.0",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Secondary IPv4 DNS Address",
                      "since"         : "1.0",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "UMTS Granted QoS",
                      "id"        : "0x17",
                      "type"      : "TLV",
                      "since"     : "1.14",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Traffic Class",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsTrafficClass" },
                                      { "name"   : "Max uplink bitrate",
                                        "format" : "guint32" },
                                      { "name"   : "Max downlink bitrate",
                                        "format" : "guint32" },
                                      { "name"   : "Guaranteed uplink bitrate",
                                        "format" : "guint32" },
                                      { "name"   : "Guaranteed downlink bitrate",
                                        "format" : "guint32" },
                                      { "name"          : "QoS Delivery Order",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsDeliveryOrder" },
                                      { "name"   : "Maximum SDU Size",
                                        "format" : "guint32" },
                                      { "name"          : "SDU Error Ratio",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsSduErrorRatio" },
                                      { "name"          : "Residual Bit Error Ratio",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsSduResidualBitErrorRatio" },
                                      { "name"          : "Delivery Erroneous SDU",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsSduErroneousDelivery" },
                                      { "name"   : "Transfer Delay",
                                        "format" : "guint32" },
                                      { "name"   : "Traffic Handling Priority",
                                        "format" : "guint32" } ],
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "GPRS Granted QoS",
                      "id"        : "0x19",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "sequence",
                      "contents"  : [ { "name"   : "Precedence Class",
                                        "format" : "guint32" },
                                      { "name"   : "Delay Class",
                                        "format" : "guint32" },
                                      { "name"   : "Reliability Class",
                                        "format" : "guint32" },
                                      { "name"   : "Peak Throughput Class",
                                        "format" : "guint32" },
                                      { "name"   : "Mean Throughput Class",
                                        "format" : "guint32" } ],
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Username",
                      "since"         : "1.0",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Authentication",
                      "since"         : "1.0",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IPv4 Address",
                      "id"        : "0x1E",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "endian"    : "little",
                      "format"    : "guint32",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "Profile ID",
                      "id"        : "0x1F",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Profile Type",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsProfileType" },
                                      { "name"   : "Profile Index",
                                        "format" : "guint8" } ],
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IPv4 Gateway Address",
                      "id"        : "0x20",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "endian"    : "little",
                      "format"    : "guint32",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IPv4 Gateway Subnet Mask",
                      "id"        : "0x21",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "endian"    : "little",
                      "format"    : "guint32",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "PCSCF Address Using PCO",
                      "id"        : "0x22",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "PCSCF Server Address List",
                      "id"        : "0x23",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"        : "array",
                      "array-element" : { "name"     : "IPv4 Address",
                                          "endian"   : "little",
                                          "format"   : "guint32" },
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "PCSCF Domain Name List",
                      "id"        : "0x24",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"        : "array",
                      "array-element" : { "name"               : "FQDN",
                                          "format"             : "string",
                                          "size-prefix-format" : "guint16" },
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IPv6 Address",
                      "id"        : "0x25",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Address",
                                        "format"        : "array",
                                        "fixed-size"    : "8",
                                        "array-element" : { "format": "guint16", "endian": "network" } },
                                      { "name"       : "Prefix Length",
                                        "format"     : "guint8" } ],
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IPv6 Gateway Address",
                      "id"        : "0x26",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Address",
                                        "format"        : "array",
                                        "fixed-size"    : "8",
                                        "array-element" : { "format": "guint16", "endian": "network" } },
                                      { "name"       : "Prefix Length",
                                        "format"     : "guint8" } ],
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IPv6 Primary DNS Address",
                      "id"        : "0x27",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "array",
                      "fixed-size": "8",
                      "array-element" : { "format": "guint16", "endian": "network" },
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IPv6 Secondary DNS Address",
                      "id"        : "0x28",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "array",
                      "fixed-size": "8",
                      "array-element" : { "format": "guint16", "endian": "network" },
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "MTU",
                      "id"        : "0x29",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint32",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "Domain Name List",
                      "id"        : "0x2A",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"        : "array",
                      "array-element" : { "name"               : "Domain Name",
                                          "format"             : "string",
                                          "size-prefix-format" : "guint16" },
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IP Family",
                      "id"        : "0x2B",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "guint8",
                      "public-format" : "QmiWdsIpFamily",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "IMCN Flag",
                      "id"        : "0x2C",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "gint8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"      : "Extended Technology Preference",
                      "id"        : "0x2D",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      // Note: docs give this as gint16 with negative enum values. Instead, we use
                      // guint16 with equivalent positive enum values.
                      "format"    : "guint16",
                      "public-format" : "QmiWdsExtendedTechnologyPreference",
                      "prerequisites" : [ { "common-ref" : "Success" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Get Dormancy Status",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0030",
     "version" : "1.0",
     "since"   : "1.14",
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "name"          : "Dormancy Status",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsDormancyStatus",
                     "prerequisites" : [ { "common-ref" : "Success" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Get Autoconnect Settings",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0034",
     "version" : "1.12",
     "since"   : "1.14",
     "output"  : [ { "common-ref" : "Operation Result" },
                   { "name"          : "Status",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsAutoconnectSetting",
                     "prerequisites" : [ { "common-ref" : "Success" } ] },
                   { "name"          : "Roaming",
                     "id"            : "0x10",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsAutoconnectSettingRoaming",
                     "prerequisites" : [ { "common-ref" : "Success" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Get Data Bearer Technology",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0037",
     "version" : "1.12",
     "since"   : "1.0",
     "output"  : [  { "common-ref" : "Operation Result" },
                    { "name"          : "Current",
                      "id"            : "0x01",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "gint8",
                      "public-format" : "QmiWdsDataBearerTechnology",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "name"          : "Last",
                      "id"            : "0x10",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "gint8",
                      "public-format" : "QmiWdsDataBearerTechnology",
                      "prerequisites" : [ { "field"     : "Result.Error Status",
                                           "operation" : "!=",
                                           "value"     : "QMI_STATUS_SUCCESS" },
                                         { "field"     : "Result.Error Code",
                                           "operation" : "==",
                                           "value"     : "QMI_PROTOCOL_ERROR_OUT_OF_CALL" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Get Current Data Bearer Technology",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0044",
     "version" : "1.4",
     "since"   : "1.0",
     "output"  : [  { "common-ref" : "Operation Result" },
                    { "name"      : "Current",
                      "id"        : "0x01",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Network Type",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsNetworkType" },
                                      { "name"   : "RAT Mask",
                                        "format" : "guint32" },
                                      { "name"   : "SO Mask",
                                        "format" : "guint32" } ],
                      "prerequisites": [ { "common-ref" : "Success" } ] },
                    { "name"      : "Last",
                      "id"        : "0x10",
                      "type"      : "TLV",
                      "since"     : "1.0",
                      "format"    : "sequence",
                      "contents"  : [ { "name"          : "Network Type",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsNetworkType" },
                                      { "name"   : "RAT Mask",
                                        "format" : "guint32" },
                                      { "name"   : "SO Mask",
                                        "format" : "guint32" } ] } ] },

  // *********************************************************************************
  {  "name"    : "Get Default Profile Num",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0049",
     "version" : "1.38",
     "since"   : "1.22",
     "input"   : [  { "name"          : "Profile Type",
                      "id"            : "0x01",
                      "mandatory"     : "yes",
                      "type"          : "TLV",
                      "since"         : "1.22",
                      "format"        : "sequence",
                      "contents"  : [ { "name"          : "Profile Type",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsProfileType"},
                                      { "name"          : "Profile Family",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsProfileFamily"}] }],
     "output"  : [  { "common-ref"    : "Operation Result" },
                    { "name"          : "Default Profile Number",
                      "id"            : "0x01",
                      "mandatory"     : "yes",
                      "type"          : "TLV",
                      "since"         : "1.22",
                      "format"        : "guint8",
                      "prerequisites" : [ { "common-ref" : "Success" } ] },
                    { "common-ref"    : "WDS Extended Error Code",
                      "since"         : "1.22" } ] },

  // *********************************************************************************
  {  "name"    : "Set Default Profile Num",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x004A",
     "version" : "1.38",
     "since"   : "1.22",
     "input"   : [  { "name"          : "Profile Identifier",
                      "id"            : "0x01",
                      "mandatory"     : "yes",
                      "type"          : "TLV",
                      "since"         : "1.22",
                      "format"        : "sequence",
                      "contents"  : [ { "name"          : "Profile Type",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsProfileType"},
                                      { "name"          : "Profile Family",
                                        "format"        : "guint8",
                                        "public-format" : "QmiWdsProfileFamily"},
                                      { "name"          : "Profile Index",
                                        "format"        : "guint8"}] }],
     "output"  : [  { "common-ref"    : "Operation Result" },
                    { "common-ref"    : "WDS Extended Error Code",
                      "since"         : "1.22" } ] },

  // *********************************************************************************
  {  "name"    : "Set IP Family",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x004D",
     "version" : "1.9",
     "since"   : "1.0",
     "input"   : [  { "name"          : "Preference",
                      "id"            : "0x01",
                      "type"          : "TLV",
                      "since"         : "1.0",
                      "format"        : "guint8",
                      "public-format" : "QmiWdsIpFamily" } ],
     "output"  : [  { "common-ref" : "Operation Result" } ] },

  // *********************************************************************************
  {  "name"    : "Set Autoconnect Settings",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x0051",
     "version" : "1.12",
     "since"   : "1.14",
     "input"   : [ { "name"          : "Status",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsAutoconnectSetting" },
                   { "name"          : "Roaming",
                     "id"            : "0x10",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsAutoconnectSettingRoaming" } ],
     "output"  : [ { "common-ref" : "Operation Result" } ] },

  // *********************************************************************************
  {  "name"    : "Get PDN Throttle Info",
     "type"    : "Message",
     "service" : "WDS",
     "id"      : "0x006C",
     "version" : "1.12",
     "since"   : "1.14",
     "input"   : [ { "name"          : "Network Type",
                     "id"            : "0x01",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "guint8",
                     "public-format" : "QmiWdsDataSystemNetworkType" } ],
     "output"  : [ { "common-ref"   : "Operation Result" },
                   { "name"          : "Info",
                     "id"            : "0x10",
                     "type"          : "TLV",
                     "since"         : "1.14",
                     "format"        : "array",
                     "array-element" : { "name"     : "Element",
                                         "format"   : "struct",
                                         "contents" : [ { "name"          : "IPv4 Throttled",
                                                          "format"        : "gint8",
                                                          "public-format" : "gboolean" },
                                                        { "name"          : "IPv6 Throttled",
                                                          "format"        : "gint8",
                                                          "public-format" : "gboolean" },
                                                        { "name"          : "IPv4 Throttle Time Left MS",
                                                          "format"        : "guint32" },
                                                        { "name"          : "IPv6 Throttle Time Left MS",
                                                          "format"        : "guint32" },
                                                        { "name"          : "APN",
                                                          "format"        : "string" } ] },
                     "prerequisites": [ { "common-ref" : "Success" } ] } ] },

// *********************************************************************************
    {   "name"    : "Bind Mux Data Port",
        "type"    : "Message",
        "service" : "WDS",
        "id"      : "0x00A2",
        "since"   : "1.18",
        "input"   : [ { "name"          : "Endpoint Info",
                        "id"            : "0x10",
                        "type"          : "TLV",
                        "since"         : "1.18",
                        "format"        : "sequence",
                        "contents"  : [ { "name" : "Endpoint Type",
                                          "format" : "guint32",
                                          "public-format" : "QmiDataEndpointType"},
                                        { "name" : "Interface Number",
                                          "format" : "guint32" }]},
                      { "name"          : "Mux ID",
                        "id"            : "0x11",
                        "type"          : "TLV",
                        "since"         : "1.18",
                        "format"        : "guint8"},
                      { "name"          : "Client Type",
                        "id"            : "0x13",
                        "type"          : "TLV",
                        "since"         : "1.18",
                        "format"        : "guint32",
                        "public-format" : "QmiWdsClientType"}
                      ],
        "output"  : [ { "common-ref" : "Operation Result" } ] },

// *********************************************************************************
{  "name"    : "Swi Create Profile Indexed",
   "type"    : "Message",
   "service" : "WDS",
   "id"      : "0x5558",
   "version" : "1.1",
   "since"   : "1.22",
   "input"   : [ { "common-ref"    : "WDS Profile Identifier",
                   "since"         : "1.22" } ,
                 { "common-ref"    : "WDS Profile Name",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS PDP Type",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS APN Name",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS Primary IPv4 DNS Address",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS Secondary IPv4 DNS Address",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS Username",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS Password",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS Authentication",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS IPv4 Address Preference",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS PDP Context Number",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS APN Disabled Flag",
                   "since"         : "1.22" },
                 { "common-ref"    : "WDS Roaming Disallowed Flag",
                   "since"         : "1.22" } ],
   "output"  : [ { "common-ref"    : "Operation Result" },
                 { "common-ref"    : "WDS Profile Identifier",
                   "since"         : "1.22",
                   "prerequisites" : [ { "common-ref" : "Success" } ] } ] }
]
