Скажем, у меня есть 3 клиентов: Клиент A Клиент B и Клиент C.Как отправить сообщение конкретному клиенту с помощью WampSharp?
функция Все поддержка Ping(), которые они регистрируют с помощью отражения (код, основанный на WampSharp документации):
public interface IArgumentsService
{
[WampProcedure("com.arguments.ping")]
void Ping();
}
public class ArgumentsService : IArgumentsService
{
public void Ping()
{
}
}
IArgumentsService services = channel.RealmProxy.Services;
ArgumentService callee = new ArgumentService(this);
services.RegisterCallee(callee);
Затем я настроить прокси на каждом клиенте, чтобы сделать исходящие вызовы:
DefaultWampChannelFactory channelFactory = new DefaultWampChannelFactory();
IWampChannel channel = channelFactory.CreateJsonChannel("ws://127.0.0.1:8080/", "realm1");
Task channelOpenTask = channel.Open();
channelOpenTask.Wait();
IArgumentsService proxy = channel.RealmProxy.Services.GetCalleeProxy<IArgumentsService>();
Как будет идти о передаче сообщений от клиента А для клиента C? Я не вижу способа обращения к конкретному клиенту при отправке сообщения на маршрутизатор через прокси-сервер? Все, что я могу сделать, это следующее:
proxy.Ping();
Я предполагаю, что будет транслировать сообщение всем клиентам? Как я могу указать только один клиент? Поддерживается ли этот сценарий использования?