Exemplo n.º 1
0
        public async Task <EventResponseData> AddEventAsync(EventRequestData request)
        {
            var @event = _eventRepository.Add(new Entities.Event
            {
                Name = request.Name,
                Date = request.Date
            });

            await _unitOfWork.CommitAsync();

            return(new EventResponseData {
                Id = @event.Id
            });
        }
Exemplo n.º 2
0
        public async Task <EventsResponse> CreateFacebookEvent(Contact contact, InvoiceItem invoiceItem)
        {
            var token  = _configuration.GetValue <string>("Token");
            var client = _httpClientFactory.CreateClient();
            var url    = $"{baseUrl}{apiVersion}/{pixelId}/events?access_token={token}";
            var data   = new EventRequestData
            {
                Data = new List <Event>
                {
                    new Event
                    {
                        EventName = "Purchase",
                        EventTime = ConvertToUnixTimestamp(DateTime.Now),
                        UserData  = new UserData {
                            Em      = CreateHash(contact.Email),
                            Ph      = CreateHash(contact.MobilePhone),
                            Db      = CreateHash(contact.BirthDay.HasValue ? contact.BirthDay.Value.ToString("yyyyMMdd") : null),
                            Ln      = CreateHash(contact.LastName),
                            Fn      = CreateHash(contact.FirstName),
                            Ct      = CreateHash(contact.City),
                            Zp      = CreateHash(contact.ZipCode),
                            Country = CreateHash(contact.Country),
                        },
                        CustomData = new CustomData
                        {
                            ContentName = invoiceItem.ArticleName,
                            ContentIds  = new List <string> {
                                invoiceItem.Sku
                            },
                            Currency = invoiceItem.LocalCurrency,
                            Value    = invoiceItem.NetPrice
                        }
                    }
                }
            };

            var serilizedData = JsonConvert.SerializeObject(data, new JsonSerializerSettings
            {
                ContractResolver = _contractResolver,
                Formatting       = Formatting.Indented
            });

            var response = await client.PostAsync(url, new StringContent(serilizedData, Encoding.UTF8, "application/json"));

            response.EnsureSuccessStatusCode();
            var eventData = JsonConvert.DeserializeObject <EventsResponse>(await response.Content.ReadAsStringAsync().ConfigureAwait(false));

            return(eventData);
        }
Exemplo n.º 3
0
 public Task <List <EventResponseData> > GetAllEventsAsync(EventRequestData request)
 {
     throw new NotImplementedException();
 }