Get device status
1. API Description
This API is used to get device status.
Request mode:
- V2.6.0 and above: POST [ip]/mwapi/V2.0/scene/get-device-status
- V2.5.0 and below: POST [ip]/mwapi/get-device-status
Administrator Rights | Logged-in |
---|---|
No | Yes |
2. Input Parameters
None
3. Output Parameters
Name | Type | Description |
---|---|---|
result | Int | Status code |
message | String | Status description |
info | InfoData | Device status |
InfoData
Name | Type | Description |
---|---|---|
annotationStatus | Omitted | The configuration of annotation |
autoBackup | Int | Whether Auto Backup is enabled 0: No; 1: Yes |
deviceName | String | Device name |
serialNumber | String | Device serial number |
hardwareVersion | String | Current hardware version |
firmwareVersion | String | Current firmware version |
deviceWorkingStatus | Int | Device working status 0: Idle 1: Recording 2: File backup in progress 3: File download in progress 4: Presentation export in progress 5: Presentation import in progress |
encodeMode | Int | The encoding mode for APP preview 0: S720p; 1: 1080p; 2: Auto; 3: Custom. |
ftbEnable | Int | Whether FTB is enabled. 0: No; 1: Yes. |
ftbSceneId | Int | The scene ID with FTB enabled |
musicStatus | MusicStatus | The playback status of BGM |
observerStatus | ObserverStatus | The watcher status |
osdId | Int | The currently enabled GFX ID. |
pdfConfig | PdfConfig | The configuration related to the PDF layer in the current scene. |
recordStatus | RecordStatus | The recording status. |
sceneStatus | SceneStatus | The status of the current scene. |
srtStatus | SrtStatus | The status of the SRT streaming |
videoPlayerStatus | VideoPlayerStatus | The playback status of the video in the current scene |
webBrowser | WebBrowser | The configuration related to the web layer in the current scene |
MusicStatus
Name | Type | Description |
---|---|---|
currentMusicId | Int | ID of current BGM |
duration | Int | Audio file duration, in ms |
policy | Int | Playback policy 1: Play by order 2: Shuffle 3: Loop one 4: Loop all |
progress | Int | Playback progress, ranging from 0 to 1000000 |
status | Int | Playback status 0: Pause; 1: Play |
ObserverStatus
Name | Type | Description |
---|---|---|
observerAnnotateEnable | Bool | Allow the watcher to telestrate. true: allow; false: not allow |
observerCount | Int | The number of watchers 0: None; 1: 1; 2: 2 |
observerLocked | Bool | Lock the scene for the watcher to view. true: lock; false: unlock |
onlineClientCount | Int | Number of online mobile devices |
operatorClientId | String | The unique identifier of mobile device used by the operator |
PdfConfig
Name | Type | Description |
---|---|---|
sceneId | Int | Scene ID |
layerId | Int | Layer ID, the layer position in the layer array |
sourceTotalPageNumber | Int | Total number of pages in the PDF file |
pdfPosition | Int | Current preview location of PDF, (page number - 1) * 100 |
pdfScale | Int | Zoom attribute, ranging from 1 to 5 * 10000 |
pdfScaleMode | Int | Zoom mode, 0: Free 1: Maintain original page ratio 2: Fit content to screen 3: Fit width to screen |
RecordStatus
Name | Type | Description |
---|---|---|
endCountDown | Int | End timer, in seconds |
endstartTimestamp | Int | End timestamp of schedule recording, in ms |
lastRecordError | Int | Last recording error information |
recordState | Int | Recording state 0: Stopped 1: Normal recording 2: Scheduled recording 3: Waiting for scheduled recording 4: Scheduled recording has ended |
recording | Int | Schedule recording task status 0: Disabled; 1: Recording |
scheduleRecordEndTime | String | Schedule recording end time, in the device's time zone |
scheduleRecordStartTime | String | Schedule recording start time, in the device's time zone |
startCountDown | Int | Start countdown, in seconds |
startTimestamp | Int | Schedule recording start timestamp, in ms |
timeRecording | Int | Recording duration, in seconds |
timeRemaining | Int | Available recording time, in seconds |
SceneStatus
Name | Type | Description |
---|---|---|
cropping | Int | Whether the layer is in cropping edit state 0: No; 1: Yes |
croppingLayerId | Int | ID of the layer being cropped |
currentShowId | Int | Current presentation ID |
currentID | Int | Current preview scene ID |
defaultNoteBgId | Int | Default note background resource ID |
editSceneId | Int | ID of the scene being edited |
editing | Int | Whether the screen is in edit state 0: No; 1: Yes |
isFrozen | Int | Whether the preview scene is frozen 0: No; 1: Yes |
lastNoteId | Int | ID of the last previewed note |
lastSceneId | Int | ID of the last previewed scene |
location | Int | Screen location PIP -- 1: Top Left, 2: Top Right, 3: Bottom Left, 4: Bottom Right SBS -- 1: Leftmost, 2: Left-center, 3: Center, 4: Center-right, 5: Rightmost |
modeOfButton | Int | Device button binding mode 0: Default, buttons pointing to preset scenes 1: Custom, buttons pointing to user-defined functions 2: Auto, buttons pointing to the first 5 scenes of the presentation |
noteEditing | Int | Whether a note in being edited 0: No; 1: Yes |
sceneOfButton1 | Int | Scene ID (obtained via Get scene list) or Event ID bound to button 1 |
sceneOfButton2 | Int | Scene ID (obtained via Get scene list) or Event ID bound to button 2 |
sceneOfButton3 | Int | Scene ID (obtained via Get scene list) or Event ID bound to button 3 |
sceneOfButton4 | Int | Scene ID (obtained via Get scene list) or Event ID bound to button 4 |
sceneOfButton5 | Int | Scene ID (obtained via Get scene list) or Event ID bound to button 5 |
sourceCollection | Int | Source combination 1: HDMI 1 + HDMI 2 2: HDMI 2 + HDMI 1 3: HDMI 1 + WEBCAM 4: WEBCAM + HDMI 1 5: HDMI 2 + WEBCAM 6: WEBCAM + HDMI 2 |
videoRangeSetting | Int | Video range setting |
videoRangeSettingLayerId | Int | Layer ID of the video that is setting range |
SrtStatus
Name | Type | Description |
---|---|---|
srtId | Int | SRT stream ID 0: Preview; 1: HDMI 1; 2: HDMI 2; 3: Web Camera |
port | Int | Port number |
stoped | Int | Whether SRT streaming is enabled 1: No; 0: Yes |
VideoPlayerStatus
Name | Type | Description |
---|---|---|
layerId | Int | Layer ID, the position of the layer in the layer array |
playStatus | Int | Playback status 0: Paused; 1: Playing |
progress | Int | Playback progress, ranging from 0 to 1000000 |
sceneId | Int | Scene ID |
sourceDuration | Int | Duration of the video file, in ms |
sourceId | Int | Video file resource ID |
videoRangeEnd | Int | End position of the video cut, in ms |
videoRangeStart | Int | Start position of the video cut, in ms |
WebBrowser
Name | Type | Description |
---|---|---|
canGoBack | Int | Whether it can go back 0: No; 1: Yes |
canGoForward | Int | Whether it can go forward 0: No; 1: Yes |
currentScale | Int | Zoom attribute, ranging from 1 to 5 * 10000 |
4. Example
Getting device status.
Input Example
None
Output Example
{
"info": {
"annotationStatus": {...},
"autoBackup": 0,
"deviceName": "USB Fusion A506220808456-1",
"deviceWorkingStatus": 0,
"encodeMode": 0,
"firmwareVersion": "2.6.1",
"ftbEnable": 0,
"ftbSceneId": 0,
"hardwareVersion": "A",
"musicStatus": {
"currentMusicId": 0,
"duration": 0,
"policy": 1,
"progress": 0,
"status": 0
},
"observerStatus": {
"observerAnnotateEnable": true,
"observerCount": 0,
"observerLocked": true,
"onlineClientCount": 0,
"operatorClientId": ""
},
"osdId": 0,
"pdfConfig": {
"layerId": 0,
"pdfPosition": 0,
"pdfScale": 10000,
"pdfScaleMode": 0,
"sceneId": 0,
"sourceTotalPageNumber": 0
},
"recordStatus": {
"endCountDown": -1,
"endstartTimestamp": 0,
"lastRecordError": 0,
"recordState": 0,
"recording": 0,
"scheduleRecordEndTime": "",
"scheduleRecordStartTime": "",
"startCountDown": -1,
"startTimestamp": 0,
"timeRecording": 0,
"timeRemaining": 106571
},
"sceneStatus": {
"cropping": 0,
"croppingLayerId": 0,
"currentID": 101,
"currentShowId": 9,
"defaultNoteBgId": 1001,
"editSceneId": 0,
"editing": 0,
"isFrozen": 0,
"lastNoteId": 0,
"lastSceneId": 101,
"location": 0,
"modeOfButton": 0,
"noteEditing": 0,
"sceneOfButton1": 1,
"sceneOfButton2": 2,
"sceneOfButton3": 3,
"sceneOfButton4": 4,
"sceneOfButton5": 5,
"sourceCollection": 0,
"videoRangeSetting": 0,
"videoRangeSettingLayerId": 0
},
"serialNumber": "A506220808456",
"srtStatus": [
{
"port": 9110,
"srtId": 0,
"stoped": 1
},
{
"port": 9111,
"srtId": 1,
"stoped": 1
},
{
"port": 9112,
"srtId": 2,
"stoped": 1
},
{
"port": 9113,
"srtId": 3,
"stoped": 1
},
{
"port": 9114,
"srtId": 4,
"stoped": 0
}
],
"videoPlayerStatus": [
{
"layerId": 0,
"playStatus": 1,
"progress": 2436,
"sceneId": 101,
"sourceDuration": 27500,
"sourceId": 2135,
"videoRangeEnd": 27500,
"videoRangeStart": 0
}
],
"webBrowser": {
"canGoBack": 0,
"canGoForward": 0,
"currentScale": 10000
}
},
"message": "success",
"result": 0
}
5. Error Code
No error code related to the API business logic. For other error codes, see Common Error Codes.