private void Open()
        {
            conn = new XmppWebSocketConnection();
            conn.AutoPresence       = true;
            conn.OnMessage         += new agsXMPP.protocol.client.MessageHandler(conn_OnMessage);
            conn.OnReadSocketData  += new agsXMPP.Net.BaseSocket.OnSocketDataHandler(conn_OnReadSocketData);
            conn.OnWriteSocketData += new agsXMPP.Net.BaseSocket.OnSocketDataHandler(conn_OnWriteSocketData);
            conn.OnError           += new agsXMPP.ErrorHandler(conn_OnError);
            if (DemoUserName)
            {
                conn.AppKey   = "easemob-demo#chatdemoui";
                conn.UserName = "******";
                conn.Password = "******";
            }
            else
            {
                conn.AppKey   = "jiaparts#unipeiim";
                conn.UserName = "******";
                conn.Password = "******";
            }
            conn.Server          = "easemob.com";
            conn.Resource        = "win";
            conn.HeartbeatPeriod = 0;
            string retMsg = conn.Open("wss://im-api.easemob.com/ws");

            if (!String.IsNullOrEmpty(retMsg))
            {
                MessageBox.Show(retMsg);
                return;
            }

            chatBox1.SetParams(conn, "xiachao");
        }
예제 #2
0
        static void Main(string[] args)
        {
            System.Console.Write("JID: ");
            var jid = System.Console.ReadLine();

            System.Console.Write("Password: "******"<==" : "==>";
                System.Console.WriteLine($"{direction} {e.Stanza}");
            };
            client.SignedIn += (sender, args) =>
            {
                System.Console.WriteLine("Connected!");
            };
            client.ConnectionFailed += (sender, args) =>
            {
                System.Console.WriteLine(args.Message);
            };
            var connection = client.ConnectAsync();

            System.Console.ReadKey();
        }
예제 #3
0
        public void SignIn(object PasswordBox)
        {
            var ps       = PasswordBox as PasswordBox;
            var password = ps.SecurePassword;

            Client          = new XmppWebSocketConnection(new JID(JID), SecureStringToString(password), WebSocketUri);
            Client.Element += (sender, args) => Execute.OnUIThread(() => XmlLog.Add(args.Stanza.ToString()));
            Task.Factory.StartNew(() => Client.Connect());
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="connection"></param>
 public void AttachConnection(XmppWebSocket.XmppWebSocketConnection connection)
 {
     this.connection = connection;
     this.connection.OnRosterStart += new ObjectHandler(connection_OnRosterStart);
     this.connection.OnRosterItem  += new XmppClientConnection.RosterHandler(connection_OnRosterItem);
     this.connection.OnRosterEnd   += new ObjectHandler(connection_OnRosterEnd);
     this.connection.OnXmppConnectionStateChanged += new XmppConnectionStateHandler(connection_OnXmppConnectionStateChanged);
     //if (this.connection.ConnectionState == XmppConnectionState.SessionStarted)
     //{
     //    this.connection.RequestRoster();
     //}
 }
예제 #5
0
        private void InitConn()
        {
            conn = new XmppWebSocketConnection();

            chatBox1.SetParams(conn, "weigang75");

            conn.HeartbeatPeriod = 0;
            conn.OnXmppConnectionStateChanged += new agsXMPP.XmppConnectionStateHandler(conn_OnXmppConnectionStateChanged);
            conn.OnReadSocketData             += new agsXMPP.Net.BaseSocket.OnSocketDataHandler(conn_OnReadSocketData);
            conn.OnWriteSocketData            += new agsXMPP.Net.BaseSocket.OnSocketDataHandler(conn_OnWriteSocketData);
            conn.OnError += new agsXMPP.ErrorHandler(conn_OnError);

            conn.OnMessage += new agsXMPP.protocol.client.MessageHandler(conn_OnMessage);
        }
예제 #6
0
        /// <summary>
        /// 设置参数
        /// </summary>
        /// <param name="conn">设置连接</param>
        /// <param name="toUserName">设置聊天对象的用户名</param>
        public void SetParams(XmppWebSocketConnection conn, string toUserName)
        {
            if (conn == null)
            {
                throw new ArgumentNullException("conn");
            }

            if (string.IsNullOrEmpty(toUserName))
            {
                throw new ArgumentNullException("toUserName");
            }

            this.conn            = conn;
            this.toUserName      = toUserName;
            labUserName.Text     = toUserName;
            this.conn.OnMessage += new agsXMPP.protocol.client.MessageHandler(conn_OnMessage);
        }
 public void AttachConnection(XmppWebSocketConnection connection)
 {
     this.connection = connection;
 }
예제 #8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="conn"></param>
 public WSIqGrabber(XmppWebSocketConnection conn)
 {
     m_connection = conn;
     conn.OnIq   += new IqHandler(OnIq);
 }
예제 #9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PresenceGrabber"/> class.
 /// </summary>
 /// <param name="conn">The conn.</param>
 public WSPresenceGrabber(XmppWebSocketConnection conn)
 {
     m_connection     = conn;
     conn.OnPresence += new PresenceHandler(m_connection_OnPresence);
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="conn"></param>
 public WSMessageGrabber(XmppWebSocketConnection conn)
 {
     m_connection    = conn;
     conn.OnMessage += new MessageHandler(m_connection_OnMessage);
 }