2 "_copyright": "Copyright (C) 2012 - 2013, Digium, Inc.",
3 "_author": "David M. Lee, II <dlee@digium.com>",
4 "_svn_revision": "$Revision$",
6 "swaggerVersion": "1.1",
7 "basePath": "http://localhost:8088/stasis",
8 "resourcePath": "/api-docs/bridges.{format}",
12 "description": "Active bridges",
16 "summary": "List all active bridges in Asterisk.",
18 "responseClass": "List[Bridge]"
22 "summary": "Create a new bridge.",
23 "notes": "This bridge persists until it has been shut down, or Asterisk has been shut down.",
25 "responseClass": "Bridge",
29 "description": "Type of bridge to create.",
32 "allowMultiple": false,
44 "description": "Name to give to the bridge being created.",
47 "allowMultiple": false,
55 "path": "/bridges/{bridgeId}",
56 "description": "Individual bridge",
60 "summary": "Get bridge details.",
62 "responseClass": "Bridge",
66 "description": "Bridge's id",
69 "allowMultiple": false,
76 "reason": "Bridge not found"
81 "httpMethod": "DELETE",
82 "summary": "Shut down a bridge.",
83 "notes": "If any channels are in this bridge, they will be removed and resume whatever they were doing beforehand.",
84 "nickname": "destroy",
85 "responseClass": "void",
89 "description": "Bridge's id",
92 "allowMultiple": false,
99 "reason": "Bridge not found"
106 "path": "/bridges/{bridgeId}/addChannel",
107 "description": "Add a channel to a bridge",
110 "httpMethod": "POST",
111 "summary": "Add a channel to a bridge.",
112 "nickname": "addChannel",
113 "responseClass": "void",
117 "description": "Bridge's id",
120 "allowMultiple": false,
125 "description": "Ids of channels to add to bridge",
126 "paramType": "query",
128 "allowMultiple": true,
133 "description": "Channel's role in the bridge",
134 "paramType": "query",
136 "allowMultiple": false,
143 "reason": "Channel not found"
147 "reason": "Bridge not found"
151 "reason": "Bridge not in Stasis application; Channel currently recording"
155 "reason": "Channel not in Stasis application"
162 "path": "/bridges/{bridgeId}/removeChannel",
163 "description": "Remove a channel from a bridge",
166 "httpMethod": "POST",
167 "summary": "Remove a channel from a bridge.",
168 "nickname": "removeChannel",
169 "responseClass": "void",
173 "description": "Bridge's id",
176 "allowMultiple": false,
181 "description": "Ids of channels to remove from bridge",
182 "paramType": "query",
184 "allowMultiple": true,
191 "reason": "Channel not found"
195 "reason": "Bridge not found"
199 "reason": "Bridge not in Stasis application"
203 "reason": "Channel not in this bridge"
210 "path": "/bridges/{bridgeId}/moh",
211 "description": "Play music on hold to a bridge",
214 "httpMethod": "POST",
215 "summary": "Play music on hold to a bridge or change the MOH class that is playing.",
216 "nickname": "startMoh",
217 "responseClass": "void",
221 "description": "Bridge's id",
224 "allowMultiple": false,
229 "description": "Channel's id",
230 "paramType": "query",
232 "allowMultiple": false,
239 "reason": "Bridge not found"
243 "reason": "Bridge not in Stasis application"
248 "httpMethod": "DELETE",
249 "summary": "Stop playing music on hold to a bridge.",
250 "notes": "This will only stop music on hold being played via POST bridges/{bridgeId}/moh.",
251 "nickname": "stopMoh",
252 "responseClass": "void",
256 "description": "Bridge's id",
259 "allowMultiple": false,
266 "reason": "Bridge not found"
270 "reason": "Bridge not in Stasis application"
277 "path": "/bridges/{bridgeId}/play",
278 "description": "Play media to the participants of a bridge",
281 "httpMethod": "POST",
282 "summary": "Start playback of media on a bridge.",
283 "notes": "The media URI may be any of a number of URI's. Currently sound: and recording: URI's are supported. This operation creates a playback resource that can be used to control the playback of media (pause, rewind, fast forward, etc.)",
285 "responseClass": "Playback",
289 "description": "Bridge's id",
292 "allowMultiple": false,
297 "description": "Media's URI to play.",
298 "paramType": "query",
300 "allowMultiple": false,
305 "description": "For sounds, selects language for sound.",
306 "paramType": "query",
308 "allowMultiple": false,
313 "description": "Number of media to skip before playing.",
314 "paramType": "query",
316 "allowMultiple": false,
320 "valueType": "RANGE",
327 "description": "Number of milliseconds to skip for forward/reverse operations.",
328 "paramType": "query",
330 "allowMultiple": false,
332 "defaultValue": 3000,
334 "valueType": "RANGE",
343 "reason": "Bridge not found"
347 "reason": "Bridge not in a Stasis application"
354 "path": "/bridges/{bridgeId}/record",
355 "description": "Record audio on a bridge",
358 "httpMethod": "POST",
359 "summary": "Start a recording.",
360 "notes": "This records the mixed audio from all channels participating in this bridge.",
361 "nickname": "record",
362 "responseClass": "LiveRecording",
366 "description": "Bridge's id",
369 "allowMultiple": false,
374 "description": "Recording's filename",
375 "paramType": "query",
377 "allowMultiple": false,
382 "description": "Format to encode audio in",
383 "paramType": "query",
385 "allowMultiple": false,
389 "name": "maxDurationSeconds",
390 "description": "Maximum duration of the recording, in seconds. 0 for no limit.",
391 "paramType": "query",
393 "allowMultiple": false,
397 "valueType": "RANGE",
402 "name": "maxSilenceSeconds",
403 "description": "Maximum duration of silence, in seconds. 0 for no limit.",
404 "paramType": "query",
406 "allowMultiple": false,
410 "valueType": "RANGE",
416 "description": "Action to take if a recording with the same name already exists.",
417 "paramType": "query",
419 "allowMultiple": false,
420 "dataType": "string",
421 "defaultValue": "fail",
433 "description": "Play beep when recording begins",
434 "paramType": "query",
436 "allowMultiple": false,
437 "dataType": "boolean",
438 "defaultValue": false
441 "name": "terminateOn",
442 "description": "DTMF input to terminate recording.",
443 "paramType": "query",
445 "allowMultiple": false,
446 "dataType": "string",
447 "defaultValue": "none",
462 "reason": "Invalid parameters"
466 "reason": "Bridge not found"
470 "reason": "Bridge is not in a Stasis application; A recording with the same name already exists on the system and can not be overwritten because it is in progress or ifExists=fail"
474 "reason": "The format specified is unknown on this system"
484 "description": "The merging of media from one or more channels.\n\nEveryone on the bridge receives the same audio.",
488 "description": "Unique identifier for this bridge",
493 "description": "Name of the current bridging technology",
498 "description": "Type of bridge technology",
510 "description": "Bridging class",
515 "description": "Entity that created the bridge",
520 "description": "Name the creator gave the bridge",
524 "type": "List[string]",
525 "description": "Ids of channels participating in this bridge",