QMI.Codec.WirelessData (qmi v0.8.0) View Source

Codec for making wireless data service requests

Link to this section Summary

Types

The type of reasons the call ended

The indication for the wireless data service's event report

Options for the wireless data event report configuration

The indication for a change in the current packet data connection status

Options for whens starting a network interface

Report from starting the network interface

The type of measurement you are wanting to be reported

Name of the technology

Functions

Try to parse an indication from the wireless data service

Request to set the wireless data services event report options

Send command to request the that the network interface starts to receive data

Link to this section Types

Link to this type

call_end_reason_type()

View Source

Specs

call_end_reason_type() ::
  :unspecified
  | :mobile_ip
  | :internal
  | :call_manger_defined
  | :three_gpp_specification_defined
  | :ppp
  | :ehrpd
  | :ipv6
  | :handoff

The type of reasons the call ended

Link to this type

event_report_indication()

View Source

Specs

event_report_indication() :: %{
  :name => :event_report_indication,
  optional(:tx_bytes) => integer(),
  optional(:rx_bytes) => integer(),
  optional(:tx_packets) => integer(),
  optional(:rx_packets) => integer(),
  optional(:tx_overflows) => integer(),
  optional(:rx_overflows) => integer(),
  optional(:tx_errors) => integer(),
  optional(:rx_errors) => integer(),
  optional(:tx_drops) => integer(),
  optional(:rx_drops) => integer()
}

The indication for the wireless data service's event report

To configure what information is sent through this indication see set_event_report/1`.

Specs

event_report_opt() ::
  {:statistics_interval, non_neg_integer()}
  | {:statistics, [statistic_measurement()] | :all | :none}

Options for the wireless data event report configuration

  • :statistics_interval - an interval in seconds on when to report statistics about transmit and receive operations
  • :statistics - list which statistic measurements to report

For transmit and receive statistics, if no interval is provided the default is 60 seconds. If the :statistics option is not provided it will default to :all. The report is only sent in the interval if there was a change in any of the statistics. So, if no changes took place the report will be skipped for an interval.

To configure event report to not included any stats pass :none to the :statistics option.

Link to this type

packet_status_indication()

View Source

Specs

packet_status_indication() :: %{
  name: :packet_status_indication,
  status: :disconnected | :connected | :suspended | :authenticating,
  reconfiguration_required: boolean(),
  call_end_reason: integer() | nil,
  call_end_reason_type: call_end_reason_type() | nil,
  ip_family: 4 | 6 | nil,
  tech_name: tech_name() | nil,
  bearer_id: integer() | nil,
  xlat_capable: boolean() | nil
}

The indication for a change in the current packet data connection status

Link to this type

start_network_interface_opt()

View Source

Specs

start_network_interface_opt() :: {:apn, String.t()}

Options for whens starting a network interface

  • :apn - the name of our APN
Link to this type

start_network_report()

View Source

Specs

start_network_report() :: %{packet_data_handle: non_neg_integer()}

Report from starting the network interface

Link to this type

statistic_measurement()

View Source

Specs

statistic_measurement() ::
  :tx_bytes
  | :rx_bytes
  | :tx_packets
  | :rx_packets
  | :tx_overflows
  | :rx_overflows
  | :tx_errors
  | :rx_errors
  | :tx_drops
  | :rx_drops

The type of measurement you are wanting to be reported

  • :tx_bytes - number of bytes transmitted
  • :rx_bytes - number of bytes received
  • :tx_packets - number of transmit packets sent without error
  • :rx_packets - number of packets received without error
  • :tx_overflows - number of packets dropped due to tx buffer overflowed (out of memory)
  • :rx_overflows - number of packets dropped due to rx buffer overflowed (out of memory)
  • :tx_errors - number of outgoing packets with framing errors
  • :rx_errors - number of incoming packets with framing errors
  • :tx_drops - number outgoing packets dropped
  • :rx_drops - number incoming packets dropped

Specs

tech_name() ::
  :cdma
  | :umts
  | :wlan_local_brkout
  | :iwlan_s2b
  | :epc
  | :embms
  | :modem_link_local

Name of the technology

Link to this section Functions

Link to this function

parse_event_report_indication(event_report_indication, arg)

View Source

Specs

parse_indication(binary()) ::
  {:ok, packet_status_indication() | event_report_indication()}
  | {:error, :invalid_indication}

Try to parse an indication from the wireless data service

Link to this function

set_event_report(opts \\ [])

View Source

Specs

set_event_report([event_report_opt()]) :: QMI.request()

Request to set the wireless data services event report options

Link to this function

start_network_interface(opts \\ [])

View Source

Specs

start_network_interface([start_network_interface_opt()]) :: QMI.request()

Send command to request the that the network interface starts to receive data