private String prase(MessageParams message, MsgTypeEnum msgType)
 {
     StringBuilder sb = new StringBuilder();
     sb.Append(message.SendNo).Append((int)message.ReceiverType).Append(message.ReceiverValue).Append(message.MasterSecret);
     String verificationCode = sb.ToString();
     //Console.WriteLine(verificationCode);
     verificationCode = Md5.getMD5Hash(verificationCode);
     sb.Clear();
     message.setMsgContent();
     sb.Append("sendno=").Append(message.SendNo).Append("&app_key=").Append(message.AppKey).Append("&receiver_type=").Append((int)message.ReceiverType)
         .Append("&receiver_value=").Append(message.ReceiverValue).Append("&verification_code=").Append(verificationCode)
         .Append("&msg_type=").Append((int)msgType).Append("&msg_content=").Append(message.MsgContent).Append("&platform=").Append(message.getPlatform())
         .Append("&apns_production=").Append(message.ApnsProduction);
     if(message.TimeToLive >= 0)
     {
         sb.Append("&time_to_live=").Append(message.TimeToLive);
     }
     if(message.OverrideMsgId != null)
     {
         sb.Append("&override_msg_id=").Append(message.OverrideMsgId);
     }
     //Console.WriteLine(sb.ToString());
     Debug.Print(sb.ToString());
     return sb.ToString();
 }
        private MessageResult sendPush(MessageParams msgParams, MsgTypeEnum msgType)
        {
            String url = enableSSL ? HOST_NAME_SSL : HOST_NAME;
            url += PUSH_PATH;
            String pamrams = prase(msgParams, msgType);
            //Console.WriteLine("begin post");
            ResponseResult result = sendPost(url, null, pamrams);
            //Console.WriteLine("end post");

            MessageResult messResult = new MessageResult();
            if (result.responseCode == System.Net.HttpStatusCode.OK)
            {
                //Console.WriteLine("responseContent===" + result.responseContent);
                messResult = (MessageResult)JsonTool.JsonToObject(result.responseContent, messResult);
                String content = result.responseContent;
            }
            messResult.ResponseResult = result;

            return messResult;
        }
 private MessageResult sendMessage(MessageParams msgParams, MsgTypeEnum msgType)
 {
     msgParams.ApnsProduction = this.apnsProduction ? 1 : 0;
     msgParams.AppKey = this.appKey;
     msgParams.MasterSecret = this.masterSecret;
     if (msgParams.TimeToLive == MessageParams.NO_TIME_TO_LIVE)
     {
         msgParams.TimeToLive = this.timeToLive;
     }
     if (this.devices != null)
     {
         foreach (DeviceEnum device in this.devices)
         {
             msgParams.addPlatform(device);
         }
     }
     return sendPush(msgParams, msgType);
 }