CotpClientOpenAsync Method (String, String, NotifyDataChangedEventHandler, Int32) |
Namespace: Demo3D.Net.Protocols
public static Task<Client<IPacketIOService>> OpenAsync( string host, string tsap, NotifyDataChangedEventHandler dataChangedHandler, int port = -1 )
// Open a new connection, calling DataReceived on every packet received. public async Task ReceiveMessagesAsync(string host, string tsap) { await CotpClient.OpenAsync(sync: false, host, tsap, DataReceived); } // Called when data is received. void DataReceived(ProtocolSocket socket, object service, NotifyDataChangedEventArgs e) { var io = (IPacketIOService)service; // CotpClient uses IPacketIOService. var args = (PacketChangedEventArgs)e; // IPacketIOService posts PacketChangedEventArgs when it raises a DataChanged event. var message = args.GetData(); // Read from the packet. string str = BinaryTextEncoding.FixedLengthASCII.GetString(message); Logger.Log("Message received: " + message); // Send back a reply. var reply = BinaryTextEncoding.NullTerminatedASCII.GetBytes("hello"); io.Write(reply); }