71 lines
2.7 KiB
TypeScript
71 lines
2.7 KiB
TypeScript
import TcpClient from './TcpClient';
|
|
import { getSyncData} from '../service/initable'
|
|
import hilog from '@ohos.hilog';
|
|
export async function getTCP() {
|
|
|
|
getSyncData('IpConfigTable').then(async (result:Array<any>)=>{
|
|
console.log('result222',JSON.stringify(result))
|
|
if(result.length){
|
|
if(globalThis.TcpClient&&globalThis.TcpClient.closeTcp){
|
|
globalThis.TcpClient.closeTcp(async ()=>{
|
|
// const tcpClient: TcpClient =new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
|
|
// globalThis.TcpClient = tcpClient
|
|
|
|
await globalThis.TcpClient.rebindTcp(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
|
|
await globalThis.TcpClient.connectTcp()
|
|
await globalThis.TcpClient.sendMsg('1002')//1002
|
|
globalThis.TcpClient.onError()
|
|
await globalThis.TcpClient.onMessage((val)=>{
|
|
hilog.info(0x0000, 'testTag', "valvalval1" + JSON.stringify(val));
|
|
|
|
// console.log('valvalval',val)
|
|
setTimeout(()=>{
|
|
globalThis.TcpClient.sendMsg('1002')//1002
|
|
if(val){
|
|
// const msg=val.substring(5,val.length-1)
|
|
globalThis.udpClient?.sendMsg(val)
|
|
}
|
|
},1000)
|
|
|
|
})
|
|
})
|
|
|
|
}else{
|
|
// prompt.showToast({
|
|
// message:'初始化localIp'+ result[0].localIp+ result[0].localIpPort+'oppositeIp'+result[0].oppositeIp+result[0].oppositeIpPort,
|
|
// duration: 1000
|
|
// });
|
|
const tcpClient: TcpClient =new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
|
|
globalThis.TcpClient = tcpClient
|
|
await globalThis.TcpClient.bindTcp()
|
|
await globalThis.TcpClient.connectTcp()
|
|
await globalThis.TcpClient.sendMsg('1002')//1002
|
|
// setInterval(()=>{
|
|
// globalThis.TcpClient.sendMsg('1002')//1002
|
|
//
|
|
// },2000)
|
|
globalThis.TcpClient.onError()
|
|
await globalThis.TcpClient.onMessage((val)=>{
|
|
hilog.info(0x0000, 'testTag', "valvalval2" + JSON.stringify(val));
|
|
setTimeout(()=>{
|
|
globalThis.TcpClient.sendMsg('1002')//1002
|
|
if(val){
|
|
// const msg=val.substring(5,val.length-1)
|
|
globalThis.udpClient?.sendMsg(val)
|
|
}
|
|
},1000)
|
|
|
|
})
|
|
}
|
|
// globalThis.udpClient = new UdpClient(result[0].localIp, result[0].localIpPort,result[0].oppositeIp,result[0].oppositeIpPort)
|
|
|
|
}else{
|
|
globalThis.TcpClient={}
|
|
globalThis.TcpClient.onMessage=()=>{}
|
|
}
|
|
})
|
|
}
|
|
|
|
|
|
// globalThis.udpClient.bindUdp()
|