示例#1
0
        void ws_LoginCompleted(object sender, LiveSupport.OperatorConsole.LiveChatWS.LoginCompletedEventArgs e)
        {
            if (e.Error == null)
            {
                currentOperator = (Operator)Common.Convert(e.Result);

                if (currentOperator != null)
                {
                    LiveSupport.OperatorConsole.LiveChatWS.AuthenticationHeader h = new LiveSupport.OperatorConsole.LiveChatWS.AuthenticationHeader();
                    h.OperatorId                 = currentOperator.OperatorId;
                    h.OperatorSession            = currentOperator.OperatorSession;
                    ws.AuthenticationHeaderValue = h;

                    socketHandler = new SocketHandler();
                    if (Properties.Settings.Default.OperatorConsole_LiveChatWS_Operator.ToLower().Contains("localhost"))
                    {
                        socket = socketHandler.Connect("127.0.0.1");
                    }
                    else
                    {
                        IPHostEntry entry = Dns.GetHostEntry("lcs.zxkefu.cn");
                        socket = socketHandler.Connect(entry.AddressList[0].ToString());
                    }

                    socketHandler.DataArrive += new EventHandler <DataArriveEventArgs>(socketHandler_DataArrive);
                    socketHandler.Exception  += new EventHandler <ExceptionEventArgs>(socketHandler_Exception);
                    socketHandler.SendPacket(socket, new LoginAction(currentOperator.OperatorId));

                    fireConnectStateChange(ConnectionState.Connected, "登录成功");
                    timerAction   = TimerAction.HeartBeat;
                    timer.Enabled = true;
                    ws.GetSystemAdvertiseAsync(productVersion, Guid.NewGuid());
                    ws.GetLeaveWordAsync(Guid.NewGuid());
                    ws.GetAllVisitorsAsync(currentOperator.AccountId, Guid.NewGuid());
                    ws.GetAllOperatorsAsync(Guid.NewGuid());
                    ws.GetAccountDomainsAsync(Guid.NewGuid());
                    //Disable the timer checkNewChangesTimer.Enabled = true;
                }
                else
                {
                    fireConnectStateChange(ConnectionState.Disconnected, "登录失败,登录信息输入错误");
                }
            }
            else
            {
                fireConnectStateChange(ConnectionState.Disconnected, "登录失败," + e.Error.Message);
            }
        }
示例#2
0
        void ws_LoginCompleted(object sender, LiveSupport.OperatorConsole.LiveChatWS.LoginCompletedEventArgs e)
        {
            if (e.Error == null)
            {
                currentOperator = (Operator)Common.Convert(e.Result);

                if (currentOperator != null)
                {
                    LiveSupport.OperatorConsole.LiveChatWS.AuthenticationHeader h = new LiveSupport.OperatorConsole.LiveChatWS.AuthenticationHeader();
                    h.OperatorId = currentOperator.OperatorId;
                    h.OperatorSession = currentOperator.OperatorSession;
                    ws.AuthenticationHeaderValue = h;

                    socketHandler = new SocketHandler();
                    if (Properties.Settings.Default.OperatorConsole_LiveChatWS_Operator.ToLower().Contains("localhost"))
                    {
                        socket = socketHandler.Connect("127.0.0.1");
                    }
                    else
                    {
                        IPHostEntry entry = Dns.GetHostEntry("lcs.zxkefu.cn");
                        socket = socketHandler.Connect(entry.AddressList[0].ToString());
                    }

                    socketHandler.DataArrive += new EventHandler<DataArriveEventArgs>(socketHandler_DataArrive);
                    socketHandler.Exception += new EventHandler<ExceptionEventArgs>(socketHandler_Exception);
                    socketHandler.SendPacket(socket, new LoginAction(currentOperator.OperatorId));

                    fireConnectStateChange(ConnectionState.Connected, "登录成功");
                    timerAction = TimerAction.HeartBeat;
                    timer.Enabled = true;
                    ws.GetSystemAdvertiseAsync(productVersion, Guid.NewGuid());
                    ws.GetLeaveWordAsync(Guid.NewGuid());
                    ws.GetAllVisitorsAsync(currentOperator.AccountId, Guid.NewGuid());
                    ws.GetAllOperatorsAsync(Guid.NewGuid());
                    ws.GetAccountDomainsAsync(Guid.NewGuid());
                    //Disable the timer checkNewChangesTimer.Enabled = true;
                }
                else
                {
                    fireConnectStateChange(ConnectionState.Disconnected, "登录失败,登录信息输入错误");
                }
            }
            else
            {
                fireConnectStateChange(ConnectionState.Disconnected, "登录失败," + e.Error.Message);
            }
        }