2012-07-25 75 views
0

Helllo!请帮我弄清楚为什么我无法通过C#登录BOSH,但可以通过Strophe。我使用Matrix XMPP SDK。下面的代码我使用:Tigase xmpp服务器Matrix XMPP SDK预绑定

...

XmppClient xmpp = new XmppClient(); 
xmpp.SetXmppDomain("xmpptest.com");  

xmpp.Transport = Matrix.Net.Transport.BOSH; 
xmpp.Uri = new System.Uri("http://xmpptest.com:5280"); 

xmpp.Username = "[email protected]"; 
xmpp.Password = "123456"; 

xmpp.OnBind += new EventHandler<JidEventArgs>(xmpp_OnBind); 
xmpp.OnAuthError += new EventHandler<Matrix.Xmpp.Sasl.SaslEventArgs>(xmpp_OnAuthError); 
xmpp.OnLogin += new EventHandler<Matrix.EventArgs>(xmpp_OnLogin); 
xmpp.OnMessage += new EventHandler<MessageEventArgs>(xmpp_OnMessage); 
xmpp.OnPrebind += new EventHandler<Matrix.Net.PrebindEventArgs>(xmpp_OnPrebind); 
xmpp.OnBindError += new EventHandler<IqEventArgs>(xmpp_OnBindError); 
xmpp.OnBind += new EventHandler<JidEventArgs>(xmpp_OnBind); 
xmpp.OnPresence += new EventHandler<PresenceEventArgs>(xmpp_OnPresence); 
xmpp.OnBeforeSasl += new EventHandler<Matrix.Xmpp.Sasl.SaslEventArgs>(xmpp_OnBeforeSasl); 

xmpp.Prebind(); 

... 但没有什么是的prebind方法

回答

0

通过安装ejabberd服务器而不是Tigase来解决。上面的代码适用于它!

0

的用户名必须是唯一的KSU,不[email protected]后发生。 如果仍然失败,XML日志将有所帮助。