grizzly v0.4.2 Grizzly.CommandClass.NetworkManagementInclusion.NodeAdd View Source

Module for using the NODE_ADD command.

If the inclusion process is for S0 or no security the process will add the node and do the security (if S0) exchange at the zipgateway level.

If the inclusin process is for S2 security, there will be a node add keys report, which is to request granting what level of S2 security the user ought to grant. This request will let the caller know if Client Side Authentication is request and what S2 keys to grant to the joining node.

Link to this section Summary

Types

Mode for the controller to use during inclsion

t()

Link to this section Types

Link to this type

mode() View Source
mode() :: :any | :stop | :any_s2

Mode for the controller to use during inclsion

  • :any - add any type of node to the network and allow for S0 bootstrapping
  • :stop - stop add mode
  • :any_s2 - same as :any, but allow for S2 bootstrapping as well (v2)
Link to this type

mode_byte() View Source
mode_byte() :: 1 | 5 | 7

Link to this type

t() View Source
t() :: %Grizzly.CommandClass.NetworkManagementInclusion.NodeAdd{
  exec_state: Grizzly.Network.State.state(),
  mode: mode() | byte(),
  pre_states: [Grizzly.Network.State.state()],
  seq_number: Grizzly.seq_number(),
  timeout: non_neg_integer(),
  tx_opts: byte()
}

Link to this section Functions

Callback implementation for Grizzly.Command.encode/1.

Link to this function

encode_mode(byte) View Source
encode_mode(mode() | mode_byte()) :: mode_byte()

Link to this function

handle_response(command, arg2) View Source
handle_response(t(), Grizzly.Packet.t()) ::
  {:continue, t()}
  | {:done, {:error, :nack_response}}
  | {:done, Grizzly.Node.t()}
  | {:done, {:ok, :node_add_stopped}}

Callback implementation for Grizzly.Command.handle_response/2.

Callback implementation for Grizzly.Command.init/1.