コード例 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="platform">平台类型</param>
        /// <param name="content">内容</param>
        /// <param name="msgEnum">消息类型</param>
        /// <param name="msgType">消息内容类型</param>
        /// <param name="names">通知人名</param>
        public static void Notify(NotifyPlatformEnum platform, NotifyMsgEnum msgEnum, string content, NotifyMsgTypeEnum msgType, string[] names)
        {
            //#if DEBUG
            //            return;
            //#else
            //#endif
            var configs = Configs.Where(x => !x.IsChat && x.Platform == platform);

            foreach (var config in configs)
            {
                switch (config.Platform)
                {
                case NotifyPlatformEnum.DingTalk:
                    NotifyDingTalk(config, msgEnum, content, msgType, names); break;

                case NotifyPlatformEnum.WorkWeiXin:
                    NotifyWeiXin(config, msgEnum, content, msgType, names); break;

                default: break;
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// 消息通知
        /// </summary>
        /// <summary>
        ///
        /// </summary>
        /// <param name="platform">平台类型</param>
        /// <param name="notifyType">群类别</param>
        /// <param name="msgEnum">消息类型</param>
        /// <param name="content">内容</param>
        /// <param name="msgType">消息内容类型</param>
        /// <param name="atMobiles">通知人手机</param>
        /// <param name="isAtAll">是否@所有人</param>
        public static void NotifyChat(NotifyPlatformEnum platform, NotifyTypeEnum notifyType, NotifyMsgEnum msgEnum,
                                      string content, NotifyMsgTypeEnum msgType, string[] atMobiles = null, bool isAtAll = false)
        {
#if !DEBUG
            var localIp = "?";
            var host    = Dns.GetHostEntry(Dns.GetHostName());
            foreach (var ip in host.AddressList)
            {
                if (ip.AddressFamily.ToString() == "InterNetwork")
                {
                    localIp = ip.ToString();
                }
            }

            if (localIp == "192.168.1.184")
            {
                return;
            }
#else
            //notifyType = NotifyTypeEnum.Test;
#endif
            var groups = Configs.Where(x => x.IsChat && x.Type == notifyType && x.Platform == platform);
            foreach (var group in groups)
            {
                switch (group.Platform)
                {
                case NotifyPlatformEnum.DingTalk:
                    RobotNotifyDingTalkChat(group, msgEnum, content, msgType, atMobiles, isAtAll); break;

                case NotifyPlatformEnum.WorkWeiXin:
                    RobotNotifyWeiXinChat(group, msgEnum, content, msgType, atMobiles, isAtAll); break;

                default: break;
                }
            }
        }