blob: 33c47fa00b11f99abefd15f4f5e5883483b87bcc [file] [log] [blame] [edit]
Agent Manager hierarchy
=======================
Service org.neard
Interface org.neard.AgentManager
Object path /org/neard
Methods void RegisterHandoverAgent(object path, string carrier)
Register new handover agent.
Supported carriers are: 'bluetooth', 'wifi'.
Only one registration will be accepted per carrier.
Possible Errors: org.neard.Error.InvalidArguments
org.neard.Error.AlreadyExists.
void UnregisterHandoverAgent(object path, string carrier)
Unregister an existing handover agent.
Possible Errors: org.neard.Error.InvalidArguments
void RegisterNDEFAgent(object path, string type)
Register new NDEF agent.
When a record matching the registered type is found,
the agent will get the whole NDEF as a raw byte stream.
Possible Errors: org.neard.Error.InvalidArguments
void UnregisterNDEFAgent(object path, string type)
Unregister an existing NDEF agent.
Possible Errors: org.neard.Error.InvalidArguments
HandoverAgent hierarchy
=======================
Service unique name
Interface org.neard.HandoverAgent
Object path freely definable
Methods dict RequestOOB(dict values) [experimental]
This method gets called when the service daemon
needs to get Out Of Band data from the handover
agent, typically the BlueZ daemon.
The service daemon will use this OOB data to build
a Handover Request or Select message and send it to
remote device.
Values parameter is optional. It should be a dictionary
where the keys are the field names and the values are
the actual fields. If provided it should contain remote
Out Of Band data received in Handover Request message.
Those data will be stored for future use (i.e. when
remote initialize pairing) and providing those will not
initialize pairing.
The return value should be a dictionary where the
keys are the field names and the values are the
actual fields.
Possible Errors: org.neard.HandoverAgent.Error.InProgress
org.neard.HandoverAgent.Error.Failed
void PushOOB(dict values) [experimental]
This method gets called when service daemon received
Handover Select message from selector and needs to pass
remote Out Of Band data to agent to start handover.
If there is no Bluetooth adapter or if it doesn't
support simple pairing the agent will return an error.
Agent shall implicitly initialize pairing if needed.
This function returns when alternative carrier
(Bluetooth) is ready to be used i.e. pairing has
finished.
Parameter should be a dictionary where the keys are the
field names and the values are the actual fields.
Possible Errors: org.neard.HandoverAgent.Error.InProgress
org.neard.HandoverAgent.Error.Failed
void Release() [experimental]
This method gets called when the service daemon
unregisters the agent. An agent can use it to do
cleanup tasks. There is no need to unregister the
agent, because when this method gets called it has
already been unregistered.
Fields array{byte} EIR
This is EIR blob as described in Bluetooth Core
Specification 4.0 (Vol 3, Part C, chapter 8.1.6).
Used by SSP capable devices.
array{byte} nokia.com:bt
This is a proprietary extension blob used by some
Nokia Bluetooth 2.0 devices.
array{byte} WSC
This is a WiFi blob as described in WiFi Simple
Configuration Technical Specification v2.0.2.1-rev4.
(Annex L - Data Element Definitions)
string State
Carrier power state. This is a hint for handover agent
about power state of carrier on remote device. Agent
should also use it to inform neard about power state
of its own carrier (in RequestOOB reply). It is up to
agent to decide how to use this information.
This field may be present only if nokia.com:bt or
EIR field is also present.
Possible values are "active", "inactive", "activating".
NDEFAgent hierarchy
=======================
Service unique name
Interface org.neard.NDEFAgent
Object path freely definable
Methods void GetNDEF(dict values) [experimental]
This method gets called when the service daemon
found an NDEF matching the registered type.
The parameter is a dictionary where the keys are the
field names and the values are the actual fields.
void Release() [experimental]
This method gets called when the service daemon
unregisters the agent. An agent can use it to do
cleanup tasks. There is no need to unregister the
agent, because when this method gets called it has
already been unregistered.
Fields array{byte} NDEF
This is the raw NDEF data.
array{byte} Payload
This is the NDEF record payload.
object Record
This is a record object path.