Beispiel #1
0
        /// <summary>
        /// You can create or update geodata with sending a push notification to all users who is located in your radius.
        /// </summary>
        /// <param name="createGeoDataWithPushRequest">The create geo data with push request.</param>
        /// <returns>Success HTTP Status Code 201</returns>
        public async Task <HttpResponse <GeoDataResponse> > CreatePushGeoDataAsync(CreateGeoDataWithPushRequest createGeoDataWithPushRequest)
        {
            var headers = RequestHeadersBuilder.GetDefaultHeaders().GetHeaderWithQbToken(this.quickbloxClient.Token);
            var createGeodataResponse = await HttpService.PostAsync <GeoDataResponse, CreateGeoDataWithPushRequest>(this.quickbloxClient.ApiEndPoint,
                                                                                                                    QuickbloxMethods.CreateGeoDataMethod,
                                                                                                                    createGeoDataWithPushRequest,
                                                                                                                    headers);

            return(createGeodataResponse);
        }
        public async Task CreateGeoDataWithPushDataSuccessTest()
        {
            var geoData = new CreateGeoDataWithPushRequest();

            geoData.GeoData = new PushLocation()
            {
                Latitude        = 49.9935,
                Longtitude      = 36.23038,
                Status          = "Hello world",
                PushEnvironment = PushEnvironment.development,
                Radius          = 150,
                PushMessage     = Convert.ToBase64String(Encoding.UTF8.GetBytes("Test push method"))
            };

            var response = await this.client.LocationClient.CreatePushGeoDataAsync(geoData);

            Assert.AreEqual(response.StatusCode, HttpStatusCode.Created);
            Assert.IsNotNull(response.Result);
        }