Почему я не могу подключиться к Google Talk в AGSXMPP?
Вопрос
Я пытаюсь начать использовать использование agsxmpp , но я 'м, имея некоторые проблемы.Я пытаюсь запустить этот код:
using System;
using agsXMPP;
namespace TestAgs
{
class MainClass
{
public static void Main (string[] args)
{
XmppClientConnection connection = new XmppClientConnection ();
connection.OnLogin += delegate {
Console.WriteLine ("logged in");
};
connection.Server = "gmail.com";
connection.ConnectServer = "talk.google.com";
connection.Username = "my username"; // I tried both with and without '@gmail.com'
connection.Password = "my password";
connection.Open();
}
}
}
.
Это компилирует нормально, но когда я стараюсь запустить его, ничего не происходит.Он работает и завершает без каких-либо ошибок, но «вошел в систему» никогда не печатается на консоль.Что я делаю не так?
Если это имеет значение, я использую Mono 2.4 на Ubuntu 10.04.
Решение
Если только подключение .Open () блоки, которые я сомневаюсь, это проблема заключается в том, что ваша программа попадает в конец основного, и поэтому это делается запущена и заканчивается.
Как вы хотите сохранить его от выхода, зависит от того, что вы пытаетесь сделать, но один из способов был бы руководством:
var mre = new System.Threading.ManualResetEvent (false);
mre.WaitOne ();
.
Конечно, теперь у вас может быть противоположная проблема, для вашего приложения нет возможности завершить.
Другие советы
Я думаю, что проблема - номер порта.Вы не поставляете 5222 или 5223 в соединении.
Просто добавьте console.readline ();после линии «подключения» .Open ();
// connection.Server = "gmail.com";
connection.ConnectServer = "talk3.l.google.com"; OR
connection.ConnectServer = "talk2.l.google.com";
connection.Username = "my username"; // I tried both with and without '@gmail.com'
connection.Password = "my password";
connection.Open();
.
talk3.l.google
отлично работал для меня.