import React from 'react'; import { inject, observer } from 'mobx-react'; import { TELEOP_WS } from 'store/websocket'; import CheckboxItem from 'components/common/CheckboxItem'; import AudioControl from 'components/TeleopMonitor/AudioControl'; import MonitorSection from 'components/TeleopMonitor/MonitorSection'; import itemIcon from 'assets/images/icons/teleop_item.png'; function OperationButton(props) { const { name, command } = props; return ( ); } @inject('store') @observer export default class ConsoleTeleOp extends React.Component { constructor(props) { super(props); this.operation = { STOP: () => { TELEOP_WS.executeCommand('EStop'); }, 'PULL OVER': () => { TELEOP_WS.executeCommand('PullOver'); }, RESUME: () => { TELEOP_WS.executeCommand('ResumeCruise'); }, }; } componentDidMount() { TELEOP_WS.initialize(); } componentWillUnmount() { TELEOP_WS.close(); } render() { const { teleop } = this.props.store; return (
Console Teleop Controls
{ TELEOP_WS.executeCommand('ToggleAudio'); teleop.toggleAudio(); }} toggleMic={() => { teleop.toggleMic(); TELEOP_WS.executeCommand('ToggleMic'); }} /> { TELEOP_WS.executeCommand('ToggleVideo'); teleop.toggleVideo(); }} /> {teleop.modemInfo.entries().map(([name, value]) => (
{name} {value}
))}
{Object.entries(this.operation).map(([name, command]) => ( ))}
); } }