summaryrefslogtreecommitdiff
path: root/doc/adapter-api.txt
blob: fe01b3a1a3bfe414a81e683ea162c0f9c7182778 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
Adapter hierarchy
=================

Service		org.neard
Interface	org.neard.Adapter
Object path	[variable prefix]/{nfc0,nfc1,...}

Methods:	dict GetProperties()

			Returns all properties for the device. See the
			properties section for available properties.

			Possible Errors: org.neard.Error.DoesNotExist

		void SetProperty(string name, variant value)

			Changes the value of the specified property. Only
			properties that are listed a read-write are changeable.
			On success this will emit a PropertyChanged signal.

			Possible Errors: org.neard.Error.DoesNotExist
					 org.neard.Error.InvalidArguments

		void StartPollLoop(string mode)

			Starts the adapter polling loop. Depending on the mode,
			the adapter will start polling for targets, listening
			for NFC devices or both.
			The mode parameter can have the following values:
			"Initiator", "Target" or "Dual". For any other value, the
			adapter will fall back to initiator mode.
			Dual mode will have the adapter alternate between target
			and initiator modes during the polling loop.

			This process will start emitting TagFound and
			PropertyChanged "Polling" signals.

			Possible errors: org.neard.Error.NotReady
					 org.neard.Error.Failed
					 org.neard.Error.NotSupported

		void StopPollLoop()

			The adapter polling loop will stop.

			Possible errors: org.neard.Error.NotReady
					 org.neard.Error.Failed
					 org.neard.Error.NotSupported

		object StartEmulation(dict attributes)

			Starts tag emulation mode.

			Adapters can only emulate one target at a time, so
			subsequent calls to this method will always return
			the same object path.

			The attributes dictionary is described by the
			Record properties.
			For example, one would add a type, a Language, an
			Encoding and a Representation for emulating a text
			NDEF record.

			Returns the object path for the emulated target.

			Possible errors: org.neard.Error.NotReady
					 org.neard.Error.Failed
					 org.neard.Error.NotSupported

		void StopEmulation()

			Stops tag emulation mode.

			Possible errors: org.neard.Error.NotReady
					 org.neard.Error.Failed
					 org.neard.Error.NotSupported


Signals		PropertyChanged(string name, variant value)

			This signal indicates a changed value of the given
			property.

		TagFound(string address, dict values)

			This signal is sent whenever an NFC tag is found,
			as a result of a probe response reception.
 
			The dictionary contains basically the same values
			that are returned by the GetProperties method
			from the org.neard.Tag interface.

		TagLost(string address)

			This signal is sent whenever the NFC tag is no longer
			in sight, or when it's been de-activated.


Properties:	string Mode [readonly]

			The adapter mode.

			Valid types are "initiator" and "target".

		boolean Powered [readwrite]

			Switch an adapter on or off.

		boolean Polling [readonly]

			Indicates that the adapter is currently polling for targets.
			This is only valid when the adapter is in initiator mode.

		array{string} Protocols [readonly]

			The adapter supported protocols.
			Possible values are "Felica", "MIFARE", "Jewel",
			"ISO-DEP" and "NFC-DEP".

		array{object} Tags [readonly]

			The tags object paths.

		array{object} Devices [readonly]

			The devices object paths.