Arduino DLNA Server
Loading...
Searching...
No Matches
src
dlna
devices
MediaServer
ms_connmgr.h
Go to the documentation of this file.
1
#pragma once
2
#include <
dlna/xml/XMLPrinter.h
>
3
/*
4
<?xml version=\"1.0\"?>
5
<scpd xmlns=\"urn:schemas-upnp-org:service-1-0\">
6
<specVersion>
7
<major>1</major>
8
<minor>0</minor>
9
</specVersion>
10
<actionList>
11
<action>
12
<name>GetCurrentConnectionIDs</name>
13
<argumentList>
14
<argument>
15
<name>ConnectionIDs</name>
16
<direction>out</direction>
17
<relatedStateVariable>CurrentConnectionIDs</relatedStateVariable>
18
</argument>
19
</argumentList>
20
</action>
21
<action>
22
<name>GetCurrentConnectionInfo</name>
23
<argumentList>
24
<argument>
25
<name>ConnectionID</name>
26
<direction>in</direction>
27
<relatedStateVariable>A_ARG_TYPE_ConnectionID</relatedStateVariable>
28
</argument>
29
<argument>
30
<name>RcsID</name>
31
<direction>out</direction>
32
<relatedStateVariable>A_ARG_TYPE_RcsID</relatedStateVariable>
33
</argument>
34
<argument>
35
<name>AVTransportID</name>
36
<direction>out</direction>
37
<relatedStateVariable>A_ARG_TYPE_AVTransportID</relatedStateVariable>
38
</argument>
39
<argument>
40
<name>ProtocolInfo</name>
41
<direction>out</direction>
42
<relatedStateVariable>A_ARG_TYPE_ProtocolInfo</relatedStateVariable>
43
</argument>
44
<argument>
45
<name>PeerConnectionManager</name>
46
<direction>out</direction>
47
<relatedStateVariable>A_ARG_TYPE_ConnectionManager</relatedStateVariable>
48
</argument>
49
<argument>
50
<name>PeerConnectionID</name>
51
<direction>out</direction>
52
<relatedStateVariable>A_ARG_TYPE_ConnectionID</relatedStateVariable>
53
</argument>
54
<argument>
55
<name>Direction</name>
56
<direction>out</direction>
57
<relatedStateVariable>A_ARG_TYPE_Direction</relatedStateVariable>
58
</argument>
59
<argument>
60
<name>Status</name>
61
<direction>out</direction>
62
<relatedStateVariable>A_ARG_TYPE_ConnectionStatus</relatedStateVariable>
63
</argument>
64
</argumentList>
65
</action>
66
<action>
67
<name>GetProtocolInfo</name>
68
<argumentList>
69
<argument>
70
<name>Source</name>
71
<direction>out</direction>
72
<relatedStateVariable>SourceProtocolInfo</relatedStateVariable>
73
</argument>
74
<argument>
75
<name>Sink</name>
76
<direction>out</direction>
77
<relatedStateVariable>SinkProtocolInfo</relatedStateVariable>
78
</argument>
79
</argumentList>
80
</action>
81
<action>
82
<name>PrepareForConnection</name>
83
<argumentList>
84
<argument>
85
<name>RemoteProtocolInfo</name>
86
<direction>in</direction>
87
<relatedStateVariable>A_ARG_TYPE_ProtocolInfo</relatedStateVariable>
88
</argument>
89
<argument>
90
<name>PeerConnectionManager</name>
91
<direction>in</direction>
92
<relatedStateVariable>A_ARG_TYPE_ConnectionManager</relatedStateVariable>
93
</argument>
94
<argument>
95
<name>PeerConnectionID</name>
96
<direction>in</direction>
97
<relatedStateVariable>A_ARG_TYPE_ConnectionID</relatedStateVariable>
98
</argument>
99
<argument>
100
<name>Direction</name>
101
<direction>in</direction>
102
<relatedStateVariable>A_ARG_TYPE_Direction</relatedStateVariable>
103
</argument>
104
<argument>
105
<name>ConnectionID</name>
106
<direction>out</direction>
107
<relatedStateVariable>A_ARG_TYPE_ConnectionID</relatedStateVariable>
108
</argument>
109
<argument>
110
<name>AVTransportID</name>
111
<direction>out</direction>
112
<relatedStateVariable>A_ARG_TYPE_AVTransportID</relatedStateVariable>
113
</argument>
114
<argument>
115
<name>RcsID</name>
116
<direction>out</direction>
117
<relatedStateVariable>A_ARG_TYPE_RcsID</relatedStateVariable>
118
</argument>
119
</argumentList>
120
</action>
121
</actionList>
122
<serviceStateTable>
123
<stateVariable sendEvents=\"no\">
124
<name>A_ARG_TYPE_ConnectionManager</name>
125
<dataType>string</dataType>
126
</stateVariable>
127
<stateVariable sendEvents=\"yes\">
128
<name>SinkProtocolInfo</name>
129
<dataType>string</dataType>
130
</stateVariable>
131
<stateVariable sendEvents=\"no\">
132
<name>A_ARG_TYPE_ConnectionStatus</name>
133
<dataType>string</dataType>
134
<allowedValueList>
135
<allowedValue>OK</allowedValue>
136
<allowedValue>ContentFormatMismatch</allowedValue>
137
<allowedValue>InsufficientBandwidth</allowedValue>
138
<allowedValue>UnreliableChannel</allowedValue>
139
<allowedValue>Unknown</allowedValue>
140
</allowedValueList>
141
</stateVariable>
142
<stateVariable sendEvents=\"no\">
143
<name>A_ARG_TYPE_AVTransportID</name>
144
<dataType>i4</dataType>
145
</stateVariable>
146
<stateVariable sendEvents=\"no\">
147
<name>A_ARG_TYPE_Direction</name>
148
<dataType>string</dataType>
149
<allowedValueList>
150
<allowedValue>Input</allowedValue>
151
<allowedValue>Output</allowedValue>
152
</allowedValueList>
153
</stateVariable>
154
<stateVariable sendEvents=\"no\">
155
<name>A_ARG_TYPE_RcsID</name>
156
<dataType>i4</dataType>
157
</stateVariable>
158
<stateVariable sendEvents=\"no\">
159
<name>A_ARG_TYPE_ProtocolInfo</name>
160
<dataType>string</dataType>
161
</stateVariable>
162
<stateVariable sendEvents=\"no\">
163
<name>A_ARG_TYPE_ConnectionID</name>
164
<dataType>i4</dataType>
165
</stateVariable>
166
<stateVariable sendEvents=\"yes\">
167
<name>SourceProtocolInfo</name>
168
<dataType>string</dataType>
169
</stateVariable>
170
<stateVariable sendEvents=\"yes\">
171
<name>CurrentConnectionIDs</name>
172
<dataType>string</dataType>
173
</stateVariable>
174
</serviceStateTable>
175
</scpd>\n";
176
*/
177
178
#include "
dlna/xml/XMLPrinter.h
"
179
180
static
void
ms_connmgr_xml_printer(Print& out) {
181
using
tiny_dlna::XMLPrinter
;
182
XMLPrinter xml(out);
183
xml.printXMLHeader();
184
xml.printNodeBeginNl(
"scpd"
,
"xmlns=\"urn:schemas-upnp-org:service-1-0\""
);
185
186
xml.printNodeBeginNl(
"specVersion"
);
187
xml.printNode(
"major"
, 1);
188
xml.printNode(
"minor"
, 0);
189
xml.printNodeEnd(
"specVersion"
);
190
191
xml.printNodeBeginNl(
"actionList"
);
192
/* GetProtocolInfo */
193
xml.printNodeBeginNl(
"action"
);
194
xml.printNode(
"name"
,
"GetProtocolInfo"
);
195
xml.printNodeBeginNl(
"argumentList"
);
196
xml.printArgument(
"Source"
,
"out"
,
"SourceProtocolInfo"
);
197
xml.printArgument(
"Sink"
,
"out"
,
"SinkProtocolInfo"
);
198
xml.printNodeEnd(
"argumentList"
);
199
xml.printNodeEnd(
"action"
);
200
201
/* GetCurrentConnectionIDs */
202
xml.printNodeBeginNl(
"action"
);
203
xml.printNode(
"name"
,
"GetCurrentConnectionIDs"
);
204
xml.printNodeBeginNl(
"argumentList"
);
205
xml.printArgument(
"ConnectionIDs"
,
"out"
,
"CurrentConnectionIDs"
);
206
xml.printNodeEnd(
"argumentList"
);
207
xml.printNodeEnd(
"action"
);
208
209
/* GetCurrentConnectionInfo */
210
xml.printNodeBeginNl(
"action"
);
211
xml.printNode(
"name"
,
"GetCurrentConnectionInfo"
);
212
xml.printNodeBeginNl(
"argumentList"
);
213
xml.printArgument(
"ConnectionID"
,
"in"
,
"A_ARG_TYPE_ConnectionID"
);
214
xml.printArgument(
"RcsID"
,
"out"
,
"A_ARG_TYPE_RcsID"
);
215
xml.printArgument(
"AVTransportID"
,
"out"
,
"A_ARG_TYPE_AVTransportID"
);
216
xml.printArgument(
"ProtocolInfo"
,
"out"
,
"A_ARG_TYPE_ProtocolInfo"
);
217
xml.printArgument(
"PeerConnectionManager"
,
"out"
,
"A_ARG_TYPE_ConnectionManager"
);
218
xml.printArgument(
"PeerConnectionID"
,
"out"
,
"A_ARG_TYPE_ConnectionID"
);
219
xml.printArgument(
"Direction"
,
"out"
,
"A_ARG_TYPE_Direction"
);
220
xml.printArgument(
"Status"
,
"out"
,
"A_ARG_TYPE_ConnectionStatus"
);
221
xml.printNodeEnd(
"argumentList"
);
222
xml.printNodeEnd(
"action"
);
223
xml.printNodeEnd(
"actionList"
);
224
xml.printNodeBeginNl(
"serviceStateTable"
);
225
226
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"yes\""
);
227
xml.printNode(
"name"
,
"SourceProtocolInfo"
);
228
xml.printNode(
"dataType"
,
"string"
);
229
xml.printNodeEnd(
"stateVariable"
);
230
231
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"yes\""
);
232
xml.printNode(
"name"
,
"SinkProtocolInfo"
);
233
xml.printNode(
"dataType"
,
"string"
);
234
xml.printNodeEnd(
"stateVariable"
);
235
236
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"yes\""
);
237
xml.printNode(
"name"
,
"CurrentConnectionIDs"
);
238
xml.printNode(
"dataType"
,
"string"
);
239
xml.printNodeEnd(
"stateVariable"
);
240
241
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"no\""
);
242
xml.printNode(
"name"
,
"A_ARG_TYPE_ConnectionStatus"
);
243
xml.printNode(
"dataType"
,
"string"
);
244
xml.printNodeBeginNl(
"allowedValueList"
);
245
xml.printNode(
"allowedValue"
,
"OK"
);
246
xml.printNode(
"allowedValue"
,
"ContentFormatMismatch"
);
247
xml.printNode(
"allowedValue"
,
"InsufficientBandwidth"
);
248
xml.printNode(
"allowedValue"
,
"UnreliableChannel"
);
249
xml.printNode(
"allowedValue"
,
"Unknown"
);
250
xml.printNodeEnd(
"allowedValueList"
);
251
xml.printNodeEnd(
"stateVariable"
);
252
253
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"no\""
);
254
xml.printNode(
"name"
,
"A_ARG_TYPE_ConnectionManager"
);
255
xml.printNode(
"dataType"
,
"string"
);
256
xml.printNodeEnd(
"stateVariable"
);
257
258
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"no\""
);
259
xml.printNode(
"name"
,
"A_ARG_TYPE_Direction"
);
260
xml.printNode(
"dataType"
,
"string"
);
261
xml.printNodeBeginNl(
"allowedValueList"
);
262
xml.printNode(
"allowedValue"
,
"Input"
);
263
xml.printNode(
"allowedValue"
,
"Output"
);
264
xml.printNodeEnd(
"allowedValueList"
);
265
xml.printNodeEnd(
"stateVariable"
);
266
267
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"no\""
);
268
xml.printNode(
"name"
,
"A_ARG_TYPE_ProtocolInfo"
);
269
xml.printNode(
"dataType"
,
"string"
);
270
xml.printNodeEnd(
"stateVariable"
);
271
272
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"no\""
);
273
xml.printNode(
"name"
,
"A_ARG_TYPE_ConnectionID"
);
274
xml.printNode(
"dataType"
,
"i4"
);
275
xml.printNodeEnd(
"stateVariable"
);
276
277
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"no\""
);
278
xml.printNode(
"name"
,
"A_ARG_TYPE_AVTransportID"
);
279
xml.printNode(
"dataType"
,
"i4"
);
280
xml.printNodeEnd(
"stateVariable"
);
281
282
xml.printNodeBeginNl(
"stateVariable"
,
"sendEvents=\"no\""
);
283
xml.printNode(
"name"
,
"A_ARG_TYPE_RcsID"
);
284
xml.printNode(
"dataType"
,
"i4"
);
285
xml.printNodeEnd(
"stateVariable"
);
286
287
xml.printNodeEnd(
"serviceStateTable"
);
288
289
xml.printNodeEnd(
"scpd"
);
290
}
XMLPrinter.h
tiny_dlna::XMLPrinter
Functions to efficiently output XML. XML data contains a lot of redundancy so it is more memory effic...
Definition:
XMLPrinter.h:54
Generated by
1.9.6