Package org.bluez.mesh
Interface Network1
- All Superinterfaces:
org.freedesktop.dbus.interfaces.DBusInterface
public interface Network1
extends org.freedesktop.dbus.interfaces.DBusInterface
File generated - 2023-02-20.
Based on bluez Documentation: mesh-api.txt.
Service: org.bluez.mesh
Interface: org.bluez.mesh.Network1
Object path:
/org/bluez/mesh
Based on bluez Documentation: mesh-api.txt.
Service: org.bluez.mesh
Interface: org.bluez.mesh.Network1
Object path:
/org/bluez/mesh
-
Method Summary
Modifier and TypeMethodDescriptionTwoTuple<org.freedesktop.dbus.DBusPath, List<TwoTuple<Byte, List<TwoTuple<org.freedesktop.dbus.types.UInt16, Map<String, org.freedesktop.dbus.types.Variant<?>>>>>>> Attach(org.freedesktop.dbus.DBusPath _appRoot, org.freedesktop.dbus.types.UInt64 _token) From bluez documentation:
This is the first method that an application must call to get
access to mesh node functionalities.
The app_root parameter is a D-Bus object root path of
the application that implements org.bluez.mesh.Application1
interface.voidCancel()From bluez documentation:
Cancels an outstanding provisioning request initiated by Join()
method.
voidCreateNetwork(org.freedesktop.dbus.DBusPath _app_root, byte[] _uuid) From bluez documentation:
This is the first method that an application calls to become
a Provisioner node, and a Configuration Client on a newly
created Mesh Network.
The app_root parameter is a D-Bus object root path of the
application that implements org.bluez.mesh.Application1
interface, and a org.bluez.mesh.Provisioner1 interface.voidImport(org.freedesktop.dbus.DBusPath _appRoot, byte[] _uuid, byte[] _devKey, byte[] _netKey, org.freedesktop.dbus.types.UInt16 _netIndex, Map<String, org.freedesktop.dbus.types.Variant<?>> _flags, org.freedesktop.dbus.types.UInt32 _ivIndex, org.freedesktop.dbus.types.UInt16 _unicast) From bluez documentation:
This method creates a local mesh node based on node configuration that has been generated outside bluetooth-meshd.voidJoin(org.freedesktop.dbus.DBusPath _appRoot, byte[] _uuid) From bluez documentation:
This is the first method that an application has to call to
become a provisioned node on a mesh network.voidLeave(org.freedesktop.dbus.types.UInt64 _token) From bluez documentation:
This removes the configuration information about the mesh node
identified by the 64-bit token parameter.Methods inherited from interface org.freedesktop.dbus.interfaces.DBusInterface
getObjectPath, isRemote
-
Method Details
-
Join
void Join(org.freedesktop.dbus.DBusPath _appRoot, byte[] _uuid) throws BluezMeshInvalidArgumentsException, BluezMeshAlreadyExistsException From bluez documentation:
This is the first method that an application has to call to
become a provisioned node on a mesh network. The call will
initiate broadcasting of Unprovisioned Device Beacon.
The app_root parameter is a D-Bus object root path of
the application that implements org.bluez.mesh.Application1
interface. The application represents a node where child mesh
elements have their own objects that implement
org.bluez.mesh.Element1 interface. The application hierarchy
also contains a provision agent object that implements
org.bluez.mesh.ProvisionAgent1 interface. The standard
DBus.ObjectManager interface must be available on the
app_root path.
The uuid parameter is a 16-byte array that contains Device UUID.
This UUID must be unique (at least from the daemon perspective),
therefore attempting to call this function using already
registered UUID results in an error. The composition of the UUID
octets must be in compliance with RFC 4122.
When provisioning finishes, the daemon will call either
JoinComplete or JoinFailed method on object implementing
org.bluez.mesh.Application1 interface.
- Parameters:
_appRoot- app_root_uuid- uuid- Throws:
BluezMeshInvalidArgumentsException- when invalid argument givenBluezMeshAlreadyExistsException- when mesh already exists
-
Cancel
void Cancel()From bluez documentation:
Cancels an outstanding provisioning request initiated by Join()
method.
-
Attach
TwoTuple<org.freedesktop.dbus.DBusPath,List<TwoTuple<Byte, AttachList<TwoTuple<org.freedesktop.dbus.types.UInt16, Map<String, org.freedesktop.dbus.types.Variant<?>>>>>>> (org.freedesktop.dbus.DBusPath _appRoot, org.freedesktop.dbus.types.UInt64 _token) throws BluezMeshInvalidArgumentsException, BluezMeshNotFoundException, BluezMeshAlreadyExistsException, BluezMeshBusyException, BluezMeshFailedException From bluez documentation:
This is the first method that an application must call to get
access to mesh node functionalities.
The app_root parameter is a D-Bus object root path of
the application that implements org.bluez.mesh.Application1
interface. The application represents a node where child mesh
elements have their own objects that implement
org.bluez.mesh.Element1 interface. The standard
DBus.ObjectManager interface must be available on the
app_root path.
The token parameter is a 64-bit number that has been assigned to
the application when it first got provisioned/joined mesh
network, i.e. upon receiving JoinComplete() method. The daemon
uses the token to verify whether the application is authorized
to assume the mesh node identity.
In case of success, the method call returns mesh node object
(see Mesh Node Hierarchy section) and current configuration
settings. The return value of configuration parameter is an
array, where each entry is a structure that contains element
configuration. The element configuration structure is organized
as follows:
byte
Element index, identifies the element to which this
configuration entry pertains.
array{struct}
Models array where each entry is a structure with the
following members:
uint16
Either a SIG Model Identifier or, if Vendor key
is present in model configuration dictionary, a
16-bit vendor-assigned Model Identifier
dict
A dictionary that contains model configuration
with the following keys defined:
array{uint16} Bindings
Indices of application keys bound to the
model
uint32 PublicationPeriod
Model publication period in milliseconds
uint16 Vendor
A 16-bit Company ID as defined by the
Bluetooth SIG
array{variant} Subscriptions
Addresses the model is subscribed to.
Each address is provided either as
uint16 for group addresses, or
as array{byte} for virtual labels.
- Parameters:
_appRoot- appRoot_token- token- Throws:
BluezMeshInvalidArgumentsException- on invalid mesh argumentBluezMeshNotFoundException- when mesh not foundBluezMeshAlreadyExistsException- when mesh already existsBluezMeshBusyException- when mesh is busyBluezMeshFailedException- on any other mesh error
-
Leave
void Leave(org.freedesktop.dbus.types.UInt64 _token) throws BluezMeshBusyException, BluezMeshNotFoundException, BluezMeshInvalidArgumentsException From bluez documentation:
This removes the configuration information about the mesh node
identified by the 64-bit token parameter. The token parameter
has been obtained as a result of successful Join() method call.
- Parameters:
_token- token- Throws:
BluezMeshInvalidArgumentsException- when invalid argument providedBluezMeshNotFoundException- when mesh not foundBluezMeshBusyException- when still busy
-
CreateNetwork
void CreateNetwork(org.freedesktop.dbus.DBusPath _app_root, byte[] _uuid) throws BluezMeshInvalidArgumentsException, BluezMeshAlreadyExistsException From bluez documentation:
This is the first method that an application calls to become
a Provisioner node, and a Configuration Client on a newly
created Mesh Network.
The app_root parameter is a D-Bus object root path of the
application that implements org.bluez.mesh.Application1
interface, and a org.bluez.mesh.Provisioner1 interface. The
application represents a node where child mesh elements have
their own objects that implement org.bluez.mesh.Element1
interface. The application hierarchy also contains a provision
agent object that implements org.bluez.mesh.ProvisionAgent1
interface. The standard DBus.ObjectManager interface must be
available on the app_root path.
The uuid parameter is a 16-byte array that contains Device UUID.
This UUID must be unique (at least from the daemon perspective),
therefore attempting to call this function using already
registered UUID results in an error. The composition of the UUID
octets must be in compliance with RFC 4122.
The other information the bluetooth-meshd daemon will preserve
about the initial node, is to give it the initial primary
unicast address (0x0001), and create and assign a net_key as the
primary network net_index (0x000).
Upon successful processing of Create() method, the daemon
will call JoinComplete method on object implementing
org.bluez.mesh.Application1.
- Parameters:
_app_root- app_root_uuid- uuid- Throws:
BluezMeshInvalidArgumentsException- when invalid mesh options usedBluezMeshAlreadyExistsException- when mesh already exists
-
Import
void Import(org.freedesktop.dbus.DBusPath _appRoot, byte[] _uuid, byte[] _devKey, byte[] _netKey, org.freedesktop.dbus.types.UInt16 _netIndex, Map<String, org.freedesktop.dbus.types.Variant<?>> _flags, org.freedesktop.dbus.types.UInt32 _ivIndex, org.freedesktop.dbus.types.UInt16 _unicast) throws BluezMeshInvalidArgumentsException, BluezMeshAlreadyExistsException, BluezMeshNotSupportedException, BluezMeshNotFoundExceptionFrom bluez documentation:
This method creates a local mesh node based on node configuration that has been generated outside bluetooth-meshd. The app_root parameter is a D-Bus object root path of the application that implements org.bluez.mesh.Application1 interface. The uuid parameter is a 16-byte array that contains Device UUID. This UUID must be unique (at least from the daemon perspective), therefore attempting to call this function using already registered UUID results in an error. The dev_key parameter is the 16-byte value of the dev key of the imported mesh node. Remaining parameters correspond to provisioning data: The net_key and net_index parameters describe the network (or a subnet, if net_index is not 0) the imported mesh node belongs to. The flags parameter is a dictionary containing provisioning flags. Supported values are: boolean IvUpdate When true, indicates that the network is in the middle of IV Index Update procedure. boolean KeyRefresh When true, indicates that the specified net key is in the middle of a key refresh procedure. The iv_index parameter is the current IV Index value used by the network. This value is known by the provisioner. The unicast parameter is the primary unicast address of the imported node. Upon successful processing of Import() method, the daemon will call JoinComplete method on object implementing org.bluez.mesh.Application1 interface.- Parameters:
_appRoot- root_uuid- uuid_devKey- devkey_netKey- netkey_netIndex- netidx_flags- flags_ivIndex- ividx_unicast- unicast- Throws:
BluezMeshAlreadyExistsException- when mesh already existsBluezMeshInvalidArgumentsException- when invalid argument providedBluezMeshNotFoundException- when mesh could not be foundBluezMeshNotSupportedException- when operation is not supported
-