信鸽推送 .NET  服务端 SDK rest api 调用库-介绍

   该版本是基于信鸽推送v2版本的时候封装的,先拿出来与大家分享,封装还还凑合,不依赖其他http调用件,唯一依赖json序列化dll。

网上有一些封装的调用库,但是都不是自己喜欢的调用方式和封装风格,官方更没有封装.NET的版本,只有python、java、php版本,您让.NET情何以堪啊,

故咱们也来封装一个.

温馨提示:该版本是2014-8月份左右封装的,现在信鸽加了很多功能,但是存在的功能是不影响的,只需要下载源码,实体类加些参数加几个调用方法既可。

 

调用代码示例

【推送所有设备】

 QQXGProvider qqxg = new QQXGProvider();
            XGPushAllDeviceParam xgp = new XGPushAllDeviceParam();
            xgp.Timestamp = null; //1299865775;
            xgp.Valid_time = 600; //600;
            xgp.Sign = null;
            //实际key请使用实际的,下面仅演示作用
            //============测试key1==============
            xgp.Access_id = 2100025233;
            //xgp.Access_Key = "ARQ4CB14Q92X";
            xgp.Secret_Key = "6ae193c85570ad1cc8fc9540560093b1";
            //============测试key2==============
            //xgp.Access_id = 2100025346;
            //xgp.Access_Key = "AUP1I5W741WJ";
            //xgp.Secret_Key = "f2391810bc98c0d7435ec7c96b8f524f";
            xgp.Message_type = 1;
            xgp.Expire_time = 3600;
            xgp.Message = new NotifyMessage()
            {
                Custom_content = new  SerializableDictionary<string,string>(){
                  {"type","123"},{"type1","456"}
                },
                //Accept_time = new System.Collections.Generic.List<AcceptTime>(){
                //  new AcceptTime(){ Start=new XGTime(){ Hour="18", Min="02"}, End=new XGTime(){ Hour="18", Min="30"}}
                //},
                Clearable = 1,
                Title = "XGTestAllDevice-50%",
                Content = "有中文10%,人们有1%以及,$abcdef", //中文测试
                Vibrate = 1,
                Ring = 1,
                Action = new NotifyMessageAction()
                {
                    Action_type = 2,
                    Browser = new NotifyMessageAction_Browser()
                    {
                        Url = "http://baidu.com",
                        Confirm = 0
                    },
                    Intent = "http://baidu.com",
                    Activity = "XGPushDemo"
                }
            };

            XGResult<XGPushResult> a = qqxg.PushAllDevices(xgp);

 

【单个 Device_token 的手机设备】

QQXGProvider qqxg = new QQXGProvider();
            XGPushSingleDeviceParam xgp = new XGPushSingleDeviceParam();
            xgp.Timestamp = null;
            xgp.Valid_time = 600; //600;
            xgp.Sign = null;
            //============测试DEMO==============
            xgp.Access_id = 2100025233;
            //xgp.Access_Key = "ARQ4CB14Q92X";
            xgp.Secret_Key = "6ae193c85570ad1cc8fc9540560093b1";
            //============测试DEMO==============
            //xgp.Access_id = 2100025346;
            //xgp.Access_Key = "AUP1I5W741WJ";
            //xgp.Secret_Key = "f2391810bc98c0d7435ec7c96b8f524f";
            xgp.Message_type = 1;
            xgp.Message = new NotifyMessage()
            {
                Title = "XGTestSingleDevice",
                Content = "XGTestSingleDevice",
                Vibrate = 1
            };
            xgp.Device_token = "ef8d1c5b866652d14e62bbee2aac3b28b7ed2bf9";
            //POSTopenapi.xg.qq.com/v2/push/all_deviceaccess_id=2100025233timestamp=1399859926valid_time=6006ae193c85570ad1cc8fc9540560093b1
            XGResult<string> a = qqxg.PushSingleDevice(xgp);
单个Device_token设备

相关文章: