接入无人机mqtt

This commit is contained in:
mmc
2026-06-01 15:18:01 +08:00
parent b72ab41b81
commit 480e05c0d6
5 changed files with 25 additions and 18 deletions

2
env.js
View File

@@ -12,6 +12,7 @@ const envConfig = {
baseURL: 'http://192.168.2.59:8081',//http://192.168.2.56:8081
//baseURL: 'http://1.95.137.212:59015',//http://192.168.2.56:8081
WS_URL: 'ws://192.168.2.59:9002/ws/',
mqtt_url: "ws://192.168.2.59:8083/mqtt",
geoserver_url: "http://192.168.2.59:7000/geoserver"
},
[ENV.PROD]: {
@@ -19,6 +20,7 @@ const envConfig = {
baseURL: 'http://1.95.137.212:59015',//http://192.168.2.56:8081
//baseURL: 'https://serviceri.satabot.com',
WS_URL: 'ws://1.95.137.212:59017/ws/',
mqtt_url: "ws://1.95.137.212:59021/mqtt",
geoserver_url: "http://1.95.137.212:59018/geoserver"
},
};

View File

@@ -100,8 +100,11 @@ export default function RobotTaskPage({ devices }) {
};
useEffect(() => {
console.log('selectedPathWork changed:', selectedPathWork);
if (JSON.parse(selectedPathWork.jsonData)?.path?.length == 0) {
utils.message.warning('该路线暂无路径点数据');
}
setPoints(selectedPathWork ? JSON.parse(selectedPathWork.jsonData)?.path || [] : []);
}, [selectedPathWork])
}, [selectedPathWork]);
// 获取路线列表
const fetchRouteList = async () => {

View File

@@ -235,6 +235,8 @@ export default class DeviceController {
}
case 'switchResult': {
console.log(msg, "msg2222222222")
this.clearControlTimeout();
this.isRequestControl = false;
@@ -270,6 +272,7 @@ export default class DeviceController {
}
case 'switchPermission': {
console.log(msg, "msg111111111111111")
const platform = (
msg.platform || ''
).toLowerCase();

View File

@@ -47,7 +47,7 @@ export function useWebRTCPlayer(deviceId: string, url: string) {
v.style.height = '100%';
v.style.objectFit = 'contain';
videoRef.current = v;
const token = "eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjY0MDVjNDgwLTAxNDYtNDAwNS1iY2RiLTFhMTM2YzlmYmFiMCJ9.V1GQiLr0xgu9LB59pGyYPFeVJfKwDsUtTacFrQDpXdEvD81uOkJO304tROF5Ewev6eXkZFuunUAEiMLWEfh2_w"
const token = "eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjE4ZDEwNGYzLTk0NjMtNDgwYS05YTYwLTI2YzI1YzQyZGU2ZiJ9.mYX8k1GOBPZQK_k-gitZRODr_XNtn3GyT-gJVbZjQi5VT1SURgUEdDyb2GriaMqyEgoER5BX9O6-LxTOw5aMOw"
//const token = localStorage.getItem('videotoken') || JSON.parse(localStorage.getItem('userInfo') || '{}')?.token;
const videoUrl = `${url}?token=${token}`;

View File

@@ -9,6 +9,7 @@ import { RootState } from '../store';
import WayLinePage from '../components/devices/WayLinePage';
import RobotTaskPage from '../components/devices/RobotTaskPage';
import { useMqtt } from '../hooks/useMqtt';
import envConfig from '../../env';
const { Header, Content } = Layout;
const { Text } = Typography;
@@ -30,22 +31,20 @@ export default function DeviceIndexPage() {
{ key: 'robotTask', label: '机器人任务', icon: <BranchesOutlined /> },
];
//useMqtt({
// url: "tcp://1.95.137.212:59020",
// topic: 'SQYTHD',
// onMessage: (_, message) => {
// try {
// console.log('收到MQTT消息:', message);
// //const parsedMessage = JSON.parse(message);
// //setUpdateTime(parsedMessage['Time']);
// //const mqttDeviceData = rawToNameValueArray(parsedMessage);
// //const updatedDevices = updateIOTDeviceWithMqttData(mqttDeviceData);
// //setAllDevices(updatedDevices);
// } catch (error) {
// console.error('解析消息失败:', error);
// }
// },
//});
useMqtt({
url: envConfig.mqtt_url,
topic: 'thing/product/8UUXN4200A04HZ/osd',
onMessage: (_, message) => {
console.log('收到 MQTT 消息:', message);
try {
const parsedMessage = JSON.parse(message);
console.log('解析后的消息对象:', parsedMessage);
} catch (error) {
console.error('解析消息失败:', error);
}
},
});
// 👇 核心:给无人机补全 lastRunningStatus + type: 'plane'