Пример #1
0
        public bool SendOne(string msg, string phone, out SmsResponseMsg srm)
        {
            List <SmsPhoneMsg> pms = new List <SmsPhoneMsg>();

            pms.Add(new SmsPhoneMsg()
            {
                Phone = phone, Content = msg
            });
            return(Sends(pms, Config.UserName, Config.Pwd, out srm, false));
        }
Пример #2
0
        public bool Sends(List <SmsPhoneMsg> pms, string userName, string pwd, out SmsResponseMsg srm, bool isMass = false)
        {
            SmsBase sb = new SmsBase();

            Config.UserName = userName;
            Config.Pwd      = pwd;
            SmsResponseMsg rm = new SmsResponseMsg();

            if (!sb.Init())
            {
                rm.Result  = 0;
                rm.Message = "初始化失败";
                srm        = rm;
                return(false);
            }
            return(sb.Send(pms, out srm, isMass));
        }
Пример #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="pms"></param>
        /// <param name="rm"></param>
        /// <returns>是否发送成功</returns>
        public bool Send(List <SmsPhoneMsg> pms, out SmsResponseMsg rm, bool isMass)
        {
            #region
            try
            {
                DateTime now      = DateTime.Now;
                Guid     PostGuid = Guid.Empty;
                PostGuid = Guid.NewGuid();
                MTPack pack = new MTPack();

                MessageData[] Messagedatas = null;
                if (isMass)
                {
                    //群发
                    if (pms.Count > 0)
                    {
                        Messagedatas = new MessageData[pms.Count];
                        for (int i = 0; i < pms.Count; i++)
                        {
                            Messagedatas[i]             = new MessageData();
                            Messagedatas[i].Content     = pms[i].Content;
                            Messagedatas[i].Phone       = pms[i].Phone.Trim();
                            Messagedatas[i].vipFlag     = false;
                            Messagedatas[i].customMsgID = Guid.NewGuid().ToString();
                        }
                        pack.sendType = (int)PostMsg_Net.SendType.MASS;//具体是哪种发送模式具体分析下
                    }
                }
                else
                {
                    //组发
                    Messagedatas = new MessageData[pms.Count];
                    for (int i = 0; i < pms.Count; i++)
                    {
                        Messagedatas[i]             = new MessageData();
                        Messagedatas[i].Content     = pms[i].Content.Trim();
                        Messagedatas[i].Phone       = pms[i].Phone.Trim();
                        Messagedatas[i].vipFlag     = false;
                        Messagedatas[i].customMsgID = Guid.NewGuid().ToString();
                    }
                    pack.sendType = (int)PostMsg_Net.SendType.GROUP;//具体是哪种发送模式具体分析下
                }
                pack.msgs    = Messagedatas;
                pack.msgType = (int)PostMsg_Net.MsgType.SMS;
                pack.batchID = PostGuid;

                #region 可选设置
                //DateTime ttt;
                //bool flag1, flag2;
                //可选设置
                //if (!string.IsNullOrEmpty(txtSubid.Text.Trim()))
                //    pack.customNum = txtSubid.Text.Trim();//扩展号
                //if (!string.IsNullOrEmpty(textBox4.Text))
                //{
                //    flag1 = DateTime.TryParse(textBox4.Text, out ttt);
                //    if (!flag1)
                //    {
                //        txtResult.AppendText("发送批次号:00000000-0000-0000-0000-000000000000\r\n返回处理结果状态码:-2\r\n结果信息:参数无效");
                //        return;
                //    }
                //}
                //if (!string.IsNullOrEmpty(textBox8.Text))
                //{
                //    flag2 = DateTime.TryParse(textBox8.Text, out ttt);
                //    if (!flag2)
                //    {
                //        txtResult.AppendText("发送批次号:00000000-0000-0000-0000-000000000000\r\n返回处理结果状态码:-2\r\n结果信息:参数无效");
                //        return;
                //    }
                //}
                //if (!string.IsNullOrEmpty(textBox4.Text))
                //    pack.scheduleTime = DateAndTicks.GetTicksFromDate(DateTime.Parse(textBox4.Text));
                //if (!string.IsNullOrEmpty(textBox8.Text))
                //    pack.deadline = DateAndTicks.GetTicksFromDate(DateTime.Parse(textBox8.Text));
                //if (!string.IsNullOrEmpty(textBox12.Text))
                //    pack.batchName = textBox12.Text;
                //if (!string.IsNullOrEmpty(comboBox1.Text))
                //{
                //    pack.distinctFlag = comboBox1.Text == "是" ? true : false;
                //}
                #endregion


                //业务类型(0-20之间)
                pack.bizType = 0;
                GsmsResponse getresponse = postMsg.Post(postMsg.GetAccount(), pack);
                TimeSpan     t           = DateTime.Now.Subtract(now);

                int tt = Convert.ToInt32(t.Seconds);

                rm = new SmsResponseMsg();
                if (getresponse != null)
                {
                    rm.Uuid           = getresponse.uuid;
                    rm.Result         = getresponse.result;
                    rm.Message        = getresponse.message;
                    rm.Attributes     = getresponse.attributes;
                    rm.UseMillisecond = tt;
                    struuid           = getresponse.uuid.ToString();
                    if (getresponse.result != (int)Result.SUCCESS)
                    {
                        return(false);
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                rm         = new SmsResponseMsg();
                rm.Result  = -1;
                rm.Message = ex.Message;
                return(false);
            }
            #endregion
        }
Пример #4
0
 public bool Sends(List <SmsPhoneMsg> pms, out SmsResponseMsg srm, bool isMass = false)
 {
     return(Sends(pms, Config.UserName, Config.Pwd, out srm, isMass));
 }