diff --git a/src/utils/robotDevice.js b/src/utils/robotDevice.js new file mode 100644 index 0000000..9fdac75 --- /dev/null +++ b/src/utils/robotDevice.js @@ -0,0 +1,38 @@ +export const DEVICE_KIND = Object.freeze({ + AGV: 1, + ARM: 2, + BIO_HEAD: 4, + CAMERA: 5, + MICROPHONE: 9, + ROBOT: 12, + SPEAKER: 13, +}) + +export const DEVICE_KIND_BY_ACTION = Object.freeze({ + AGV_MOVE_TO_POINT: DEVICE_KIND.AGV, + AGV_MOVE_TO_STATION: DEVICE_KIND.AGV, + ARM_MOVE_TO_POINT: DEVICE_KIND.ARM, + ARM_MOVE_TO_J: DEVICE_KIND.ARM, + TOUCH: DEVICE_KIND.ARM, + BIO_HEAD_SPEAK_START: DEVICE_KIND.BIO_HEAD, + BIO_HEAD_SPEAK_STOP: DEVICE_KIND.BIO_HEAD, + BIO_HEAD_SPECIAL_EXPRESSION: DEVICE_KIND.BIO_HEAD, + CAMERA_START: DEVICE_KIND.CAMERA, + CAMERA_STOP: DEVICE_KIND.CAMERA, + CAMERA_GETRGBIMAGE: DEVICE_KIND.CAMERA, + CAMERA_RECORDING_START: DEVICE_KIND.CAMERA, + CAMERA_RECORDING_STOP: DEVICE_KIND.CAMERA, + MICROPHONE_START: DEVICE_KIND.MICROPHONE, + MICROPHONE_STOP: DEVICE_KIND.MICROPHONE, + SPEAKER_PLAYAUDIO: DEVICE_KIND.SPEAKER, + VI_PLAY_CORPUS: DEVICE_KIND.SPEAKER, +}) + +export const getDeviceKindForAction = (action) => DEVICE_KIND_BY_ACTION[action] + +export const toDeviceOptions = (devices = []) => devices.map((device) => ({ + value: device.deviceId, + label: device.deviceName && device.deviceName !== device.deviceId + ? `${device.deviceName} (${device.deviceId})` + : device.deviceId, +}))