Linux-Bluetooth Archive on lore.kernel.org
 help / Atom feed
* [PATCH BlueZ] doc: Update mesh Agent API
@ 2018-12-04 22:04 Brian Gix
  0 siblings, 0 replies; 1+ messages in thread
From: Brian Gix @ 2018-12-04 22:04 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: johan.hedberg, inga.stotland, marcel

From: Inga Stotland <inga.stotland@intel.com>

Change enumerated values to strings in method parameters, and
corrected formatting for 80 character terminals.
---
 doc/mesh-api.txt | 634 +++++++++++++++++++++++++++++--------------------------
 1 file changed, 338 insertions(+), 296 deletions(-)

diff --git a/doc/mesh-api.txt b/doc/mesh-api.txt
index 38c0fd384..e1bc3ee02 100644
--- a/doc/mesh-api.txt
+++ b/doc/mesh-api.txt
@@ -1,3 +1,4 @@
+xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 BlueZ D-Bus Mesh API description
 ********************************
 
@@ -8,104 +9,106 @@ Interface	org.bluez.mesh.Network1
 Object path	/org/bluez/mesh
 
 Methods:
-		void Join(object app_defined_root, array{byte}[16] uuid)
+	void Join(object app_defined_root, array{byte}[16] uuid)
 
-			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.
+		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_defined_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_defined_root path.
+		The app_defined_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_defined_root path.
 
-			The uuid parameter is a 16-byte array that contains Device UUID.
+		The uuid parameter is a 16-byte array that contains Device UUID.
 
-			PossibleErrors:
-				org.bluez.mesh.Error.InvalidArguments
+		PossibleErrors:
+			org.bluez.mesh.Error.InvalidArguments
 
-		void Cancel(void)
-			Cancels an outstanding provisioning request initiated by Join()
-			method.
+	void Cancel(void)
+		Cancels an outstanding provisioning request initiated by Join()
+		method.
 
-		(object node, array{byte, array{(uint16, dict}} configuration)
+	(object node, array{byte, array{(uint16, dict}} configuration)
 				Attach(object app_defined_root, uint64 token)
 
-			This is the first method that an application must call to get access
-			to mesh node functionalities.
+		This is the first method that an application must call to get
+		access to mesh node functionalities.
 
-			The app_defined_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_defined_root path.
+		The app_defined_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_defined_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.
+		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:
+		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
+		byte
 
-					Element index, identifies the element to which this
-					configuration entry pertians.
+			Element index, identifies the element to which this
+			configuration entry pertians.
 
-				array{struct}
+		array{struct}
 
-					Models array where each entry is a structure with the
-					following members:
+			Models array where each entry is a structure with the
+			following members:
 
-						uint16
+			uint16
 
-							Either a SIG Model Identifier or, if Vendor key is
-							present in model configuration dictionary, a 16-bit
-							vendor-assigned Model Identifier
+				Either a SIG Model Identifier or, if Vendor key
+				is present in model configuration dictionary, a
+				16-bit vendor-assigned Model Identifier
 
-						dict
+			dict
 
-							A dictionary that contains model configuration with
-							the following keys defined:
+				A dictionary that contains model configuration
+				with the following keys defined:
 
-								array{uint16} Bindings
+				array{uint16} Bindings
 
-									Indices of application keys bound to
-									the model
+					Indices of application keys bound to the
+					model
 
-								uint32 PublicationPeriod
+				uint32 PublicationPeriod
 
-									Model publication period in milliseconds
+					Model publication period in milliseconds
 
-								uint16 Vendor
+				uint16 Vendor
 
-									A 16-bit Bluetooth-assigned Company
-									Identifier of the vendor as defined by
-									Bluetooth SIG
+					A 16-bit Company ID as defined by the
+					Bluetooth SIG
 
-			PossibleErrors:
-				org.bluez.mesh.Error.InvalidArguments
-				org.bluez.mesh.Error.NotFound,
-				org.bluez.mesh.Error.Failed
+		PossibleErrors:
+			org.bluez.mesh.Error.InvalidArguments
+			org.bluez.mesh.Error.NotFound,
+			org.bluez.mesh.Error.Failed
 
-		void Leave(uint64 token)
+	void Leave(uint64 token)
 
-			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.
+		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.
 
-			PossibleErrors:
-				org.bluez.mesh.Error.NotFound
+		PossibleErrors:
+			org.bluez.mesh.Error.NotFound
 
 
 Mesh Node Hierarchy
@@ -113,122 +116,126 @@ Mesh Node Hierarchy
 Service		org.bluez.mesh
 Interface	org.bluez.mesh.Node1
 Object path	/org/bluez/mesh/node<xxxx>
-		where xxxx is a 4-digit hexadecimal number generated by meshd daemon
+		where xxxx is a 4-digit hexadecimal number generated by daemon
 
 Methods:
-		void Send(object element_path, uint16 destination, uint16 key_index,
-								array{byte} data)
+	void Send(object element_path, uint16 destination, uint16 key_index,
+							array{byte} data)
 
-			This method is used to send a message originated by a local model.
+		This method is used to send a message originated by a local
+		model.
 
-			The element_path parameter is the object path of an element from
-			a collection of the application elements (see Mesh Application
-			Hierarchy section).
+		The element_path parameter is the object path of an element from
+		a collection of the application elements (see Mesh Application
+		Hierarchy section).
 
-			The destination parameter contains the destination address. This
-			destination must be a uint16 to a unicast address, or a well known
-			group address.
+		The destination parameter contains the destination address. This
+		destination must be a uint16 to a unicast address, or a well
+		known group address.
 
-			The key_index parameter determines which application key to use for
-			encrypting the message. The key_index must be valid for that
-			element, i.e., the application key must be bound to a model on this
-			element. Otherwise, org.bluez.mesh.Error.NotAuthorized will be
-			returned.
+		The key_index parameter determines which application key to use
+		for encrypting the message. The key_index must be valid for that
+		element, i.e., the application key must be bound to a model on
+		this element. Otherwise, org.bluez.mesh.Error.NotAuthorized will
+		be returned.
 
-			The data parameter is an outgoing message to be encypted by the
-			meshd daemon and sent on.
+		The data parameter is an outgoing message to be encypted by the
+		meshd daemon and sent on.
 
-			Possible errors:
-				org.bluez.mesh.Error.NotAuthorized
-				org.bluez.mesh.Error.InvalidArguments
-				org.bluez.mesh.Error.NotFound
+		Possible errors:
+			org.bluez.mesh.Error.NotAuthorized
+			org.bluez.mesh.Error.InvalidArguments
+			org.bluez.mesh.Error.NotFound
 
-		void Publish(object element_path, uint16 model, array{byte} data)
+	void Publish(object element_path, uint16 model, array{byte} data)
 
-			This method is used to send a publication originated by a local
-			model. If the model does not exist, or it has no publication record,
-			the method returns org.bluez.mesh.Error.DoesNotExist error.
+		This method is used to send a publication originated by a local
+		model. If the model does not exist, or it has no publication
+		record, the method returns org.bluez.mesh.Error.DoesNotExist
+		error.
 
-			The element_path parameter is the object path of an element from
-			a collection of the application elements (see Mesh Application
-			Hierarchy section).
+		The element_path parameter is the object path of an element from
+		a collection of the application elements (see Mesh Application
+		Hierarchy section).
 
-			The model parameter contains a model ID, as defined by the
-			Bluetooth SIG.
+		The model parameter contains a model ID, as defined by the
+		Bluetooth SIG.
 
-			Since only one Publish record may exist per element-model, the
-			destination and key_index are obtained from the Publication
-			record cached by the daemon.
+		Since only one Publish record may exist per element-model, the
+		destination and key_index are obtained from the Publication
+		record cached by the daemon.
 
-			Possible errors:
-				org.bluez.mesh.Error.DoesNotExist
-				org.bluez.mesh.Error.InvalidArguments
+		Possible errors:
+			org.bluez.mesh.Error.DoesNotExist
+			org.bluez.mesh.Error.InvalidArguments
 
-		void VendorPublish(object element_path, uint16 vendor, uint16 model_id,
-								array{byte} data)
+	void VendorPublish(object element_path, uint16 vendor, uint16 model_id,
+							array{byte} data)
 
-			This method is used to send a publication originated by a local
-			vendor model. If the model does not exist, or it has no publication
-			record, the method returns org.bluez.mesh.Error.DoesNotExist error.
+		This method is used to send a publication originated by a local
+		vendor model. If the model does not exist, or it has no
+		publication record, the method returns
+		org.bluez.mesh.Error.DoesNotExist error.
 
-			The element_path parameter is the object path of an element from
-			a collection of the application elements (see Mesh Application
-			Hierarchy section).
+		The element_path parameter is the object path of an element from
+		a collection of the application elements (see Mesh Application
+		Hierarchy section).
 
-			The vendor parameter is a 16-bit Bluetooth-assigned Company
-			Identifier.
+		The vendor parameter is a 16-bit Bluetooth-assigned Company ID.
 
-			The model_id parameter is a 16-bit vendor-assigned Model Identifier.
+		The model_id parameter is a 16-bit vendor-assigned Model
+		Identifier.
 
-			Since only one Publish record may exist per element-model, the
-			destination and key_index are obtained from the Publication
-			record cached by the daemon.
+		Since only one Publish record may exist per element-model, the
+		destination and key_index are obtained from the Publication
+		record cached by the daemon.
 
-			Possible errors:
-				org.bluez.mesh.Error.DoesNotExist
-				org.bluez.mesh.Error.InvalidArguments
+		Possible errors:
+			org.bluez.mesh.Error.DoesNotExist
+			org.bluez.mesh.Error.InvalidArguments
 
 Properties:
-		dict Features [read-only]
+	dict Features [read-only]
 
-			The dictionary that contains information about feature support.
-			The following keys are defined:
+		The dictionary that contains information about feature support.
+		The following keys are defined:
 
-				boolean Friend
+		boolean Friend
 
-					Indicates the ability to establish a friendship with a
-					Low Power node
+			Indicates the ability to establish a friendship with a
+			Low Power node
 
-				boolean LowPower
+		boolean LowPower
 
-					Indicates support for operating in Low Power node mode
+			Indicates support for operating in Low Power node mode
 
-				boolean Proxy
+		boolean Proxy
 
-					Indicates support for GATT proxy
+			Indicates support for GATT proxy
 
-				boolean Relay - indicates support for relaying messages
+		boolean Relay
+			Indicates support for relaying messages
 
-			If the key is absent from the dictionary, the feature is not
-			supported. Otherwise, true means that the feature is enabled and
-			false means that the feature is disabled.
+	If a key is absent from the dictionary, the feature is not supported.
+	Otherwise, true means that the feature is enabled and false means that
+	the feature is disabled.
 
-		boolean Beacon [read-only]
+	boolean Beacon [read-only]
 
-			This property indicates whether the periodic beaconing is enabled
-			(true) or disabled (false).
+		This property indicates whether the periodic beaconing is
+		enabled (true) or disabled (false).
 
-		uint32 SecondsSinceLastHeard [read-only]
+	uint32 SecondsSinceLastHeard [read-only]
 
-			This property may be read at any time to determine the number of
-			seconds since mesh network layer traffic was last detected on this
-			node's network.
+		This property may be read at any time to determine the number of
+		seconds since mesh network layer traffic was last detected on
+		this node's network.
 
 
 Mesh Application Hierarchy
 ==========================
 Service		unique name
-Interface		org.bluez.mesh.Application1
+Interface	org.bluez.mesh.Application1
 Object path	<app_defined_root>
 
 An application is a collection of elements that host SIG defined and vendor
@@ -254,40 +261,41 @@ An example mesh application hierarchy may look like this:
 			| |   - org.bluez.mesh.Element1
 
 Methods:
-		void JoinComplete(uint64 token)
+	void JoinComplete(uint64 token)
 
-			This method is called when the node provisioning initiated
-			by a Join() method call successfully completed.
+		This method is called when the node provisioning initiated
+		by a Join() method call successfully completed.
 
-			The token parameter serves as a unique identifier of the particular
-			node. The token must be preserved by the application in order to
-			authenticate itself to the mesh daemon and attach to the network
-			as a mesh node by calling Attach() method or permanently remove the
-			identity of the mesh node by calling Leave() method.
+		The token parameter serves as a unique identifier of the
+		particular node. The token must be preserved by the application
+		in order to authenticate itself to the mesh daemon and attach to
+		the network as a mesh node by calling Attach() method or
+		permanently remove the identity of the mesh node by calling
+		Leave() method.
 
-		void JoinFailed(string reason)
+	void JoinFailed(string reason)
 
-			This method is called when the node provisioning initiated
-			by Join() has failed.
+		This method is called when the node provisioning initiated by
+		Join() has failed.
 
-			The reason parameter identifies the reason for provisioning failure.
-			The defined values are: "timeout", "bad-pdu", "confirmation-failed",
-			"out-of-resources", "decryption-error", "unexpected-error",
-			"cannot-assign-addresses".
+		The reason parameter identifies the reason for provisioning
+		failure. The defined values are: "timeout", "bad-pdu",
+		"confirmation-failed", "out-of-resources", "decryption-error",
+		"unexpected-error", "cannot-assign-addresses".
 
 Properties:
-		uint16 CompanyID [read-only]
+	uint16 CompanyID [read-only]
 
-			A 16-bit Bluetooth-assigned Company Identifier of the vendor as
-			defined by Bluetooth SIG
+		A 16-bit Bluetooth-assigned Company Identifier of the vendor as
+		defined by Bluetooth SIG
 
-		uint16 ProductID [read-only]
+	uint16 ProductID [read-only]
 
-			A 16-bit vendor-assigned product identifier
+		A 16-bit vendor-assigned product identifier
 
-		uint16 VersionID [read-only]
+	uint16 VersionID [read-only]
 
-			A 16-bit vendor-assigned product version identifier
+		A 16-bit vendor-assigned product version identifier
 
 
 Mesh Element Hierarchy
@@ -297,77 +305,74 @@ Interface	org.bluez.mesh.Element1
 Object path	<app_defined_element_path>
 
 Methods:
-		void MessageReceived(uint16 source, uint16 key_index,
-								boolean subscription, array{byte} data)
+	void MessageReceived(uint16 source, uint16 key_index,
+					boolean subscription, array{byte} data)
 
-			This method is called by meshd daemon when a message arrives
-			addressed to the application.
+		This method is called by meshd daemon when a message arrives
+		addressed to the application.
 
-			The source parameter is unicast address of the remote node-element
-			that sent the message.
+		The source parameter is unicast address of the remote
+		node-element that sent the message.
 
-			The key_index parameter indicates which application key has been
-			used to decode the incoming message. The same key_index should be
-			used by the application when sending a response to this message
-			(in case a response is expected).
+		The key_index parameter indicates which application key has been
+		used to decode the incoming message. The same key_index should
+		be used by the application when sending a response to this
+		message (in case a response is expected).
 
-			The subscription parameter is a boolean that is set to true if
-			the message is received as a part of the subscription (i.e., the
-			destination is either a well known group address or a virtual
-			label.
+		The subscription parameter is a boolean that is set to true if
+		the message is received as a part of the subscription (i.e., the
+		destination is either a well known group address or a virtual
+		label.
 
-			The data parameter is the incoming message.
+		The data parameter is the incoming message.
 
-		void UpdateModelConfiguration(uint16 model_id, dict config)
+	void UpdateModelConfiguration(uint16 model_id, dict config)
 
-			This method is called by meshd daemon when a model's configuration
-			is updated.
+		This method is called by meshd daemon when a model's
+		configuration is updated.
 
-			The model_id parameter contains BT SIG Model Identifier or, if
-			Vendor key is present in config dictionary, a 16-bit
-			vendor-assigned Model Identifier.
+		The model_id parameter contains BT SIG Model Identifier or, if
+		Vendor key is present in config dictionary, a 16-bit
+		vendor-assigned Model Identifier.
 
-			The config parameter is a dictionary with the following keys
-			defined:
+		The config parameter is a dictionary with the following keys
+		defined:
 
-				array{uint16} Bindings
+		array{uint16} Bindings
 
-					Indices of application keys bound to the model
+			Indices of application keys bound to the model
 
-				uint32 PublicationPeriod
+		uint32 PublicationPeriod
 
-					Model publication period in milliseconds
+			Model publication period in milliseconds
 
-				uint16 Vendor
+		uint16 Vendor
 
-					A 16-bit Bluetooth-assigned Company Identifier of the
-					vendor as defined by Bluetooth SIG
+			A 16-bit Bluetooth-assigned Company Identifier of the
+			vendor as defined by Bluetooth SIG
 
 Properties:
-			uint8 Index [read-only]
-
-				Element index. It is required that the application follows
-				sequential numbering scheme for the elements, starting with 0.
+	uint8 Index [read-only]
 
-			array{uint16} Models [read-only]
+		Element index. It is required that the application follows
+		sequential numbering scheme for the elements, starting with 0.
 
-				An array of SIG Model Identifiers. The array may be empty.
+	array{uint16} Models [read-only]
 
-			array{(uint16, uint16)} VendorModels [read-only]
+		An array of SIG Model Identifiers. The array may be empty.
 
-				An array of pairs (vendor, model ID):
+	array{(uint16, uint16)} VendorModels [read-only]
 
-					vendor is a 16-bit Bluetooth-assigned Company Identifier
-					of the vendor as defined by Bluetooth SIG
+		An array of pairs (vendor, model ID): vendor is a 16-bit
+		Bluetooth-assigned Company ID as defined by Bluetooth SIG.
+		model ID is a 16-bit vendor-assigned Model Identifier
 
-					model ID is a 16-bit vendor-assigned Model Identifier
+		The array may be empty.
 
-				The array may be empty.
+	uint16 Location [read-only, optional]
 
-			uint16 Location [read-only, optional]
-
-				Location descriptor as defined in the GATT Bluetooth Namespace
-				Descriptors section of the Bluetooth SIG Assigned Numbers
+		Location descriptor as defined in the GATT Bluetooth Namespace
+		Descriptors section of the Bluetooth SIG Assigned Numbers
 
 
 Mesh Attention Hierarchy
@@ -379,27 +384,27 @@ Object path	freely definable
 This is an optional interface that implements health attention timer.
 
 Methods:
-		void SetTimer(uint8 element_index,  uint16 time)
+	void SetTimer(uint8 element_index,  uint16 time)
 
-			The element_index parameter is the element's index within the node
-			where the health server model is hosted.
+		The element_index parameter is the element's index within the
+		node where the health server model is hosted.
 
-			The time parameter indicates how many seconds the attention state
-			shall be on.
+		The time parameter indicates how many seconds the attention
+		state shall be on.
 
-			PossibleErrors:
-				org.bluez.mesh.Error.NotSupported
+		PossibleErrors:
+			org.bluez.mesh.Error.NotSupported
 
-		uint16 GetTimer(uint16 element)
+	uint16 GetTimer(uint16 element)
 
-			The element parameter is the unicast address within the node
-			where the health server model is hosted.
+		The element parameter is the unicast address within the node
+		where the health server model is hosted.
 
-			Returns the number of seconds for how long the attention action
-			remains staying on.
+		Returns the number of seconds for how long the attention action
+		remains staying on.
 
-			PossibleErrors:
-				org.bluez.mesh.Error.NotSupported
+		PossibleErrors:
+			org.bluez.mesh.Error.NotSupported
 
 
 Provisioning Agent Hierarchy
@@ -409,102 +414,139 @@ Interface	org.bluez.mesh.ProvisionAgent1
 Object path	freely definable
 
 Methods:
-		array{byte} PrivateKey()
+	array{byte} PrivateKey()
 
-			This method is called during provisioning if the Provisioner
-			has requested Out-Of-Band ECC key exchange. The Private key
-			is returned to the Daemon, and the Public Key is delivered to
-			the remote Provisioner using a method that does not involve
-			the Bluetooth Mesh system. The Private Key returned must be
-			32 octets in size, or the Provisioning procedure will fail
-			and be canceled.
+		This method is called during provisioning if the Provisioner
+		has requested Out-Of-Band ECC key exchange. The Private key is
+		returned to the Daemon, and the Public Key is delivered to the
+		remote Provisioner using a method that does not involve the
+		Bluetooth Mesh system. The Private Key returned must be 32
+		octets in size, or the Provisioning procedure will fail and be
+		canceled.
 
-			This function will only be called if the Provisioner has
-			requested pre-determined keys to be exchanged Out-of-Band,
-			and the local role is Unprovisioned device.
+		This function will only be called if the Provisioner has
+		requested pre-determined keys to be exchanged Out-of-Band, and
+		the local role is Unprovisioned device.
 
-		array{byte} PublicKey()
+	array{byte} PublicKey()
 
-			This method is called during provisioning if the local device
-			is the Provisioner, and is requestng Out-Of-Band ECC key
-			exchange. The Public key is returned to the Daemon
-			that is the matched pair of the Private key of the remote
-			device. The Public Key returned must be 64 octets in
-			size, or the Provisioning procedure will fail and be canceled.
+		This method is called during provisioning if the local device is
+		the Provisioner, and is requestng Out-Of-Band ECC key exchange.
+		The Public key is returned to the Daemon that is the matched
+		pair of the Private key of the remote device. The Public Key
+		returned must be 64 octets in size, or the Provisioning
+		procedure will fail and be canceled.
 
-			This function will only be called if the Provisioner has
-			requested pre-determined keys to be exchanged Out-of-Band,
-			and the local role is Provisioner.
+		This function will only be called if the Provisioner has
+		requested pre-determined keys to be exchanged Out-of-Band, and
+		the local role is Provisioner.
 
-		void DisplayString(string display)
-			This method is called when the Daemon has something important
-			for the Agent to Display, but does not require any additional
-			input locally. For instance: "Enter "ABCDE" on remote device".
+	void DisplayString(string value)
+		This method is called when the Daemon has something important
+		for the Agent to Display, but does not require any additional
+		input locally. For instance: "Enter "ABCDE" on remote device".
 
-		void DisplayNumeric(uint8 type, uint32 number)
+	void DisplayNumeric(string type, uint32 number)
 
-			This method is called when the Daemon has something important
-			for the Agent to Display, but does not require any additional
-			input locally. For instance: "Enter 149264 on remote device".
+		This method is called when the Daemon has something important
+		for the Agent to Display, but does not require any additional
+		input locally. For instance: "Enter 14939264 on remote device".
 
-			The type parameter indicates the display method. An enumeration
-			of "Blink", "Beep", "Vibrate", or "OutNumeric".
+		The type parameter indicates the display method.  Allowed values
+		are:
 
-			The number parameter is the specific value represented by
-			the Prompt.
+			"blink" - Locally blink LED
+			"beep" - Locally make a noise
+			"vibrate" - Locally vibrate
+			"out-numeric" - Display value to enter remotely
+			"push" - Request pushes on remote button
+			"twist" - Request twists on remote knob
 
-		uint32 PromptNumeric(uint8 type)
+		The number parameter is the specific value represented by the
+		Prompt.
 
-			This method is called when the Daemon has requires the user to
-			enter a 1-9 digit decimal value.
+	uint32 PromptNumeric(string type)
 
-			The type parameter indicates the input method. An enumeration
-			of "Push", "Twist", or "InNumeric".
+		This method is called when the Daemon has requires the user to
+		enter a 1-99999999 digit decimal value.
 
-			This agent should prompt the user for specific input. For instance:
-			"Enter value being displayed by remote device".
+		The type parameter indicates the input method. Allowed values
+		are:
 
-		array{byte} PromptStatic(uint8 type)
+			"blink" - Enter times remote LED blinked
+			"beep" - Enter times remote device beeped
+			"vibrate" - Enter times remote device vibrated
+			"in-numeric" - Enter remotely displayed value
+			"push" - Push local button remotely requested times
+			"twist" - Twist local knob remotely requested times
 
-			This method is called when the Daemon requires a 16 octet
-			byte array, as an Out-of-Band authentication.
 
-			The type parameter indicates the input method. An enumeration
-			of "Static", or "InAlpha".
+		This agent should prompt the user for specific input. For
+		instance: "Enter value being displayed by remote device".
 
-			The Static data returned must be 16 octets in size, or the
-			Provisioning procedure will fail and be canceled. If input is
-			an InAlpha String, the printable charactors should be left
-			justified, with trailing 0x00 octets filling the remaining bytes.
+	array{byte} PromptStatic(string type)
 
-		void Cancel()
+		This method is called when the Daemon requires a 16 octet byte
+		array, as an Out-of-Band authentication.
 
-			This method gets called by the daemon to cancel any existing
-			Agent Requests. When called, any pending user input should be
-			canceled.
+		The type parameter indicates the input method. Allowed values
+		are:
 
+			"static-oob" - return 16 octet array
+			"in-alpha" - return 16 octet alpha array
 
-Properties:
-			array{string} Capabilities [read-only]
+		The Static data returned must be 16 octets in size, or the
+		Provisioning procedure will fail and be canceled. If input type
+		is "in-alpha", the printable characters should be
+		left-justified, with trailing 0x00 octets filling the remaining
+		bytes.
 
-				An array of strings with the following allowed values:
-					"blink", "beep", "vibrate", "out-numeric", "out-alpha",
-					"push", "twist", "in-numeric", "in-alpha", "public-oob",
-					"static-oob".
+	void Cancel()
 
+		This method gets called by the daemon to cancel any existing
+		Agent Requests. When called, any pending user input should be
+		canceled, and any display requests removed.
 
-			array{string} OutOfBandInfo [read-only, optional]
 
-				Indicates availability of OOB data.
-				An array of strings with the following allowed values:
-					"other", "uri", "machine-code-2d", "bar-code", "nfc",
-					"number", "string", "on-box", "in-box", "on-paper",
-					"in-manual", "on-device"
-
-			string URI [read-only, optional]
-
-				Uniform Resource Identifier points to out-of-band (OOB)
-				information (e.g., a public key)
+Properties:
+	array{string} Capabilities [read-only]
+
+		An array of strings with the following allowed values:
+
+			"blink"
+			"beep"
+			"vibrate"
+			"out-numeric"
+			"out-alpha"
+			"push"
+			"twist"
+			"in-numeric"
+			"in-alpha"
+			"static-oob"
+			"public-oob"
+
+	array{string} OutOfBandInfo [read-only, optional]
+
+		Indicates availability of OOB data. An array of strings with the
+		following allowed values:
+
+			"other"
+			"uri"
+			"machine-code-2d"
+			"bar-code"
+			"nfc"
+			"number"
+			"string"
+			"on-box"
+			"in-box"
+			"on-paper",
+			"in-manual"
+			"on-device"
+
+	string URI [read-only, optional]
+
+		Uniform Resource Identifier points to out-of-band (OOB)
+		information (e.g., a public key)
 
 
 Mesh Provisioner Hierarchy
-- 
2.14.5


^ permalink raw reply	[flat|nested] 1+ messages in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-04 22:04 [PATCH BlueZ] doc: Update mesh Agent API Brian Gix

Linux-Bluetooth Archive on lore.kernel.org

Archives are clonable: git clone --mirror https://lore.kernel.org/linux-bluetooth/0 linux-bluetooth/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-bluetooth linux-bluetooth/ https://lore.kernel.org/linux-bluetooth \
		linux-bluetooth@vger.kernel.org linux-bluetooth@archiver.kernel.org
	public-inbox-index linux-bluetooth


Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-bluetooth


AGPL code for this site: git clone https://public-inbox.org/ public-inbox