204 lines
7.5 KiB
TypeScript
204 lines
7.5 KiB
TypeScript
|
|
import UdpClient from './UdpClient';
|
||
|
|
import UdpClientByCenter from './UdpClientByCenter';
|
||
|
|
import { getSyncData} from '../service/initable'
|
||
|
|
import { dateFormat } from '../../common/utils/tools'
|
||
|
|
import prompt from '@ohos.prompt'
|
||
|
|
import TcpClient from './TcpClient';
|
||
|
|
|
||
|
|
|
||
|
|
// getSyncData('IpConfigTable').then((result)=>{
|
||
|
|
// console.log('result222',result)
|
||
|
|
// if(result){
|
||
|
|
// if(globalThis.udpClient){
|
||
|
|
// globalThis.udpClient.closeUdp()
|
||
|
|
// setTimeout(()=>{
|
||
|
|
// const udpClient: UdpClient =new UdpClient(result[0].localIp, result[0].localIpPort,result[0].oppositeIp,result[0].oppositeIpPort)
|
||
|
|
// udpClient.bindUdp()
|
||
|
|
// udpClient.sendMsg('111')
|
||
|
|
// globalThis.udpClient = udpClient
|
||
|
|
// },1000)
|
||
|
|
// }else{
|
||
|
|
// const udpClient: UdpClient =new UdpClient(result[0].localIp, result[0].localIpPort,result[0].oppositeIp,result[0].oppositeIpPort)
|
||
|
|
// udpClient.bindUdp()
|
||
|
|
// udpClient.sendMsg('111')
|
||
|
|
// globalThis.udpClient = udpClient
|
||
|
|
// }
|
||
|
|
// // globalThis.udpClient = new UdpClient(result[0].localIp, result[0].localIpPort,result[0].oppositeIp,result[0].oppositeIpPort)
|
||
|
|
//
|
||
|
|
// }
|
||
|
|
// })
|
||
|
|
|
||
|
|
export async function sendMsg(val){
|
||
|
|
globalThis.udpClient1&&globalThis.udpClient1.sendMsg(val)
|
||
|
|
}
|
||
|
|
export async function getUDP() {
|
||
|
|
getSyncData('IpConfigTable').then((result:Array<any>)=>{
|
||
|
|
console.log('result222',JSON.stringify(result))
|
||
|
|
if(result.length){
|
||
|
|
if(globalThis.udpClient&&globalThis.udpClient.closeUdp){
|
||
|
|
globalThis.udpClient.closeUdp(()=>{
|
||
|
|
|
||
|
|
globalThis.udpClient.rebindUdp(result[0].udplocalIp, result[0].udplocalIpPort,result[0].udpOppositeIp,result[0].udpOppositeIpPort)
|
||
|
|
// globalThis.udpClient.rebindUdp('192.168.7.170', '20122','192.168.7.124','20022')
|
||
|
|
// setInterval(()=>{
|
||
|
|
// globalThis.udpClient.sendMsg('111')
|
||
|
|
// },1000)
|
||
|
|
globalThis.udpClient.sendMsg('111')
|
||
|
|
|
||
|
|
// globalThis.udpClient = udpClient
|
||
|
|
})
|
||
|
|
}else{
|
||
|
|
|
||
|
|
const udpClient: UdpClient =new UdpClient(result[0].udplocalIp, result[0].udplocalIpPort,result[0].udpOppositeIp,result[0].udpOppositeIpPort)
|
||
|
|
udpClient.bindUdp()
|
||
|
|
udpClient.sendMsg('111')
|
||
|
|
globalThis.udpClient = udpClient
|
||
|
|
}
|
||
|
|
// globalThis.udpClient = new UdpClient(result[0].localIp, result[0].localIpPort,result[0].oppositeIp,result[0].oppositeIpPort)
|
||
|
|
|
||
|
|
}else{
|
||
|
|
globalThis.udpClient={}
|
||
|
|
globalThis.udpClient.onMessage=()=>{}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
|
||
|
|
export async function getUDP2() {
|
||
|
|
getSyncData('IpConfigTable').then(async (result:Array<any>)=>{
|
||
|
|
console.log('result222',JSON.stringify(result))
|
||
|
|
if(result.length){
|
||
|
|
if(globalThis.udpClient2&&globalThis.udpClient2.closeUdp){
|
||
|
|
globalThis.udpClient2.closeUdp(async ()=>{
|
||
|
|
globalThis.udpClient2.rebindUdp(result[0].udplocalIp, '8800','192.168.36.9','11111')
|
||
|
|
// globalThis.udpClient2.rebindUdp(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
|
||
|
|
// globalThis.udpClient2.rebindUdp(result[0].udplocalIp, result[0].udpLocalIpByGPS,result[0].udpOppositeIp,result[0].udpOppositeIpPortByGPS)
|
||
|
|
globalThis.udpClient2.onMessage((val)=>{
|
||
|
|
// globalThis.udpClient2.sendMsg(heartMsg(context))
|
||
|
|
})
|
||
|
|
|
||
|
|
})
|
||
|
|
}else{
|
||
|
|
// const udpClient: UdpClient =new UdpClient(result[0].udplocalIp, result[0].udpLocalIpByGPS,result[0].udpOppositeIp,result[0].udpOppositeIpPortByGPS)
|
||
|
|
const udpClient: UdpClientByCenter =new UdpClientByCenter(result[0].udplocalIp, '8800','192.168.36.9','11111')
|
||
|
|
// const udpClient: UdpClient =new UdpClient(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
|
||
|
|
|
||
|
|
globalThis.udpClient2 = udpClient
|
||
|
|
globalThis.udpClient2.bindUdp()
|
||
|
|
|
||
|
|
// globalThis.udpClient2.sendMsg(heartMsg(context))
|
||
|
|
|
||
|
|
globalThis.udpClient2.onMessage((val)=>{
|
||
|
|
|
||
|
|
if(val.id=='32'){
|
||
|
|
globalThis.signNum=val.body[1]
|
||
|
|
}else if(val.id=='46'){
|
||
|
|
|
||
|
|
let tmpList = []
|
||
|
|
console.log('lsh',globalThis.lsh)
|
||
|
|
const str = globalThis.lsh
|
||
|
|
for (let i = 0;i < str.length; i++) {
|
||
|
|
tmpList.push(this.string2Bytes(str.charCodeAt(i), 1 * 8)[0])
|
||
|
|
}
|
||
|
|
|
||
|
|
const param = { id: 47, list: tmpList, carNo: 489, placeId: 62 }
|
||
|
|
globalThis.udpClient2.send(param)
|
||
|
|
}
|
||
|
|
|
||
|
|
// setTimeout(async ()=>{
|
||
|
|
//
|
||
|
|
// globalThis.udpClient2.sendMsg(heartMsg(context))
|
||
|
|
//
|
||
|
|
// },1000)
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}else{
|
||
|
|
globalThis.udpClient2={}
|
||
|
|
globalThis.udpClient2.onMessage=()=>{}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
function fillZero(str, len) {
|
||
|
|
str = str + '';
|
||
|
|
if (str.length > len || !len) {
|
||
|
|
return str
|
||
|
|
}
|
||
|
|
|
||
|
|
let num = len - str.length;
|
||
|
|
let zeroStr = '';
|
||
|
|
for (var i = 0; i < num; i++) {
|
||
|
|
zeroStr = zeroStr + '0'
|
||
|
|
}
|
||
|
|
|
||
|
|
return zeroStr + str;
|
||
|
|
}
|
||
|
|
// function getByteToInt(arr){
|
||
|
|
// let a = list[0];
|
||
|
|
// let b = list[1];
|
||
|
|
// let c = '0x' + fillZero(b.toString(16),2) + fillZero(a.toString(16),2) ;
|
||
|
|
// let id = Math.floor(+c/1000)
|
||
|
|
// }
|
||
|
|
export async function getUDPByTopLine() {
|
||
|
|
getSyncData('IpConfigTable').then((result:Array<any>)=>{
|
||
|
|
if(result.length){
|
||
|
|
if(globalThis.udpClientByTopLine&&globalThis.udpClientByTopLine.closeUdp){
|
||
|
|
globalThis.udpClientByTopLine.closeUdp(()=>{
|
||
|
|
|
||
|
|
globalThis.udpClientByTopLine.rebindUdp(result[0].udplocalIp,'5509',result[0].udpOppositeIp,result[0].udpOppositeIpPort)
|
||
|
|
// globalThis.udpClient.rebindUdp('192.168.7.170', '20122','192.168.7.124','20022')
|
||
|
|
})
|
||
|
|
}else{
|
||
|
|
|
||
|
|
const udpClient: UdpClient =new UdpClient(result[0].udplocalIp, '55509',result[0].udpOppositeIp,result[0].udpOppositeIpPort)
|
||
|
|
// const udpClient: UdpClient =new UdpClient(result[0].udplocalIp, '8800','192.168.36.9','11111')
|
||
|
|
// const udpClient: UdpClient =new UdpClient('192.168.7.170', '20122','192.168.7.124','20022')
|
||
|
|
// globalThis.udpClient2.rebindUdp('192.168.7.170', '20122','192.168.7.124','20022')
|
||
|
|
|
||
|
|
udpClient.bindUdp()
|
||
|
|
globalThis.udpClientByTopLine = udpClient
|
||
|
|
}
|
||
|
|
// globalThis.udpClient = new UdpClient(result[0].localIp, result[0].localIpPort,result[0].oppositeIp,result[0].oppositeIpPort)
|
||
|
|
|
||
|
|
}else{
|
||
|
|
globalThis.udpClientByTopLine={}
|
||
|
|
globalThis.udpClientByTopLine.onMessage=()=>{}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
export async function setTopLineUdp(){
|
||
|
|
const config = await getSyncData('IpConfigTable');
|
||
|
|
if(config && config[0] && config[0].udplocalIp){
|
||
|
|
const {udplocalIp,udpOppositeIp,udpOppositeIpPort} = config[0];
|
||
|
|
const udpClient: UdpClientByCenter = new UdpClientByCenter(udplocalIp, '55509',udpOppositeIp,udpOppositeIpPort)
|
||
|
|
// const udpClient: UdpClientByCenter = new UdpClientByCenter(udplocalIp, '8800','192.168.36.4','33333')
|
||
|
|
udpClient.bindUdp()
|
||
|
|
|
||
|
|
return {
|
||
|
|
send(bytes){
|
||
|
|
udpClient.sendHeadMsg(bytes)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
export async function setJudgeUdp(){
|
||
|
|
const config = await getSyncData('IpConfigTable');
|
||
|
|
if(config && config[0] && config[0].udplocalIp){
|
||
|
|
const {udplocalIp} = config[0];
|
||
|
|
const udpClient: UdpClientByCenter = new UdpClientByCenter(udplocalIp, '8800','192.168.36.9','33333')
|
||
|
|
// const udpClient: UdpClientByCenter = new UdpClientByCenter(udplocalIp, '8800','192.168.36.4','33333')
|
||
|
|
udpClient.bindUdp()
|
||
|
|
udpClient.onMessage((val)=>{
|
||
|
|
console.info('surenjun',val);
|
||
|
|
})
|
||
|
|
globalThis.judgeUdpClient = udpClient;
|
||
|
|
return {
|
||
|
|
send(bytes){
|
||
|
|
udpClient.sendMsg({id:45,list:bytes,carNo:489,placeId:62})
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
// globalThis.udpClient.bindUdp()
|