Ejemplo n.º 1
0
        /// <summary>
        /// 发送消息
        /// </summary>
        /// <param name="o"></param>
        private void SendMassMsg()
        {
            //msg.ctt = new AntSdkMassMsgCtt();
            //msg.ctt.messageId = PublicTalkMothed.timeStampAndRandom();
            //msg.ctt.sendUserId = AntSdkService.AntSdkCurrentUserInfo.userId;
            //msg.ctt.targetId = string.Join(",", ContactUsers.Select(c => c.userId).ToArray());
            //msg.ctt.companyCode = GlobalVariable.CompanyCode;
            //msg.ctt.content = MsgContent;
            //msg.ctt.os = (int)GlobalVariable.OSType.PC;
            //msg.ctt.sessionId = DataConverter.GetSessionID(AntSdkService.AntSdkCurrentUserInfo.userId, GlobalVariable.MassAssistantId);
            //msg.ctt.chatIndex = null;
            //msg.ctt.sendTime = null;
            MassMsg msg = new MassMsg();

            msg.mtp = (int)GlobalVariable.MsgType.MassMsg;
            MassMsgCtt.chatIndex = null;
            MassMsgCtt.sendTime  = null;
            string errMsg = "";
            //TODO:AntSdk_Modify
            //msg.ctt = this.MassMsgCtt;
            //if (MqttService.Instance.Publish(GlobalVariable.TopicClass.MessageSend, msg, ref errMsg, NullValueHandling.Ignore))
            //{
            //    this.SendFailureImageVisibility = Visibility.Collapsed;
            //    this.SendingAnimationVisible = Visibility.Visible;
            //    StartWaitingTimer();
            //    SendMassMsgEvent?.Invoke(msg.ctt);
            //}
            //else
            //{
            //    MessageBoxWindow.Show("消息发送失败!" + errMsg, GlobalVariable.WarnOrSuccess.Warn);
            //}
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 发送消息
        /// </summary>
        /// <param name="o"></param>
        private void SendMassMsg(object o)
        {
            if (ContactUsers == null || ContactUsers.Count == 0)
            {
                MessageBoxWindow.Show("请先选择消息接收人!", GlobalVariable.WarnOrSuccess.Warn);
                return;
            }
            else if (string.IsNullOrWhiteSpace(MsgContent))
            {
                MessageBoxWindow.Show("消息内容不能为空!", GlobalVariable.WarnOrSuccess.Warn);
                return;
            }
            else if (MsgContent.Length > 500)
            {
                MessageBoxWindow.Show("消息内容不能超过500个字符!", GlobalVariable.WarnOrSuccess.Warn);
                return;
            }
            MassMsg msg = new MassMsg();

            msg.mtp = (int)GlobalVariable.MsgType.MassMsg;
            //TODO:AntSdk_Modify
            AntSdkMassMsgCtt ctt = new AntSdkMassMsgCtt();

            //ctt.messageId = PublicTalkMothed.timeStampAndRandom();
            ctt.sendUserId = AntSdkService.AntSdkCurrentUserInfo.userId;
            if (ContactUsers != null && ContactUsers.Count > 0)
            {
                ctt.targetId = string.Join(",", ContactUsers.Where(m => m.userId != AntSdkService.AntSdkCurrentUserInfo.userId).Select(c => c.userId).ToArray());
            }
            ctt.companyCode = GlobalVariable.CompanyCode;
            ctt.content     = MsgContent;
            ctt.os          = (int)GlobalVariable.OSType.PC;
            ctt.sessionId   = DataConverter.GetSessionID(AntSdkService.AntSdkCurrentUserInfo.userId, GlobalVariable.MassAssistantId);
            ctt.chatIndex   = null;
            ctt.sendTime    = null;
            string errMsg = "";

            //DONE:AntSdk_Modify
            AntSdkChatMsg.MultiSend massMsg = new AntSdkChatMsg.MultiSend();
            massMsg.sendUserId = AntSdkService.AntSdkCurrentUserInfo.userId;
            if (ContactUsers != null && ContactUsers.Count > 0)
            {
                massMsg.targetId = string.Join(",", ContactUsers.Where(m => m.userId != AntSdkService.AntSdkCurrentUserInfo.userId).Select(c => c.userId).ToArray());
            }
            massMsg.content   = MsgContent;
            massMsg.chatType  = (int)AntSdkchatType.Point;
            massMsg.messageId = PublicTalkMothed.timeStampAndRandom();
            massMsg.sessionId = DataConverter.GetSessionID(AntSdkService.AntSdkCurrentUserInfo.userId, GlobalVariable.MassAssistantId);
            var isResult = AntSdkService.SdkPublishChatMsg(massMsg, ref errMsg);

            // AntSdkMassMsgCtt
            if (isResult)
            {
                ctt.messageId = massMsg.messageId;
                LogHelper.WriteWarn("---------------------------消息助手群发消息已发送---------------------");
                SendMassMsgEvent?.Invoke(ctt);
                (o as System.Windows.Window)?.Close();
            }
            else
            {
                MessageBoxWindow.Show("消息发送失败!" + errMsg, GlobalVariable.WarnOrSuccess.Warn);
            }
        }