Exemple #1
0
        public bool SendMessage(int id, DtoMessage message)
        {
            var computer = _uow.ComputerRepository.GetById(id);

            if (computer == null)
            {
                return(false);
            }
            if (computer.CertificateId == -1)
            {
                return(false);
            }
            var socket = _uow.ActiveSocketRepository.GetFirstOrDefault(x => x.ComputerId == computer.Id);

            if (socket != null)
            {
                var deviceCertEntity = _uow.CertificateRepository.GetById(computer.CertificateId);
                var deviceCert       = new X509Certificate2(deviceCertEntity.PfxBlob, new EncryptionServices().DecryptText(deviceCertEntity.Password), X509KeyStorageFlags.Exportable);
                var intercomKey      = ServiceSetting.GetSettingValue(SettingStrings.IntercomKeyEncrypted);
                var decryptedKey     = new EncryptionServices().DecryptText(intercomKey);
                var socketRequest    = new DtoSocketRequest();
                socketRequest.connectionIds.Add(socket.ConnectionId);
                socketRequest.action  = "Message";
                socketRequest.message = JsonConvert.SerializeObject(message);
                new APICall().ClientComServerApi.SendAction(socket.ComServer, "", decryptedKey, socketRequest);
            }
            return(true);
        }
Exemple #2
0
 public void SendMessage(string url, X509Certificate2 cert, DtoMessage message)
 {
     Request.Method   = Method.POST;
     Request.Resource = "toec/Push/Message";
     Request.AddJsonBody(message);
     new ApiRequest(new Uri(url)).ExecuteHMACAsync <DtoApiBoolResponse>(Request, cert);
 }
Exemple #3
0
 public void SendMessage(int id, DtoMessage message)
 {
     Request.Method   = Method.POST;
     Request.Resource = string.Format("{0}/SendMessage/{1}", Resource, id);
     Request.AddJsonBody(message);
     new ApiRequest().ExecuteAsync <DtoApiBoolResponse>(Request);
 }
Exemple #4
0
        protected void btnSend_OnClick(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(ComputerEntity.PushUrl))
            {
                EndUserMessage = "Messages Can Only Be Sent To Computers That Have Checked In.";
                return;
            }
            int timeout     = 0;
            var parseResult = Int32.TryParse(txtTimeout.Text, out timeout);

            if (!parseResult)
            {
                EndUserMessage = "Timeout Is Not Valid";
                return;
            }
            if (timeout < 0)
            {
                EndUserMessage = "Timeout Is Not Valid";
                return;
            }

            var message = new DtoMessage();

            message.Timeout = timeout;
            message.Title   = txtTitle.Text;
            message.Message = txtMessage.Text;
            var result = Call.ComputerApi.SendMessage(ComputerEntity.Id, message);

            EndUserMessage = result ? "Successfully Sent Message." : "Could Not Send Message.";
        }
Exemple #5
0
        public async Task <string> SaveMessageObject <T>(T msg) where T : class
        {
            var db         = GetMongoDatabase();
            var collection = db.GetCollection <DtoMessage>("Messages");
            var dto        = new DtoMessage {
                Object = msg
            };
            await collection.InsertOneAsync(dto);

            return(dto.Id.ToString());
        }
Exemple #6
0
        public bool SendMessage(int id, DtoMessage message)
        {
            var computerService = new ServiceComputer();

            foreach (var computer in GetGroupMembers(id))
            {
                computerService.SendMessage(computer.Id, message);
            }

            return(true);
        }
Exemple #7
0
        public bool SendMessage(int id, DtoMessage message)
        {
            Request.Method   = Method.POST;
            Request.Resource = string.Format("{0}/SendMessage/{1}", Resource, id);
            Request.AddJsonBody(message);
            var responseData = new ApiRequest().Execute <DtoApiBoolResponse>(Request);

            if (responseData != null)
            {
                return(responseData.Value);
            }
            return(false);
        }
Exemple #8
0
        public DtoBoolResponse Message(DtoMessage message)
        {
            var activeTrayPorts = new ServiceSetting().GetSetting("active_login_ports").Value;

            foreach (var port in activeTrayPorts.Split(','))
            {
                var localPort = port;
                var t         = new Thread(() => RunMessage(message.Message, message.Title, localPort, message.Timeout));
                t.Start();
            }
            return(new DtoBoolResponse {
                Value = true
            });
        }
Exemple #9
0
        public JsonResult UpdateTimeSheetRecotds(JsTimeSheetRecordModel[] records)
        {
            var r = records.Select(record => new DtoTimeSheetRecord
            {
                IdTimeSheetRecord = record.IdTimeSheetRecord, JobTimeCount = record.JobTimeCount,
                NightTimeCount    = (record.NightTimeCount > 0)? record.NightTimeCount.ToString() : "",
                DayStays          = new DtoDayStatus {
                    IdDayStatus = record.IdDayStatus
                }
            }).ToList();
            var message = new DtoMessage {
                Result = Client.EditTimeSheetRecords(r.ToArray())
            };

            if (!message.Result)
            {
                message.Message = "При сохранении изменений возникли проблемы. Изменения не сохранены.";
            }
            return(Json(message, JsonRequestBehavior.AllowGet));
        }
Exemple #10
0
        public DtoApiBoolResponse SendMessage(int id, DtoMessage message)
        {
            var response = new DtoApiBoolResponse()
            {
                Value = _computerServices.SendMessage(id, message)
            };
            var computer = _computerServices.GetComputer(id);

            if (computer != null)
            {
                var auditLog = new EntityAuditLog();
                auditLog.ObjectType = "Computer";
                auditLog.ObjectId   = id;
                auditLog.ObjectName = computer.Name;
                auditLog.ObjectJson = JsonConvert.SerializeObject(message);
                auditLog.UserId     = _userId;
                auditLog.AuditType  = EnumAuditEntry.AuditType.Message;
                _auditLogService.AddAuditLog(auditLog);
            }
            return(response);
        }
Exemple #11
0
        protected void btnSend_OnClick(object sender, EventArgs e)
        {
            int timeout     = 0;
            var parseResult = Int32.TryParse(txtTimeout.Text, out timeout);

            if (!parseResult)
            {
                EndUserMessage = "Timeout Is Not Valid";
                return;
            }
            if (timeout < 0)
            {
                EndUserMessage = "Timeout Is Not Valid";
                return;
            }

            var message = new DtoMessage();

            message.Timeout = timeout;
            message.Title   = txtTitle.Text;
            message.Message = txtMessage.Text;
            Call.GroupApi.SendMessage(GroupEntity.Id, message);
            EndUserMessage = "Successfully Sent Message Request";
        }