只对本地控制器收到的消息显示远程地址
This commit is contained in:
parent
5bc7672164
commit
17d89d6eb6
|
@ -944,27 +944,16 @@ bool EspSocket::OnOpen()
|
|||
// UDP传输属性。0,收到数据不改变远端目标;1,收到数据改变一次远端目标;2,收到数据改变远端目标
|
||||
|
||||
if(Remote.Address == IPAddress::Broadcast())
|
||||
cmd = cmd + ",2";
|
||||
cmd += ",2";
|
||||
else
|
||||
cmd = cmd + ",0";
|
||||
cmd += ",0";
|
||||
|
||||
// 如果Socket打开失败
|
||||
if(!_Host.SendCmd(cmd))
|
||||
{
|
||||
String close = "AT+CIPCLOSE=";
|
||||
close += _Index;
|
||||
close += "\r\n";
|
||||
/*auto sp = (SerialPort*)_Host.Port;
|
||||
sp->Write(cmd);
|
||||
Sys.Sleep(1000);
|
||||
_Host.ClearRXD();*/
|
||||
|
||||
//if (!_Host.SendCmd(cmd))
|
||||
if(!_Host.SendCmd(cmd, 1600))
|
||||
{
|
||||
debug_printf("协议 %d, %d 打开失败 \r\n", Protocol, Remote.Port);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// 清空一次缓冲区
|
||||
/*cmd = "AT+CIPBUFRESET=";
|
||||
|
@ -980,7 +969,7 @@ void EspSocket::OnClose()
|
|||
cmd += _Index;
|
||||
cmd += "\r\n";
|
||||
|
||||
_Host.SendCmd(cmd, 4000);
|
||||
_Host.SendCmd(cmd, 1600);
|
||||
}
|
||||
|
||||
// 接收数据
|
||||
|
|
|
@ -224,12 +224,12 @@ bool TokenController::OnReceive(Message& msg)
|
|||
}
|
||||
|
||||
// 如果远程地址为空,则使用首次地址作为远程地址
|
||||
auto svr = (IPEndPoint*)Server;
|
||||
/*auto svr = (IPEndPoint*)Server;
|
||||
auto rmt = (IPEndPoint*)msg.State;
|
||||
if(svr && rmt)
|
||||
{
|
||||
if(svr->Address == IPAddress::Any()) svr->Address = rmt->Address;
|
||||
}
|
||||
}*/
|
||||
|
||||
ShowMessage("Recv", msg);
|
||||
|
||||
|
@ -294,7 +294,7 @@ void TokenController::ShowMessage(cstring action, const Message& msg)
|
|||
{
|
||||
auto svr = (IPEndPoint*)Server;
|
||||
auto rmt = (IPEndPoint*)msg.State;
|
||||
if (!svr || *svr != *rmt)
|
||||
if (!svr || svr->Address == IPAddress::Broadcast())
|
||||
{
|
||||
rmt->Show();
|
||||
debug_printf(" ");
|
||||
|
|
Loading…
Reference in New Issue