Пример #1
0
        public bool CreateMessage(MessageObj CurObj)
        {
            bool flag = false;

            if (this.TryConnection())
            {
                DatabaseParameters keys = new DatabaseParameters();
                keys.Add(new DatabaseParameter(this.DataStructrure.Tables.OpMessage.InternalID.ActualFieldName, CurObj.InternalID));
                keys.Add(new DatabaseParameter(this.DataStructrure.Tables.OpMessage.EngineerID.ActualFieldName, CurObj.Engineer.InternalID));
                keys.Add(new DatabaseParameter(this.DataStructrure.Tables.OpMessage.SenderID.ActualFieldName, CurObj.Sender.InternalID));
                keys.Add(new DatabaseParameter(this.DataStructrure.Tables.OpMessage.MessageText.ActualFieldName, CurObj.MsgText.Replace("'", "''"), false, true));
                keys.Add(new DatabaseParameter(this.DataStructrure.Tables.OpMessage.MessageDate.ActualFieldName, CurObj.MsgDate));
                base.CurSQLFactory.InsertCommand(keys, this.DataStructrure.Tables.OpMessage.ActualTableName);
                if (!(flag = base.CurDBEngine.ExecuteQuery(base.CurSQLFactory.SQL)))
                {
                    base.error_occured = true;
                    string errMsg = base.ErrMsg;
                    base.ErrMsg = errMsg + "[OpMessageManager] : CreateMessage : " + base.CurSQLFactory.SQL + " : " + base.CurDBEngine.ErrorMessage;
                }
                return(flag);
            }
            base.error_occured = true;
            base.ErrMsg        = base.ErrMsg + "[OpMessageManager] : CreateMessage : " + base.ErrMsg;
            return(flag);
        }
        private void handleMsg(MessageObj obj)
        {
            string command;

            string reading;

            switch (obj.data.type)
            {
            case "freqset":
                command = "SENS1:FREQ " + obj.data.content.frequency + obj.data.content.frequency_unit;
                scpiobj.SendSCPIcommand(command, device);
                getFullData(device);
                break;

            case "unitset":
                command  = "UNIT:POW ";
                command += obj.data.content.reading_unit == "W" ? "DBM" : "W";
                getFullData(device);
                break;

            case "meas":
                getFullData(device);
                break;

            case "cal":
                device = form.getSelectedDevice();
                scpiobj.SendSCPIcommand("CAL1:ALL?", device);
                break;

            default:
                break;
            }
        }
Пример #3
0
        public async Task Delete(SendMessage Message)
        {
            Message.Text = null;
            DiscordMessage MessageObj;

            if (Sent.TryRemove(Message, out MessageObj))
            {
                await MessageObj.Delete();
            }
        }
Пример #4
0
        public async Task Edit(SendMessage Message)
        {
            string Text = Message.Text;

            Message.Text = null;
            DiscordMessage MessageObj;

            if (Sent.TryGetValue(Message, out MessageObj))
            {
                await MessageObj.Edit(Text);
            }
        }
Пример #5
0
        public JsonResult CreateMessage(MessageObj messageObj)
        {
            Message message = new Message();

            message.ReportID = messageObj.ReportID;
            message.Text     = messageObj.MessageText;
            message.DateTime = DateTime.Now;
            _context.Messages.Add(message);
            _context.SaveChanges();

            ReportResult result = new ReportResult(200, "Success", message.ReportID);

            return(Json(result));
        }
Пример #6
0
        public BusinessModule CreateBusinessModule(string name, object args = null)
        {
            this.Log("CreateModule() name = " + name + ", args = " + args);

            if (_businessModuleDic.ContainsKey(name))
            {
                this.Log(Debuger.DebugColor.Red, "CreateModule() The Module<{0}> Has Existed!");
                return(null);
            }

            BusinessModule module = null;
            Type           type   = Type.GetType(_domain + "." + name);

            if (type != null)
            {
                module = Activator.CreateInstance(type) as BusinessModule;
            }
            else
            {
                // module = new LuaModule(name);
            }
            _businessModuleDic.Add(name, module);

            //处理预监听的事件
            if (_preListenEventDic.ContainsKey(name))
            {
                EventTable mgrEvent = null;
                mgrEvent = _preListenEventDic[name];
                _preListenEventDic.Remove(name);

                module.SetEventTable(mgrEvent);
            }

            module.Create(args);

            //处理缓存的消息
            if (_messageCacheDic.ContainsKey(name))
            {
                List <MessageObj> list = _messageCacheDic[name];
                for (int i = 0; i < list.Count; i++)
                {
                    MessageObj msgobj = list[i];
                    module.HandleMessage(msgobj.msg, msgobj.args);
                }
                _messageCacheDic.Remove(name);
            }

            return(module);
        }
Пример #7
0
        public async Task SendMessage(MessageDto messageDto)
        {
            var user = await _userRepository.GetUserByIdAsync(Context.User.GetUserId());

            var message = new MessageObj
            {
                Message = messageDto.Message,
                Type    = "text",
                Reply   = false,
                Date    = DateTime.Now,
                Name    = user.Nick,
                Avatar  = user.Avatar,
            };
            var recipientConnection = _tracker.GetConnectionId(messageDto.RecipientId);
            await Clients.Client(recipientConnection).SendAsync("GetMessage", message);
        }
 private void Ws_OnMessage(object sender, MessageEventArgs e)
 {
     Console.WriteLine("Received Message,content:" + e.Data);
     if (e.Data.StartsWith("{\"type\":\"ping"))
     {
         ws.Send("{\"type\":\"pong\"}");
     }
     else if (e.Data.StartsWith("{\"type\":\"equip"))
     {
         var        data        = e.Data;//message data
         MessageObj datacontent = JsonConvert.DeserializeObject <MessageObj>(data);
         if (datacontent.type == "equip")
         {
             handleMsg(datacontent);
         }
         else
         {
         }
     }
 }
        public void getFullData(string device)
        {
            string     frequency     = scpiobj.SendSCPICommandAndReadString("SENS1:FREQ?", device);
            string     reading       = scpiobj.SendSCPICommandAndReadString("FETC1?", device);
            string     reading_unit  = scpiobj.SendSCPICommandAndReadString("UNIT:POW?", device);
            MessageObj obj           = new MessageObj();
            long       currentTicks  = DateTime.Now.Ticks;
            DateTime   dtFrom        = new DateTime(1970, 1, 1, 0, 0, 0, 0);
            long       currentMillis = (currentTicks - dtFrom.Ticks) / 10000;

            obj.type                        = "chatmessage";
            obj.data                        = new MessageData();
            obj.data.content                = new MessageContent();
            obj.data.username               = "******";
            obj.data.avatar                 = "https://thirdqq.qlogo.cn/qqapp/101343857/A72CD6FE0C366BADFD6095BBE6A3D7D9/100";
            obj.data.id                     = "usr_4";
            obj.data.fromid                 = "usr_4";
            obj.data.content.frequency      = formatReturnedFrequency(frequency)[0];
            obj.data.content.frequency_unit = formatReturnedFrequency(frequency)[1];


            if (reading_unit == "DBM\n")
            {
                obj.data.content.reading      = Convert.ToSingle(reading).ToString("f2");
                obj.data.content.reading_unit = "dBm";
            }
            else
            {
                obj.data.content.reading      = formatReturnedWaltPower(reading)[0];
                obj.data.content.reading_unit = formatReturnedWaltPower(reading)[1];
            }
            obj.data.cid       = "defaultcid";
            obj.data.fromid    = "defaultfromid";
            obj.data.timestamp = currentMillis.ToString();
            obj.data.type      = "result";
            string msgobj = JsonConvert.SerializeObject(obj);

            Console.WriteLine(msgobj);
            sendSocketMsg(msgobj);
        }
Пример #10
0
        private MessageObj FillData(DataRow ResultRow)
        {
            MessageObj obj2 = null;

            if (ResultRow != null)
            {
                obj2 = new MessageObj(ResultRow[this.DataStructrure.Views.OpMessage.InternalID.ActualFieldName].ToString())
                {
                    Sender   = new ApplicationUser(ResultRow[this.DataStructrure.Views.OpMessage.SenderID.ActualFieldName].ToString()),
                    Engineer = new ApplicationUser(ResultRow[this.DataStructrure.Views.OpMessage.EngineerID.ActualFieldName].ToString())
                };
                obj2.Engineer.FirstName = ResultRow[this.DataStructrure.Views.OpMessage.EngineerName.ActualFieldName].ToString();
                obj2.IsRead             = ResultRow[this.DataStructrure.Views.OpMessage.IsRead.ActualFieldName].ToString().CompareTo("1") == 0;
                obj2.MsgDate            = DateTime.Parse(ResultRow[this.DataStructrure.Views.OpMessage.MessageDate.ActualFieldName].ToString());
                obj2.MsgText            = ResultRow[this.DataStructrure.Views.OpMessage.MessageText.ActualFieldName].ToString();
                if (ResultRow[this.DataStructrure.Views.OpMessage.MessageArrivalDate.ActualFieldName].ToString().Length > 0)
                {
                    obj2.MsgArrivalDate = DateTime.Parse(ResultRow[this.DataStructrure.Views.OpMessage.MessageArrivalDate.ActualFieldName].ToString());
                }
            }
            return(obj2);
        }
Пример #11
0
 public void Invoke(string CurCmd, CommanderData Context)
 {
     // System.Environment.
     //if (GlobalVar.MainForm != null)
     //    GlobalVar.MainForm.Dispose();
     MessageObj obj = new MessageObj("dispose", null);
     GlobalVar.Instanse.MsgPool.PushMessage(obj);
 }
        private async Task RouteJSONMessageAsync(string route, List <string> obj, string receiver)
        {
            var sock = _manager.GetAllSockets().FirstOrDefault(s => s.Key == receiver);

            if (sock.Value != null)
            {
                if (sock.Value.State == WebSocketState.Open)
                {
                    switch (route)
                    {
                    case ("sendMessage"):
                        MessageObj msgObj = new MessageObj(obj[1], obj[2], obj[0], obj[3], obj[4]);
                        string     json   = JsonConvert.SerializeObject(msgObj);
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes(json), WebSocketMessageType.Text, true, CancellationToken.None);

                        Console.WriteLine("Receiver Online! Message sent and stored in database.");
                        break;

                    case ("groupSendMessage"):
                        Console.WriteLine("Broadcast");
                        MessageObj grpMsgObj = new MessageObj(obj[1], obj[2], obj[0], obj[3], obj[4]);
                        string     jsonGrp   = JsonConvert.SerializeObject(grpMsgObj);
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes(jsonGrp), WebSocketMessageType.Text, true, CancellationToken.None);

                        Console.WriteLine("Receiver Online! Status sent!");
                        break;

                    case ("setStatusOffline"):
                    case ("setStatus"):
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes("{\"eventV\": \"setStatus\", \"friend\": \"" + obj[0] + "\", \"status\": \"" + obj[1] + "\" }"), WebSocketMessageType.Text, true, CancellationToken.None);

                        break;

                    case ("addFriendReq"):
                        FriendsListObj flAFR   = new FriendsListObj("incomingRequest", obj[0].ToString());
                        string         jsonAFR = JsonConvert.SerializeObject(flAFR);
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes(jsonAFR), WebSocketMessageType.Text, true, CancellationToken.None);

                        Console.WriteLine("Receiver Online! Data sent and stored in database.");
                        break;

                    case ("cancelFriendReq"):
                        FriendsListObj flCFR   = new FriendsListObj("cancelIncomingRequest", obj[0].ToString());
                        string         jsonCFR = JsonConvert.SerializeObject(flCFR);
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes(jsonCFR), WebSocketMessageType.Text, true, CancellationToken.None);

                        Console.WriteLine("Receiver Online! Data sent and stored in database.");
                        break;

                    case ("acceptFriendReq"):
                        FriendsListObj flACFR   = new FriendsListObj("addFriend", obj[0].ToString(), obj[2].ToString());
                        string         jsonACFR = JsonConvert.SerializeObject(flACFR);
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes(jsonACFR), WebSocketMessageType.Text, true, CancellationToken.None);

                        Console.WriteLine("Receiver Online! Data sent and stored in database.");
                        break;

                    case ("declineFriendReq"):
                        FriendsListObj flDFR   = new FriendsListObj("removeIncomingRequest", obj[0].ToString());
                        string         jsonDFR = JsonConvert.SerializeObject(flDFR);
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes(jsonDFR), WebSocketMessageType.Text, true, CancellationToken.None);

                        Console.WriteLine("Receiver Online! Data sent and stored in database.");
                        break;

                    case ("removeFriend"):
                        FriendsListObj flRF   = new FriendsListObj("removeFriend", obj[0].ToString());
                        string         jsonRF = JsonConvert.SerializeObject(flRF);
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes(jsonRF), WebSocketMessageType.Text, true, CancellationToken.None);

                        Console.WriteLine("Receiver Online! Data sent and stored in database.");
                        break;

                    case ("setProfilePhoto"):
                        await sock.Value.SendAsync(Encoding.UTF8.GetBytes("{\"eventV\": \"setProfilePhoto\", \"user\": \"" + obj[0] + "\", \"photoBytes\": \"" + obj[1] + "\" }"), WebSocketMessageType.Text, true, CancellationToken.None);

                        break;
                    }
                }
            }
            else
            {
                switch (route)
                {
                case ("sendMessage"):
                    Console.WriteLine("Receiver Offline! Message will be stored in database.");
                    break;

                case ("addFriendReq"):
                case ("cancelFriendReq"):
                case ("acceptFriendReq"):
                case ("declineFriendReq"):
                case ("removeFriend"):
                    Console.WriteLine("Receiver Offline! Data will be stored in database.");
                    break;
                }
            }
            if (route == "sendMessage")
            {
                if (obj[4].ToLower() == "false")
                {
                    await Message.StoreMessage(obj[1], obj[2], obj[0]);
                }
                Console.WriteLine("\nSender:\t\t{0}\nReceiver:\t{1}\nMessage:\t{2}\n\n", obj[1], obj[2], obj[0]);
            }
        }
Пример #13
0
        /// <summary>
        /// This function makes API call to get message
        /// </summary>
        public MessageObj.Message getMessage(string messageId)
        {
            APIRequest apiRequest = new APIRequest("messages/" + messageId);

            apiRequest.accept = "application/json";

            if (apiService.get(apiRequest))
            {
                var message = new MessageObj();
                return message.deserializeMessageObj(apiService.apiResponse.getResponseData());
            }

            throw new Exception(apiService.errorResponse);
        }
Пример #14
0
        /// <summary>
        /// This function makes API call to get message list
        /// </summary>
        public MessageObj.MessageList getMessageList(string limit, string offset)
        {
            if (String.IsNullOrEmpty(limit))
            {
                limit = "500";
            }

            if (String.IsNullOrEmpty(offset))
            {
                offset = "50";
            }

            APIRequest apiRequest = new APIRequest("messages?limit=" + limit + "&offset=" + offset);

            apiRequest.accept = "application/json";

            if (apiService.get(apiRequest))
            {
                var message = new MessageObj();
                return message.deserializeMessageListObj(apiService.apiResponse.getResponseData());
            }

            throw new Exception(apiService.errorResponse);
        }
Пример #15
0
        private void Log(MessageObj msg)
        {
            Router.Instance.SendMessage(msg);

            Debug.WriteLine(msg.Key + ": " + string.Join(",", msg.Items));
        }