У меня возникли проблемы с попыткой отправить сообщение XMPP в «Комнату» в нашем экземпляре OpenFire. Конечным результатом является то, что наш сервер сборки CruiseControl.NET может отправлять сообщения об успешном/неудачном выполнении в соответствующие «комнаты» в качестве дополнительного средства уведомления.
Я использую библиотеку Matrix XMPP для создания консольного приложения на С# с использованием VS2010. Идея заключалась в том, чтобы создать простой .exe-файл, который я мог бы подключить к CCNet и передать ему несколько аргументов по мере необходимости.
Приведенный ниже код в основном представляет собой образец кода с сайта/документации Matrix, который я обновил, чтобы указать на комнату.
static void Main(string[] args)
{
var xmppClient = new XmppClient
{
XmppDomain = "SERVER",
Username = "davidc",
Password = "*********"
};
xmppClient.OnRosterEnd += delegate
{
xmppClient.Send(new Message
{
To = "[email protected]",
From = "davidc@SERVER",
Type = MessageType.groupchat,
Body = "Just Testing the XMPP SDK"
});
};
xmppClient.Open();
Console.WriteLine("Press return key to exit the application");
Console.ReadLine();
xmppClient.Close();
}
Я могу отправить отдельному пользователю (соответственно изменив Кому и Тип) без каких-либо проблем, но изменение кода для указания на комнату заканчивается тишиной! Есть ли какое-то дополнительное «рукопожатие», которое необходимо сделать для обращения к комнате?
Мне действительно не нужно использовать C# для решения, если оно будет работать на Windows Server.