Esempio n. 1
0
        private async void btnSearch_Click(object sender, EventArgs e)
        {
            dgvSearchFriend.Rows.Clear();
            btnSearch.Enabled = false;
            ChatResult <List <CustomerInfo> > result = await DataManager.Instance.SearchCustomer(tbSearch.Text);

            btnSearch.Enabled = true;
            if (result.Success)
            {
                List <CustomerInfo> friendList = result.Data;
                string myCustomerId            = DataManager.Instance.Customer.CustomerId;

                if (friendList.Count > 0)
                {
                    foreach (CustomerInfo cus in friendList)
                    {
                        if (cus.CustomerId != myCustomerId)
                        {
                            Invoke((MethodInvoker) delegate
                            {
                                dgvSearchFriend.Rows.Add(cus.CustomerId);
                            });
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show(result.Message);
            }
        }
Esempio n. 2
0
        private async void btnSearch_Click(object sender, EventArgs e)
        {
            dgvSearchGroup.Rows.Clear();
            btnSearch.Enabled = false;
            ChatResult <List <GroupInfo> > result = await DataManager.Instance.SearchGroup(tbSearch.Text);

            btnSearch.Enabled = true;
            if (result.Success)
            {
                List <GroupInfo> groupList = result.Data;
                if (groupList.Count > 0)
                {
                    foreach (GroupInfo group in groupList)
                    {
                        Invoke((MethodInvoker) delegate
                        {
                            dgvSearchGroup.Rows.Add(group.GroupId, group.GroupName, group.CustomerList.Count);
                        });
                    }
                }
            }
            else
            {
                MessageBox.Show(result.Message);
            }
        }
Esempio n. 3
0
        public Chat(string hostname, int port, string nickname, string chlg, string captcha,
                    UpdateStatusText statuscb, ChatResult cr)
        {
            logindata = ASCIIEncoding.ASCII.GetBytes("LOGIN\n" + "V2\n" +
                                                     nickname + "\n" + chlg + "\n" + captcha).Concat(new byte[1] {
                (byte)'\r'
            }).ToArray();

            inbuff     = new byte[0x1000];
            inbuff_off = 0;
            StatusCB   = statuscb;
            ResultCB   = cr;
            Connected  = false;

            StatusCB("Connecting to chat...");

            try
            {
                cl = new TcpClient();
                cl.BeginConnect(hostname, port, ConnectCallback1, (object)cl);
            }
            catch (SocketException se)
            {
                StatusCB(se.Message);
                ResultCB(false);
            }
        }
Esempio n. 4
0
        private async void SendMessage()
        {
            if (!string.IsNullOrEmpty(tbChat.Text.Trim()))
            {
                if (m_messageType == 300)
                {
                    //broadcast msg to groups

                    MessageInfo message = new MessageInfo(MyId, ReceiverId, DateTime.Now, tbChat.Text, 300);
                    ShowMessage(message, true);
                    ChatResult result = await DataManager.Instance.BroadcastMessage(message);
                }
                else if (m_messageType == 200)
                {
                    MessageInfo message = new MessageInfo(MyId, ReceiverId, DateTime.Now, tbChat.Text, 200);
                    ShowMessage(message, true);
                    ChatResult result = await DataManager.Instance.SendMessageToGroup(message);
                }

                else
                {
                    MessageInfo message = new MessageInfo(MyId, ReceiverId, DateTime.Now, tbChat.Text, 100);
                    ShowMessage(message, true);
                    ChatResult result = await DataManager.Instance.SendMessageToFriend(message);
                }
                tbChat.Text = string.Empty;
            }
        }
Esempio n. 5
0
        private JsonResult generateJsonChat(ChatResult result, string accessMessage, string PIN)
        {
            if (result != null)
            {
                var jsonItem = new
                {
                    Messages = result.Messages.Select(p => new
                    {
                        text = string.Format("<span class='chatmessage_User'>{0}</span>: {1}", p.Author, p.Body),
                        type = p.MessageStatus.ToString()
                    }),
                    Access     = true,
                    Users      = result.Users,
                    Expiration = result.Expiration,
                    Incidents  = result.Incidents
                };

                return(Json(jsonItem, JsonRequestBehavior.DenyGet));
            }
            else
            {
                return(Json(
                           new
                {
                    Access = string.IsNullOrWhiteSpace(PIN) ? new Nullable <bool>() : false,
                    Messages = new List <string>(),
                    Users = new List <string>(),
                    AccessMessage = accessMessage,
                    Expiration = 0
                }

                           , JsonRequestBehavior.DenyGet));
            }
        }
Esempio n. 6
0
 private void show(TextBox tb, ChatResult result)
 {
     foreach (var m in result.Messages)
     {
         tb.AppendText(string.Format("[{0}] {1}: {2}{3}", m.Date.ToString("HH:mm:ss"), m.Author, m.Body, Environment.NewLine));
     }
 }
Esempio n. 7
0
        public async Task <bool> GetMessageHistory(string receiverId, DateTime fromDate, DateTime toDate, int messageType)
        {
            ChatResult <List <MessageInfo> > result = await DataManager.Instance.SearchMessage(receiverId, fromDate, toDate, messageType);

            if (result.Success)
            {
                List <MessageInfo> msgList = result.Data;
                if (msgList.Count > 0)
                {
                    Invoke((MethodInvoker) delegate
                    {
                        List <MessageInfo> newlist = msgList.OrderByDescending(d => d.Datetime.Date).ToList();
                        foreach (MessageInfo msg in newlist)
                        {
                            ShowMessage(msg, false);
                        }
                    });
                    dt = dt.AddDays(-5);
                    return(true);
                }
            }
            else
            {
                //dgvChat.Scroll -= dgvChat_Scroll;
            }
            return(false);
        }
Esempio n. 8
0
        public JsonResult Push(Guid roomId, string PIN, string Message)
        {
            Message = Regex.Replace(Message, "<", "&lt;");
            Message = Regex.Replace(Message, ">", "&gt;");
            Message = Regex.Replace(Message, "\"", "&quot;");
            Message = Regex.Replace(Message, "'", "&#39;");
            string accessMessage = string.Empty;

            ChatResult result = null;
            IChatroom  room   = manager.Get(roomId);

            if (room != null)
            {
                result = room.Push(PIN, Message);

                Save();
            }

            if (result == null && !string.IsNullOrEmpty(PIN))
            {
                accessMessage = "Twój slot został zamknięty!";
            }
            if (room == null)
            {
                accessMessage = "Chat został zamknięty!";
            }

            return(generateJsonChat(result, accessMessage, PIN));
        }
Esempio n. 9
0
        public ChatResult AddFriendRespond(string requestId, bool agree)
        {
            AddFriendRequest request = Manager.Instance.GetFriendRequestById(requestId);

            if (request == null)
            {
                return(new ChatResult(false, "Request not found"));
            }
            CustomerInfo myCustomer           = Manager.Instance.GetCustomerByCustomerId(request.Receiver);
            CustomerInfo friendCustomer       = Manager.Instance.GetCustomerByCustomerId(request.Sender);
            CustomerInfo returnMyCustomer     = new CustomerInfo(myCustomer.CustomerId, myCustomer.CustomerName, myCustomer.Status);
            CustomerInfo returnFriendCustomer = new CustomerInfo(friendCustomer.CustomerId, friendCustomer.CustomerName, friendCustomer.Status);

            ChatResult result = Manager.Instance.AddFriendRespond(Context.ConnectionId, requestId, agree);

            if (result.Success)
            {
                //send to request customer
                Clients.Clients(friendCustomer.ConnectionList).OnAddFriendRespond(returnMyCustomer, agree);
                if (agree)
                {
                    //send to respond customer
                    Clients.Clients(myCustomer.ConnectionList).OnAddFriendRespond(returnFriendCustomer, agree);
                }
            }
            return(result);
        }
Esempio n. 10
0
        public TChatroom Add(string roomName, string adminNick, out ChatResult result)
        {
            var room = new TChatroom();

            result = room.Init(roomName, adminNick);
            chatrooms.Add(room);
            return(room);
        }
Esempio n. 11
0
        private void button4_Click(object sender, EventArgs e)
        {
            room = new Chatroom();
            ChatResult msg = room.Init("testowy", "adminek");

            show(textBox1, msg);
            button1.Tag    = msg.Pin;
            timer1.Enabled = true;
        }
Esempio n. 12
0
        public ActionResult DeleteRoom(Guid roomId, string PIN)
        {
            ChatResult result = manager.Delete(roomId, PIN);

            Save();

            Error("Chat został zamknięty!");
            return(RedirectToAction("Index", "Home"));
        }
Esempio n. 13
0
    public static void Handle(ReceivablePacket packet)
    {
        switch (packet.ReadShort())
        {
        case 1:
            AccountAuthenticationResult.Process(packet);
            break;

        case 2:
            CharacterSelectionInfoResult.Process(packet);
            break;

        case 3:
            CharacterCreationResult.Process(packet);
            break;

        case 4:
            CharacterDeletionResult.Process(packet);
            break;

        case 5:
            PlayerOptionsInformation.Process(packet);
            break;

        case 6:
            PlayerInformation.Process(packet);
            break;

        case 7:
            NpcInformation.Process(packet);
            break;

        case 8:
            DeleteObject.Process(packet);
            break;

        case 9:
            Logout.Process(packet);
            break;

        case 10:
            LocationUpdate.Process(packet);
            break;

        case 11:
            AnimatorUpdate.Process(packet);
            break;

        case 12:
            ChatResult.Process(packet);
            break;

        case 13:
            PlayerInventoryUpdate.Process(packet);
            break;
        }
    }
Esempio n. 14
0
        private async void dgvMemberList_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 1)//column remove from group
            {
                string       customerId   = dgvMemberList.Rows[e.RowIndex].Cells[0].Value.ToString();
                DialogResult dialogResult = MessageBox.Show("Remove customer" + customerId + " ?", "Remove customer", MessageBoxButtons.YesNo);
                if (dialogResult == DialogResult.Yes)
                {
                    ChatResult result = await DataManager.Instance.RemoveCustomerFromGroup(customerId, m_groupId);

                    if (result.Success)
                    {
                    }
                    else
                    {
                        MessageBox.Show(result.Message);
                    }
                }
            }
            else if (e.ColumnIndex == 2)//column admin
            {
                string customerId = dgvMemberList.Rows[e.RowIndex].Cells[0].Value.ToString();
                if ((bool)dgvMemberList.Rows[e.RowIndex].Cells[2].Value == false)
                {
                    DialogResult dialogResult = MessageBox.Show("Add admin " + customerId + " ?", "Admin", MessageBoxButtons.YesNo);
                    if (dialogResult == DialogResult.Yes)
                    {
                        ChatResult result = await DataManager.Instance.AddAdminToGroup(customerId, m_groupId);

                        if (result.Success)
                        {
                        }
                        else
                        {
                            MessageBox.Show(result.Message);
                        }
                    }
                }
                else
                {
                    DialogResult dialogResult = MessageBox.Show("Remove admin " + customerId + " ?", "Admin", MessageBoxButtons.YesNo);
                    if (dialogResult == DialogResult.Yes)
                    {
                        ChatResult result = await DataManager.Instance.RemoveAdminFromGroup(customerId, m_groupId);

                        if (result.Success)
                        {
                        }
                        else
                        {
                            MessageBox.Show(result.Message);
                        }
                    }
                }
            }
        }
Esempio n. 15
0
        public ChatResult <List <GroupInfo> > SearchGroup(string groupName)
        {
            List <GroupInfo> groupList = Manager.Instance.SearchGroupByGroupName(Context.ConnectionId, groupName);

            if (groupList == null)
            {
                return(ChatResult <List <GroupInfo> > .CreateInstance(false, "Group not found", null));
            }
            return(ChatResult <List <GroupInfo> > .CreateInstance(true, null, groupList));
        }
Esempio n. 16
0
        public ChatResult <List <MessageInfo> > SearchMessage(string receiverId, DateTime fromdate, DateTime toDate)
        {
            List <MessageInfo> messageList = Manager.Instance.SearchMessage(Context.ConnectionId, receiverId, fromdate, toDate);

            if (messageList == null || messageList != null && messageList.Count <= 0)
            {
                return(ChatResult <List <MessageInfo> > .CreateInstance(false, "Message not found", null));
            }
            return(new ChatResult <List <MessageInfo> >(true, null, messageList));
        }
Esempio n. 17
0
        public ChatResult <List <CustomerInfo> > SearchCustomer(string customerNameKeyword)
        {
            List <CustomerInfo> customerList = Manager.Instance.SearchCustomerByCustomerName(Context.ConnectionId, customerNameKeyword);

            if (customerList == null)
            {
                return(ChatResult <List <CustomerInfo> > .CreateInstance(false, "Customer not found", null));
            }
            return(ChatResult <List <CustomerInfo> > .CreateInstance(true, null, customerList));
        }
Esempio n. 18
0
        public ChatResult <List <GroupInfo> > SearchGroup(string groupName)
        {
            System.Threading.Thread.Sleep(3000);
            List <GroupInfo> groupList = Manager.Instance.SearchGroupByGroupName(Context.ConnectionId, groupName);

            if (groupList == null || groupList != null && groupList.Count == 0)
            {
                return(ChatResult <List <GroupInfo> > .CreateInstance(false, "Group not found", null));
            }
            return(ChatResult <List <GroupInfo> > .CreateInstance(true, null, groupList));
        }
Esempio n. 19
0
        public JsonResult SetChat(ChatModel chatmodel)
        {
            //cirModel.DateOfFailure = ConvertDate(cirModel.DateOfFailure);
            //cirModel.CIRId = cirModel.CIRId == null ? "0" : cirModel.CIRId;
            //cirModel.WTGStartTime = ConvertDateTime(cirModel.WTGStartTime);
            //cirModel.WTGStopTime = ConvertDateTime(cirModel.WTGStopTime);
            //cirModel.EmpId = CookieManager.GetCookie(CookieManager.CookieName).logindetail.EmpID;
            ChatResult result = oChatManager.SaveChat(chatmodel, CookieManager.GetCookie(CookieManager.CookieName).logindetail.EmpID);

            return(Json(new { result }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 20
0
        public static void HandleChatList(WorldSession session, ClientChatList chatList)
        {
            ChatResult result = session.Player.ChatManager.CanListMembers(chatList.Channel.ChatId);

            if (result != ChatResult.Ok)
            {
                GlobalChatManager.Instance.SendChatResult(session, chatList.Channel.Type, chatList.Channel.ChatId, result);
                return;
            }

            session.Player.ChatManager.ListMembers(chatList.Channel.ChatId);
        }
Esempio n. 21
0
        async private void SendButton_OnClick(object sender, RoutedEventArgs e)
        {
            ChatResult result = Chatbot.Chat(InputBox.Text);

            //string.Format("{2}\nUser: {0}\nBot: {1}\n",  , OutputBox.Text);
            OutputBox.Text = result.BotMessage;
            if (Sound)
            {
                await this.SpeakTextAsync(result.BotMessage, this.uiMediaElement);
            }
            InputBox.Text = string.Empty;
        }
Esempio n. 22
0
        public static void HandleChatOwner(WorldSession session, ClientChatOwner chatOwner)
        {
            ChatResult result = session.Player.ChatManager.CanPassOwner(chatOwner.Channel.ChatId, chatOwner.CharacterName);

            if (result != ChatResult.Ok)
            {
                GlobalChatManager.Instance.SendChatResult(session, chatOwner.Channel.Type, chatOwner.Channel.ChatId, result);
                return;
            }

            session.Player.ChatManager.PassOwner(chatOwner.Channel.ChatId, chatOwner.CharacterName);
        }
Esempio n. 23
0
        public static void HandleChatPassword(WorldSession session, ClientChatPassword chatPassword)
        {
            ChatResult result = session.Player.ChatManager.CanSetPassword(chatPassword.Channel.ChatId, chatPassword.Password);

            if (result != ChatResult.Ok)
            {
                GlobalChatManager.Instance.SendChatResult(session, chatPassword.Channel.Type, chatPassword.Channel.ChatId, result);
                return;
            }

            session.Player.ChatManager.SetPassword(chatPassword.Channel.ChatId, chatPassword.Password);
        }
Esempio n. 24
0
        public static void HandleChatLeave(WorldSession session, ClientChatLeave chatLeave)
        {
            ChatResult result = session.Player.ChatManager.CanLeave(chatLeave.Channel.ChatId);

            if (result != ChatResult.Ok)
            {
                GlobalChatManager.Instance.SendChatResult(session, chatLeave.Channel.Type, chatLeave.Channel.ChatId, result);
                return;
            }

            session.Player.ChatManager.Leave(chatLeave.Channel.ChatId, ChatChannelLeaveReason.Leave);
        }
Esempio n. 25
0
        public static void HandleChatMute(WorldSession session, ClientChatMute chatMute)
        {
            ChatResult result = session.Player.ChatManager.CanMute(chatMute.Channel.ChatId, chatMute.CharacterName);

            if (result != ChatResult.Ok)
            {
                GlobalChatManager.Instance.SendChatResult(session, chatMute.Channel.Type, chatMute.Channel.ChatId, result);
                return;
            }

            session.Player.ChatManager.Mute(chatMute.Channel.ChatId, chatMute.CharacterName, chatMute.Status);
        }
Esempio n. 26
0
        private async void addFriendToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ChatResult result = await DataManager.Instance.AddFriendRequest(contextMenuStripSearch.Tag.ToString());

            if (result.Success)
            {
                //
            }
            else
            {
                MessageBox.Show(result.Message);
            }
        }
Esempio n. 27
0
        public async Task <ChatResult> BroadcastMessage(MessageInfo msg)
        {
            try
            {
                ChatResult result = await HubProxy.Invoke <ChatResult>(ServerEventNames.BroadcastMessage, msg);

                return(result);
            }
            catch (Exception ex)
            {
                return(new ChatResult(false, ex.Message));
            }
        }
Esempio n. 28
0
        public async Task <ChatResult <List <MessageInfo> > > SearchMessage(string receiverId, DateTime fromDate, DateTime toDate, int messageType)
        {
            try
            {
                ChatResult <List <MessageInfo> > result = await HubProxy.Invoke <ChatResult <List <MessageInfo> > >(ServerEventNames.SearchMessage, receiverId, fromDate, toDate, messageType);

                return(result);
            }
            catch (Exception ex)
            {
                return(new ChatResult <List <MessageInfo> >(false, ex.ToString(), null));
            }
        }
Esempio n. 29
0
        private async void joinGroupToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string     groupId = (string)GroupMenuStrip.Tag;
            ChatResult result  = await DataManager.Instance.JoinGroup(groupId);

            if (result.Success)
            {
            }
            else
            {
                MessageBox.Show(result.Message);
            }
        }
Esempio n. 30
0
        private async void cbStatus_SelectedValueChanged(object sender, EventArgs e)
        {
            ChatResult result = await DataManager.Instance.ChangeCustomerStatus(cbStatus.SelectedItem.ToString());

            if (result.Success)
            {
                //
            }
            else
            {
                MessageBox.Show(result.Message);
            }
        }