View Source Grizzly.Network (grizzly v8.6.6)
Module for working with the Z-Wave network
Summary
Functions
Add a long range device to the provisioning list
Delete a node from the network's provisioning list via the node's DSK
Gets all the node ids both from the Z-Wave network and any virtual nodes
Get a list of node ids from the Z-Wave network
Get the nodes provisioning list information via the node's DSK
List all the nodes on the provisioning list
Request a node to peform a neighbor update operation.
Remove a (presumably) failed node
Get the list of ids of all failed nodes.
Request a network update from another controller. This is a no-op if this is the network's primary controller.
Reset the Z-Wave controller
A node to the network provisioning list
Types
@type opt() :: {:node_id, Grizzly.ZWave.node_id()} | {:seq_number, integer()}
@type reset_opt() :: {:notify, boolean()}
Options for when you want to reset the device
:notify
- if the flag is set to true this will try to notify any node that is part of the lifeline association group (defaulttrue
)
Functions
@spec add_long_range_device(Grizzly.ZWave.DSK.t(), [opt()]) :: Grizzly.send_command_response()
Add a long range device to the provisioning list
@spec delete_node_provisioning(Grizzly.ZWave.DSK.t(), [opt()]) :: Grizzly.send_command_response()
Delete a node from the network's provisioning list via the node's DSK
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.
@spec get_all_node_ids([opt()]) :: {:ok, [Grizzly.ZWave.node_id() | Grizzly.VirtualDevices.id()]} | {:error, :timeout | :nack_response}
Gets all the node ids both from the Z-Wave network and any virtual nodes
If everything is okay the response will be {:ok, list_of_node_ids}
where the
list of node ids will be a combination of actual Z-Wave devices and virtual
device ids.
@spec get_node_ids([opt()]) :: Grizzly.send_command_response()
Get a list of node ids from the Z-Wave network
Just because a node id might be in the list does not mean the node is on the network. A device might have been reset or unpaired from the controller with out the controller knowing. However, in most use cases this shouldn't be an issue.
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.
@spec get_node_provisioning(Grizzly.ZWave.DSK.t(), [opt()]) :: Grizzly.send_command_response()
Get the nodes provisioning list information via the node's DSK
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.
@spec list_node_provisionings(integer(), [opt()]) :: Grizzly.send_command_response()
List all the nodes on the provisioning list
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.
@spec node_neighbor_update_request(Grizzly.node_id(), [Grizzly.command_opt()]) :: Grizzly.send_command_response()
Request a node to peform a neighbor update operation.
@spec remove_failed_node([opt()]) :: Grizzly.send_command_response()
Remove a (presumably) failed node
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.
@spec report_failed_node_ids([opt()]) :: {:ok, [Grizzly.ZWave.node_id()]} | {:error, atom()}
Get the list of ids of all failed nodes.
@spec request_network_update([opt()]) :: Grizzly.send_command_response()
Request a network update from another controller. This is a no-op if this is the network's primary controller.
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.
@spec reset_controller([reset_opt() | opt()]) :: Grizzly.send_command_response()
Reset the Z-Wave controller
This command takes a few seconds to run.
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.:notify
- Whether to notify the nodes in the lifeline association group that the controller is being reset. Used primarily to disable this behavior in unit tests. Defaulttrue
.:associations_server
- Which associations server to use for notifications and to clear after a successful reset. Default is to use the default associations server (namedGrizzly.Associations
).
@spec set_node_provisioning( Grizzly.ZWave.DSK.t(), [Grizzly.ZWave.SmartStart.MetaExtension.extension()], [opt()] ) :: Grizzly.send_command_response()
A node to the network provisioning list
Options
:node_id
- If your controller is part of another controller's network you might want to issue network commands to that controller. By default this option will chose your controller.