device_cmd_method and device_cmd_data determined by specific PSDK device's thing model; server does not perform enum validation; serves as passthrough channel as a whole. ext field used for business tracking (speaker scenario playback parameters are written to server-side command log). Device must belong to current project.{
"device_sn": "1ZNBHJD0010012",
"device_cmd_method": "speaker_audio_play_start",
"device_cmd_data": {
"object_key": "loudspeaker/abc.mp3",
"play_volume": 80
},
"ext": {
"device_name": "Inspection Dock-A",
"speaker": {
"play_scene": "patrol_warning",
"play_volume": 80,
"play_mode": 0,
"file_type": "audio",
"md5_sum": "0d8a...",
"audio_duration": 5
}
}
}curl --location '/openapi/v2.0/manage/api/v1/projects//psdk/commands' \
--header 'x-user-token;' \
--header 'x-user-token;' \
--header 'X-Request-Id: 5dff27bd-693c-4ace-979d-e26e920d497a' \
--header 'X-Request-Id;' \
--header 'X-Project-Uuid;' \
--header 'Content-Type: application/json' \
--data '{
"device_sn": "1ZNBHJD0010012",
"device_cmd_method": "speaker_audio_play_start",
"device_cmd_data": {
"object_key": "loudspeaker/abc.mp3",
"play_volume": 80
},
"ext": {
"device_name": "Inspection Dock-A",
"speaker": {
"play_scene": "patrol_warning",
"play_volume": 80,
"play_mode": 0,
"file_type": "audio",
"md5_sum": "0d8a...",
"audio_duration": 5
}
}
}'{
"code": 0,
"message": "success",
"data": null
}