예제 #1
0
        public void Simple()
        {
            var service = new PushService
            {
                RequestBuilder = ServerRequestBuilder.Instance
            };
            var notification = new PushNotificationRequest
            {
                Tags = new List <string> {
                    "MyTag"
                },
                ExcludeTokens = new List <string> {
                    "TokenToExclude"
                },
                DeviceTokens = new List <string> {
                    "AppleDeviceId"
                },
                Aliases = new List <string> {
                    "MyAlias"
                },
                Payload = new PushPayload
                {
                    Alert = "Alert 2",
                    Badge = Badge.SetTo(2),
                    Sound = "Sound1"
                }
            };

            service.Execute(notification, response => Debug.WriteLine("Success"), ExceptionHandler.Handle);
        }
예제 #2
0
        public void Simple()
        {
            var service = new PushService
            {
                RequestBuilder = RequestBuilderHelper.Build()
            };
            var pushNotification = new PushNotificationRequest
            {
                DeviceTokens = new List <string>
                {
                    RemoteSettings.AppleDeviceId
                },
                Payload = new PushPayload
                {
                    Alert = "Alert"
                },
                CustomData = new Dictionary <string, string>
                {
                    { "Key", "Value" }
                }
            };

            var asyncTestHelper = new AsyncTestHelper();

            service.Execute(pushNotification, response => asyncTestHelper.Callback(null), asyncTestHelper.HandleException);
            asyncTestHelper.Wait();
        }
예제 #3
0
        public void ToTag()
        {
            var service = new PushService
            {
                RequestBuilder = RequestBuilderHelper.Build()
            };
            var pushNotification = new PushNotificationRequest
            {
                Tags = new List <string> {
                    "africa"
                },
                Payload = new PushPayload
                {
                    Alert = "Alert 2"
                }
            };
            var asyncTestHelper = new AsyncTestHelper();

            service.Execute(pushNotification, x => asyncTestHelper.Callback(null), asyncTestHelper.HandleException);
            asyncTestHelper.Wait();
        }
예제 #4
0
        public void Simple()
        {
            var service = new PushService
            {
                RequestBuilder = RequestBuilderHelper.Build()
            };
            var pushNotification = new PushNotificationRequest
            {
                PushIds = new List <string> {
                    RemoteSettings.AndroidPushId
                },
                Payload = new PushPayload
                {
                    Alert = "Alert 2"
                }
            };
            var asyncTestHelper = new AsyncTestHelper();

            service.Execute(pushNotification, x => asyncTestHelper.Callback(null), asyncTestHelper.HandleException);
            asyncTestHelper.Wait();
        }
예제 #5
0
        public void Simple()
        {
            var service = new PushService
            {
                RequestBuilder = ServerRequestBuilder.Instance
            };
            var notification = new PushNotificationRequest
            {
                Tags = new List <string> {
                    "MyTag"
                },
                PushIds = new List <string> {
                    "AndroidPushId"
                },
                Payload = new PushPayload
                {
                    Alert = "Alert 2"
                }
            };

            service.Execute(notification, response => Debug.WriteLine("Success"), ExceptionHandler.Handle);
        }
예제 #6
0
        public void ToAlias()
        {
            var service = new PushService
            {
                RequestBuilder = RequestBuilderHelper.Build()
            };

            var random           = new Random();
            var pushNotification = new PushNotificationRequest
            {
                Aliases = new List <string>(new string[] { "1gzod" }),
                Payload = new PushPayload
                {
                    Badge = random.Next(100),
                    Alert = "What's up iPhone",
                }
            };

            var asyncTestHelper = new AsyncTestHelper();

            service.Execute(pushNotification, response => asyncTestHelper.Callback(null), asyncTestHelper.HandleException);
            asyncTestHelper.Wait();
        }
    public void Simple()
    {
        var service = new PushService
        {
            RequestBuilder = RequestBuilderHelper.Build()
        };
        var request = new PushNotificationRequest
        {
            DeviceTokens = new List <string>
            {
                "BadToken"
            },
            Payload = new PushPayload
            {
                Alert = "Alert"
            },
        };

        Exception exception = null;

        try
        {
            var asyncTestHelper = new AsyncTestHelper();
            service.Execute(request, respone => asyncTestHelper.Callback(null), asyncTestHelper.HandleException);
            asyncTestHelper.Wait();
        }
        catch (Exception e)
        {
            exception = e;
        }

        var remoteException = exception as RemoteException;

        Assert.IsNotNull(remoteException);
        Assert.AreEqual("{\"error_code\": 40001, \"details\": {\"device_tokens.0.device_token\": [\"device_token contains an invalid device token: BADTOKEN\"]}, \"error\": \"Data validation error\"}", remoteException.Message);
    }