我希望通过他们的IP地址直接向客户发送消息。我目前只能在处理程序中调用ChannelRead0
并从那里获取上下文时发送消息:
protected override void ChannelRead0(IChannelHandlerContext ctx, DatagramPacket packet) {
ctx.WriteAsync(new DatagramPacket(buffer, packet.Sender));
}
我的引导程序:
var bootstrap = new Bootstrap();
bootstrap
.Group(group)
.Channel<SocketDatagramChannel>()
.Option(ChannelOption.SoBroadcast, true)
.Handler(new LoggingHandler("SRV-LSTN"))
.Handler(new ActionChannelInitializer<IChannel>(channel => {
channel.Pipeline.AddLast("UDPServer", new protocols.UDP());
}));
IChannel boundChannel = await bootstrap.BindAsync(8888);
我希望能够从此功能外部发送消息。有什么方法可以从这个函数/类外部向客户端发送消息?我尝试过写boundChannel
,但它似乎没有挥动.write
或.writeAsync
函数。
我正在使用从Java移植的DotNetty库(https://github.com/Azure/DotNetty)。