Esempio n. 1
0
        public PushCrewCampaignRequest getRequestData(CampaignDocument campaign)
        {
            PushCrewCampaignRequest request = FillSendinBlueRequestFromCosmos();

            request.Text = campaign.Text;
            request.Name = campaign.Name;
            return(request);
        }
Esempio n. 2
0
        public string SendCampaign(PushCrewCampaignRequest request)
        {
            string Id = string.Empty;

            try
            {
                //todo
                PushcrewModel.MessageRequest _message = new PushcrewModel.MessageRequest();

                _message.title     = request.Name;
                _message.message   = request.Text;
                _message.url       = request.Url;
                _message.image_url = request.Image;

                string newMessage = "title=" + _message.title + "&";
                newMessage += "message=" + _message.message + "&";
                newMessage += "url=" + _message.url + "&";
                newMessage += "image_url=" + _message.image_url + "";

                try
                {
                    using (WebClient wc = new WebClient())
                    {
                        wc.Headers[HttpRequestHeader.ContentType]   = "application/x-www-form-urlencoded";
                        wc.Headers[HttpRequestHeader.Authorization] = request.ApiKey;
                        byte[] bret       = wc.UploadData("https://pushcrew.com/api/v1/send/all/", "POST", System.Text.Encoding.UTF8.GetBytes(newMessage));
                        string HtmlResult = System.Text.Encoding.UTF8.GetString(bret);
                        string key        = "";

                        if (HtmlResult.Length > 0)
                        {
                            dynamic dyn = JsonConvert.DeserializeObject(HtmlResult);
                            key = dyn.request_id;
                            return(key);
                        }
                        else
                        {
                            return(null);
                        }
                    }
                }
                catch (Exception ex)
                {
                    var messageException = telemetria.MakeMessageException(ex, System.Reflection.MethodBase.GetCurrentMethod().Name);
                    telemetria.Critical(messageException);
                }
            }
            catch (Exception e)
            {
            }
            return(Id);
        }
Esempio n. 3
0
        public PushCrewCampaignRequest FillSendinBlueRequestFromCosmos()
        {
            PushCrewCampaignRequest request = new PushCrewCampaignRequest();

            //todo
            try
            {
                if (this.settings.Count > 0)
                {
                    foreach (var item in settings)
                    {
                        switch (item.Name)
                        {
                        case "pushApiToken":
                        {
                            request.ApiKey = item.Name.Equals("pushApiToken") ? item.Value : string.Empty;
                        }
                        break;
                        }
                    }
                }

                if (this.campaignSettings.Count > 0)
                {
                    foreach (var item in settings)
                    {
                        switch (item.Name)
                        {
                        case "pushUrl":
                        {
                            request.Url = item.Name.Equals("pushUrl") ? item.Value : string.Empty;
                        }
                        break;

                        case "pushImage":
                        {
                            request.Image = item.Name.Equals("pushImage") ? item.Value : string.Empty;
                        }
                        break;
                        }
                    }
                }
            }
            catch (Exception e)
            {
                string exceptionMessage = telemetria.MakeMessageException(e, System.Reflection.MethodBase.GetCurrentMethod().Name);
                telemetria.Critical(exceptionMessage);
            }
            return(request);
        }