示例#1
0
        /// <summary>
        /// 通过Tag推送到android设备
        /// </summary>
        /// <param name="tagList"></param>
        /// <param name="tagOp"></param>
        /// <param name="msg"></param>
        /// <returns>返回值json反序列化后的类</returns>
        public Ret PushTags(List<String> tagList, String tagOp, Message msg)
        {
            if (tagList == null || tagList.Count == 0)
            {
                throw new ArgumentNullException("tagList");
            }
            IDictionary<string, string> parameters = new Dictionary<string, string>();
            parameters.Add("message", msg.ToJson());
            parameters.Add("message_type", msg.Type.ToString());
            parameters.Add("tags_list", JsonConvert.SerializeObject(tagList));
            parameters.Add("tags_op", tagOp);
            parameters.Add("expire_time", msg.ExpireTime.ToString());
            parameters.Add("send_time", msg.SendTime);
            parameters.Add("multi_pkg", msg.MultiPkg.ToString());
            if (msg.LoopInterval > 0 && msg.LoopTimes > 0)
            {
                parameters.Add("loop_interval", msg.LoopInterval.ToString());
                parameters.Add("loop_times", msg.LoopTimes.ToString());
            }

            return CallRestful(XinGeConfig.RESTAPI_PUSHTAGS, parameters);
        }
示例#2
0
        /// <summary>
        /// 推送到 单个设备 安卓
        /// </summary>
        /// <param name="deviceToken"></param>
        /// <param name="message"></param>
        /// <returns>返回值json反序列化后的类</returns>
        public Ret PushSingleDevice(string deviceToken, Message message)
        {
            if (message == null)
            {
                throw new ArgumentNullException("message");
            }

            if (string.IsNullOrEmpty(deviceToken))
            {
                throw new ArgumentNullException("deviceToken");
            }
            IDictionary<string, string> parameters = new Dictionary<string, string>();
            parameters.Add("device_token", deviceToken);
            parameters.Add("send_time", message.SendTime);
            parameters.Add("multi_pkg", message.MultiPkg.ToString());
            parameters.Add("expire_time", message.ExpireTime.ToString());
            parameters.Add("message", message.ToJson());
            parameters.Add("message_type", message.Type.ToString());
            return CallRestful(XinGeConfig.RESTAPI_PUSHSINGLEDEVICE, parameters);
        }
示例#3
0
 /// <summary>
 /// 推送到 单个用户 Android
 /// </summary>
 /// <param name="Account"></param>
 /// <param name="msg"></param>
 /// <returns>返回值json反序列化后的类</returns>
 public Ret PushSingleAccount(string Account, Message msg)
 {
     if (msg == null)
     {
         throw new ArgumentNullException("msg");
     }
     if (string.IsNullOrEmpty(Account))
     {
         throw new ArgumentNullException("Account");
     }
     IDictionary<string, string> parameters = new Dictionary<string, string>();
     parameters.Add("account", Account);
     parameters.Add("send_time", msg.SendTime);
     parameters.Add("multi_pkg", msg.MultiPkg.ToString());
     parameters.Add("expire_time", msg.ExpireTime.ToString());
     parameters.Add("message", msg.ToJson());
     parameters.Add("message_type", msg.Type.ToString());
     return CallRestful(XinGeConfig.RESTAPI_PUSHSINGLEACCOUNT, parameters);
 }
示例#4
0
 /// <summary>
 /// 推送到所有android设备
 /// </summary>
 /// <param name="msg"></param>
 /// <returns>返回值json反序列化后的类</returns>
 public Ret PushAllDevice(Message msg)
 {
     if (msg == null)
     {
         throw new ArgumentNullException("msg");
     }
     IDictionary<string, string> parameters = new Dictionary<string, string>();
     parameters.Add("expire_time", msg.ExpireTime.ToString());
     parameters.Add("message", msg.ToJson());
     parameters.Add("message_type", msg.Type.ToString());
     parameters.Add("send_time", msg.SendTime);
     parameters.Add("multi_pkg", msg.MultiPkg.ToString());
     if (msg.LoopInterval > 0 && msg.LoopTimes > 0)
     {
         parameters.Add("loop_interval", msg.LoopInterval.ToString());
         parameters.Add("loop_times", msg.LoopTimes.ToString());
     }
     return CallRestful(XinGeConfig.RESTAPI_PUSHALLDEVICE, parameters);
 }
示例#5
0
 /// <summary>
 /// 推送消息给多个账号(Android)
 /// </summary>
 /// <param name="accountList">目标账号,最大限制100</param>
 /// <param name="msg"></param>
 /// <returns>返回值json反序列化后的类</returns>
 public Ret PushAccountList(List<String> accountList, Message msg)
 {
     if (msg == null)
     {
         throw new ArgumentNullException("msg");
     }
     if (accountList.Count == 0)
     {
         throw new ArgumentNullException("accountList");
     }
     if (accountList.Count > 100)
     {
         throw new ArgumentOutOfRangeException("accountList");
     }
     IDictionary<string, string> parameters = new Dictionary<string, string>();
     parameters.Add("account_list", JsonConvert.SerializeObject(accountList));
     parameters.Add("multi_pkg", msg.MultiPkg.ToString());
     parameters.Add("expire_time", msg.ExpireTime.ToString());
     parameters.Add("message", msg.ToJson());
     parameters.Add("message_type", msg.Type.ToString());
     return CallRestful(XinGeConfig.RESTAPI_PUSHACCOUNTLIST, parameters);
 }
示例#6
0
 /// <summary>
 /// 创建大批量推送消息
 /// </summary>
 /// <param name="msg">Android通知和透传消息</param>
 /// <returns></returns>
 public Ret CreateMultiPush(Message msg)
 {
     IDictionary<string, string> parameters = new Dictionary<string, string>();
     parameters.Add("message", msg.ToJson());
     parameters.Add("message_type", msg.Type.ToString());
     parameters.Add("expire_time", msg.ExpireTime.ToString());
     parameters.Add("multi_pkg", msg.MultiPkg.ToString());
     return CallRestful(XinGeConfig.RESTAPI_CREATEMULTIPUSH, parameters);
 }