API methods¶
REST method | Params | Returns | Errors | Description |
---|---|---|---|---|
SIP as RTMP | ||||
/call/startup |
callId callee rtmpStream rtmpUrl hasAudio hasVideo sipLogin sipAuthenticationName sipPassword sipDomain sipOutboundProxy sipPort appKey sipRegisterRequired toStream visibleName |
void |
409 - Conflict 500 - Internal error |
This method makes a call to SIP. If rtmpUrl is specified, then media traffic received from SIP will be forwarded to the specified rtmpUrl.If toStream is specified, /push/startup request can be used to create transponder for the specified stream name to forward media traffic received from SIP.If call with the same callId , or the same rtmpUrl already exists, 409 Conflict status will be returned.
|
/call/find_all | void | List of Call | 404 - Call not found | Find all SIP calls |
/call/find |
callId callee rtmpUrl status |
List of Call |
404 - Call not found 500 - Internal error |
Find SIP calls by filter |
/call/terminate | callId | void |
404 - Call not found 500 - Internal error |
Hangup and terminate the SIP call |
/call/send_dtmf |
callId dtmf type |
void |
404 - Call not found 500 - Internal error |
Send DTMF within the established SIP call |
/call/inject_sound |
callId fileName |
void |
404 - Call not found/File not found 500 - Internal error |
Inject audio from the specified file |
/call/inject_stream/startup |
callId streamName |
void |
404 - Call not found/Stream not found 500 - Internal error |
Redirecting a stream to a SIP call |
/call/inject_stream/terminate | callId | void |
404 - Call not found 500 - Internal error |
Terminate redirecting a stream to a SIP call |
RTSP | ||||
/rtsp/startup |
uri localStreamName |
void |
409 - Already in use 500 - Internal error |
Create a new RTSP session |
/rtsp/find |
uri status |
List of RtspAgent | 404 - RTSP not found | Find RTSP session by filter |
/rtsp/find_all | void | List of RtspAgent | 404 - RTSP not found | Find all RTSP sessions |
/rtsp/terminate | uri | void |
404 - RTSP not found 500 - Internal error |
Stop and terminate RTSP session |
Streaming | ||||
/stream/find_all | void | List of Stream | 404 - Streams not found | Find all streams |
/stream/find |
appKey name mediaSessionId sessionId status published |
List of Stream |
404 - Stream not found 500 - Internal error |
Find streams by filter |
/stream/terminate |
name mediaSessionId List of mediaSessionId status published |
void |
404 - Stream not found 500 - Internal error |
Terminate stream or streams that conforms to query parameters |
/stream/snapshot | streamName | Base64 data | 404 - Stream not found | Make stream snapshot |
/stream/startRecording | mediaSessionId | void |
404 - Stream not found 500 - Internal error |
Start stream recording in specified media session |
/stream/stopRecording | mediaSessionId | void |
404 - Recorder not found 500 - Internal error |
Stop stream recording in specified media session |
/stream/event/send |
streamName payload |
void |
404 - Stream not found 500 - Internal error |
Send data to all the stream subscribers |
Data | ||||
/data/send |
nodeId sessionId operationId payload |
void | 500 - Internal error | Send data to connected client |
Connection | ||||
/connection/terminate | sessionId | void |
404 - No such connection 500 - Internal error |
Disconnect connected client |
/connection/find_all | void | List of Connection | 404 - No connections found | Find all connections |
/connection/find |
appKey sessionId clientVersion |
List of Connection | 404 - Not found | Find connections by filter |
Republishing as RTMP | ||||
/push/startup |
streamName rtmpUrl options |
Transponder |
400 - Bad request 409 - Conflict 500 - Internal error |
This method creates transponder, which subscribes to the specified stream and forwards the media traffic to the specified rtmpUrl .The steam name specified in the request can be that of a published stream, or reserved for a SIP call (to forward media traffic received from SIP). The options can be used to mute audio, or inject audio from file when transponder is created. For example, - "options": {"action": "mute"} - "options": {"action": "sound_on", "soundFile": "sound.wav", "loop": true} If transponder for such stream name and rtmpUrl already exist, 409 Conflict status will be returned.If rtmpUrl is not set, or is set incorrectly and cannot be resolved by DNS, 400 Bad request is returned
|
/push/find |
streamName rtmpUrl |
List of Transponder | 404 - Transponder not found | Find transponders by filter |
/push/find_all | void | List of Transponder | 404 - Transponder not found | Find all transponders |
/push/terminate | mediaSessionId | void |
404 - Transponder not found 409 - Conflict 500 - Internal error |
Terminate transponder |
/push/mute | mediaSessionId | void |
404 - Transponder not found 409 - Conflict 500 - Internal error |
Mute audio |
/push/unmute | mediaSessionId | void |
404 - Transponder not found 409 - Conflict 500 - Internal error |
Unmute audio |
/push/sound_on |
mediaSessionId soundFile loop |
void |
404 - Transponder not found 404 - No such file 500 - Internal error |
Inject audio from the specified RIFF WAV file located on WCS server in /usr/local/FlashphonerWebCallServer/media/ directory
|
/push/sound_off | mediaSessionId | void |
404 - Transponder not found 500 - Internal error |
Stop injecting audio |
Pull RTMP | ||||
/pull/rtmp/pull | uri | void |
409 - Conflict 500 - Internal error |
Pull RTMP stream by the specified URL |
/pull/rtmp/find_all | void | List of RtmpAgent | 404 - Not found | Find all pulled RTMP streams |
/pull/rtmp/terminate | uri | void | 404 - Not found | Terminate pulled RTMP stream |
Mixer | ||||
/mixer/startup |
uri localStreamName hasVideo hasAudio background watermark mixerLayoutClass |
void |
409 - Conflict 500 - Internal error |
Create mixer with the specified stream name |
/mixer/add |
uri remoteStreamName |
void |
404 - Mixer not found/Stream not found 409 - Conflict 500 - Internal error |
Add RTMP stream to mixer |
/mixer/remove |
uri remoteStreamName |
void | 404 - Mixer not found/Stream not found | Remove RTMP stream from mixer |
/mixer/find_all | void | List of Mixer | 404 - Not found | Find all mixers |
/mixer/terminate | uri | void | 404 - Not found | Terminate mixer |
/mixer/setAudioVideo |
uri streams audioLevel videoMuted |
void |
400 - Bad request 404 - Not found 500 - Internal error |
Mute/unmute video or change audio level for incoming mixer stream |
/mixer/set_body_watermark |
uri watermark x y marginTop marginLeft marginBottom marginRight |
void |
200 - OK 400 - Bad request 404 - Not found |
Add watermark to the mixer output stream picture |
/mixer/set_stream_watermark |
uri watermark mediaSessionId x y marginTop marginLeft marginBottom marginRight |
void |
200 - OK 400 - Bad request 404 - Not found |
Add watermark to a certain mixer input stream on the mixer output stream picture |
/mixer/set_parameter | uri | void |
200 - OK 400 - Bad request 404 - Not found |
Change the mixer parameter |
/mixer/test/start |
feedingStreams mixerCount streamsInMixer intervalInSeconds |
void |
404 - Not found 500 - Internal error |
Start mixer load test |
/mixer/test/stop | void | void |
404 - Not found 500 - Internal error |
Stop mixer load test |
/mixer/test/get_start_example | void | MixerTest | 200 - OK |
Get sample object to pass to /mixer/test/start method
|
Pull WebRTC from another WCS | ||||
/pull/pull |
uri localStreamName remoteStreamName |
void |
409 - Conflict 500 - Internal error |
Pull WebRTC stream by specified URL |
/pull/push |
uri localStreamName remoteStreamName localMediaSessionId |
void |
409 - Conflict 500 - Internal error |
Push WebRTC stream to specified URL |
/pull/find_all | void | List of PullAgent | 404 - Not found | Find all pulled WebRTC streams |
/pull/terminate |
uri localMediaSessionId remoteMediaSessionId localStreamName remoteStreamName status |
void | 404 - Not found | Terminate pulled WebRTC stream |
Logging management | ||||
/logger/enable_client_log |
sessionId logLevel |
void | 404 - Session not found | Set the specified client log level to the specified session |
/logger/disable_client_log | sessionId | void | 404 - Session not found | Fully disable client log in the specified session |
CDN | ||||
/cdn/show_nodes | void | List of CDNNodes | Show CDN nodes state | |
/cdn/show_state | void | processingState | Show CDN node state to which the query was sent | |
/cdn/enforce_state | state | void | 400 – Ivalid state | Forcefully set CDN node state |
/cdn/show_routes | void | List of CDNRoute | 404 - Not found | Show CDN routes |
/cdn/stream/show_routes | streamName | CDNStreamRoute |
400 - Bad request 404 - Not found |
Show CDN route to play the stream specified |
/cdn/stream/access_list/add |
name keys |
void |
400 - Bad request 404 - Stream not found 500 – Internal Server Error |
Add keys to stream ACL |
/cdn/stream/access_list/remove |
name keys |
void |
400 - Bad request 404 - ACL not found/Stream not found 500 – Internal Server Error |
Remove keys from stream ACL |
/cdn/stream/access_list/delete | name | void |
400 - Bad request 404 - Stream not found 500 – Internal Server Error |
Clean stream ACL |
/cdn/stream/access_list/print | name | List of keys |
400 - Bad request 404 - ACL not found 500 – Internal Server Error |
Show stream ACL |
/cdn/profile/add |
name profile |
void |
400 - Bad Request 500 – Internal Server Error |
Add transcoding profile |
/cdn/profile/modify |
name profile |
void |
400 - Bad Request 404 - Not Found 500 – Internal Server Error |
Change transcoding profile |
/cdn/profile/print | void | List of profile | 404 - Not Found | Get the transcoding profiles list |
/cdn/profile/remove | name | void |
400 - Bad Request 404 - Not Found 500 – Internal Server Error |
Remove transcoding profile |
/cdn/remove_node | nodeId | void |
400 - Bad request 404 - Node not found 500 – Internal Server Error |
Remove node from CDN |
/cdn/connection/reset_inbound | nodeId | void |
200 – OK 404 - Node not found |
Reset inbound connection from this node |
/cdn/connection/reset_outbound | nodeId | void |
200 – OK 404 - Node not found |
Reset outbound connection to this node |
/cdn/connection/reset_all | void | void | 200 – OK | Reset all CDN connections on this node |
Stream recording | ||||
/recorder/startup |
mediaSessionId config |
void |
404 - Stream not found 500 - Internal error |
Start stream recording in specified mediasession |
/recorder/terminate | mediaSessionId | void |
404 - Recorder not found 500 - Internal error |
Stop stream recording in specified mediasession |
/recorder/find_all | void | List of Recorder | 404 - Recorders not found | Find session recordings |
Multiple streams recording | ||||
/multipleRecorder/startup | uri | void |
409 - Conflict 500 - Internal error |
Launch multiple streams recorder |
/multipleRecorder/add |
uri mediaSessionId |
void |
404 - Not found 409 - Conflict 500 - Internal error |
Add the stream with mediaSessionId to the recorder |
/multipleRecorder/find_all | void | List of MultipleRecorder | 404 - Not found | Find all multiple streamd recorders |
/multipleRecorder/remove |
uri mediaSessionId |
void |
404 - Not found 500 - Internal error |
Remove the stream with mediaSessionId from the recorder |
/multipleRecorder/terminate | uri | void |
404 - Not found 409 - Bad uri format 500 - Internal error |
Stop the multiple streams recorder |
Transcoding management | ||||
/transcoder/startup |
uri remoteStreamName localStreamName encoder |
void |
404 - Stream not found 409 - Conflict 500 - Internal error |
Create transcoder with defined parameters for certain stream |
/transcoder/find |
uri remoteStreamName localStreamName status |
List of Transcoder | 404 – Transcoders not found | Find transcoder by certain criteria |
/transcoder/find_all | void | List of Transcoder | 404 – Transcoders not found | Find all transcoders |
/transcoder/terminate |
uri remoteStreamName localStreamName status |
void | 404 - Transcoder not found | Stop transcoder with its output stream by certain criteria |
/transcoder/set_watermark |
uri watermark x y marginTop marginLeft marginBottom marginRight |
void |
200 - OK 400 - Bad request 404 - Not found |
Add watermark to transcoder output stream picture |
Transcoding management v 2 | ||||
/transcoder2/startup |
uri remoteStreamName localStreamName encoder |
void |
400 - Bad request 404 - Stream not found 409 - Conflict 500 - Internal error |
Create transcoder with defined parameters for certain stream |
/transcoder2/find |
uri remoteStreamName localStreamName status |
List of Transcoder | 404 – Transcoders not found | Find transcoder by certain criteria |
/transcoder2/find_all | void | List of Transcoder | 404 – Transcoders not found | Find all transcoders |
/transcoder2/terminate |
uri remoteStreamName localStreamName status |
void | 404 - Transcoder not found | Stop transcoder with its output stream by certain criteria |
/transcoder2/set_watermark |
uri watermark x y marginTop marginLeft marginBottom marginRight |
void |
200 - OK 400 - Bad request 404 - Not found |
Add watermark to transcoder output stream picture |
VOD | ||||
/vod/startup |
uri localStreamName |
void |
409 - Conflict 500 - Internal error |
Create VOD live translation from local file or from file at network storage |
/vod/find |
uri localStreamName status localMediaSessionId |
List of VOD | 404 – VODs not found | Find VOD translations by certain criteria |
/vod/find_all | void | List of VOD | 404 – VODs not found | Find all VOD translations |
/vod/terminate |
uri localStreamName status localMediaSessionId |
void | 404 - VOD not found | Stop VOD translation by certain criteria |
HLS | ||||
/hls/startup | name | void |
404 - Stream not found 500 - Internal error |
Start HLS agent for the stream |
/hls/find_all |
offset size |
List of HLS | 404 – Not found | Find all streams having HLS agents |
/hls/terminate | name | void |
404 – Not found 500 - Internal error |
Stop HLS agent for the stream |
/hls/profiles |
hlsId profileName offset size |
HLSProfile |
400 – Bad request 404 – Not found |
Get HLS profile statistics |
/hls/subscribers |
hlsId offset size |
List of HLSSubscriber |
400 – Bad request 404 – Not found |
Get HLS subscribers statistics |
SFU | ||||
/sfu/stats | roomName | List of Participant |
400 - Bad request 404 - Not found 500 - Internal error |
Show current room stats |
MPEG-TS | ||||
/mpegts/startup |
localStreamName transport hasAudio hasVideo timeout maxTimestampDiff |
MPEG-TS |
409 - Conflict 500 - Internal error |
Start MPEG-TS publishing |
/mpegts/find |
localStreamName uri |
List of MPEG-TS |
404 – Not found 500 - Internal error |
Find the MPEG-TS stream by criteria |
/mpegts/find_all | void | List of MPEG-TS |
404 – Not found 500 - Internal error |
Find all MPEG-TS streams |
/mpegts/terminate |
localStreamName uri |
void |
404 – Not found 500 - Internal error |
Stop MPEG-TS stream |