public IActionResult webhook(ZaloMessage obj) { var tt = Request.QueryString.Value; try { // add remove like image //var p = JsonConvert.SerializeObject(obj); // p = p.Replace(_appSettings.Value.BaseUrls.Api, ""); // obj = JsonConvert.DeserializeObject<FacebookWebhookData>(p); _logService.Create(new Log { name = "zalo ", message = "zalo " + tt, details = JsonConvert.SerializeObject(obj) }); // _facebookService.SaveWebhookData("", "", obj, true); _zaloService.SaveWebhookData(obj, true); return(Ok()); } catch (Exception ex) { _logService.Create(new Log { name = "Webhook zalo error calledback", message = ex.Message + tt, details = JsonConvert.SerializeObject(ex.StackTrace) }); throw ex; } }
public ApiResponse GetCustomerTickets(string business_id, string customer_id, string access_token) { ApiResponse response = new ApiResponse(); IEnumerable <Ticket> resultData = null; try { resultData = _ticketService.GetCustomerTickets(business_id, customer_id, new Paging { Limit = 100 }); response.ok = resultData != null; response.data = resultData; } catch (Exception ex) { _logService.Create(new Log { message = ex.Message, category = "Ticket", link = $"{Request.HttpContext.Request.Scheme}://{Request.HttpContext.Request.Host}{Request.HttpContext.Request.Path}{Request.HttpContext.Request.QueryString}", details = JsonConvert.SerializeObject(ex.StackTrace), name = string.Format("Get tickets by business_id: {0}", business_id) }); } return(response); }
public async Task <ApiResponse> GetReferrals(string business_id, string thread_id, string access_token) { ApiResponse response = new ApiResponse(); try { var resultData = _referralService.GetReferrals(business_id, thread_id, new Paging { Limit = 50 }).Result.Select(r => new ReferralModel(r)); response.ok = true; response.data = resultData; } catch (Exception ex) { _logService.Create(new Log { message = ex.Message, category = "Referral", link = $"{Request.HttpContext.Request.Scheme}://{Request.HttpContext.Request.Host}{Request.HttpContext.Request.Path}{Request.HttpContext.Request.QueryString}", details = JsonConvert.SerializeObject(ex.StackTrace), name = string.Format("Get referrals by business_id: {0}", business_id) }); } return(response); }
public IActionResult WebhookPost([FromBody] FacebookWebhookData obj) { try { //add remove like image //var p = JsonConvert.SerializeObject(obj); //p = p.Replace(_appSettings.BaseUrls.Api, ""); //obj = JsonConvert.DeserializeObject<FacebookWebhookData>(p); _logService.Create(new Log { name = "Webhook2", message = "Webhook3", details = JsonConvert.SerializeObject(obj) }); _facebookService.SaveWebhookData("", "", obj, true); return(Ok()); } catch (Exception ex) { if (obj.@object == "page") { DateTime now = DateTime.UtcNow; Node node = new Node { type = "facebook.webhook", created_time = now, timestamp = Core.Helpers.CommonHelper.DateTimeToUnixTimestamp(now), data = JsonConvert.SerializeObject(obj) }; _nodeService.CreateNode(node); } _logService.CreateAsync(new Log { name = "Webhook calledback", message = ex.Message, details = JsonConvert.SerializeObject(ex.StackTrace) }); throw ex; } }
public bool AssignToAgent(string business_id, string agent_id, string customer_id) { try { string userId = User.Claims.FirstOrDefault(c => c.Type == "user_id").Value; return(_customerService.AssignToAgent(business_id, customer_id, agent_id, userId)); } catch (Exception ex) { _logService.Create(new Log { category = "Customers", link = $"{Request.HttpContext.Request.Scheme}://{Request.HttpContext.Request.Host}{Request.HttpContext.Request.Path}{Request.HttpContext.Request.QueryString}", message = ex.Message, name = string.Format("Assign customer-{0} to agent-{1}", customer_id, agent_id) }); throw ex; } }
public void SaveWebhookData(ZaloMessage data, bool real_time_update) { // Make sure this is a page subscription //if (data.@event == "sendmsg" || data.@event == "sendimagemsg" || data.@event == "sendlinkmsg" || data.@event== "2691206174905801178") //{ try { BackgroundJob.Enqueue <ZaloConversationService>(x => x.SaveWebhookMessaging(data, null, real_time_update, null)); //ZaloConversationService conversationService = new ZaloConversationService(_channelService, _threadService, _agentService, _customerService, _messageService, _appSettings, _logService); //conversationService.SaveWebhookMessaging(data, null, real_time_update, null).Wait(); } catch (Exception ex) { // BackgroundJob.Enqueue<ZaloConversationService>(x => x.SaveWebhookMessaging(data, null, real_time_update, null)); _logService.Create(new Log { name = "Webhook zalo calledback 2", message = ex.Message + JsonConvert.SerializeObject(ex.StackTrace).ToString(), details = JsonConvert.SerializeObject(data).ToString() }); throw ex; } // } }
public IActionResult PostPositions([FromBody] List <Position> positionList) { string token = Helper.Utility.GetToken(Request); User user = _authenticationService.ValidateToken(token); if (user == null) { return(Unauthorized("Invalid token")); } return(Ok(_loggingService.Create(user.Id, positionList))); }
public async Task <dynamic> getCustomerFormPhone([FromBody] Phone obj) { try { _logService.Create(new Log { name = "Hotline", message = "Hotline", details = JsonConvert.SerializeObject(obj) }); return(await _hotlineService.SavePhoneHookData(obj)); } catch (Exception ex) { return(new { status = false }); } }
public async Task <AgentFeed> GetAgents(string business_id, [FromQuery] string access_token) { try { var resultData = await _agentService.GetAgents(business_id, 0, 50); return(new AgentFeed { Data = resultData.Select(a => new AgentModel(a)) }); } catch (Exception ex) { _logService.Create(new Log { message = ex.Message, category = "Agent", link = $"{Request.HttpContext.Request.Scheme}://{Request.HttpContext.Request.Host}{Request.HttpContext.Request.Path}{Request.HttpContext.Request.QueryString}", details = JsonConvert.SerializeObject(ex.StackTrace), name = string.Format("Get agents by business_id: {0}", business_id) }); } return(null); }
public async System.Threading.Tasks.Task <ChannelFeed> GetChannels(string business_id, string access_token) { try { var resultData = await _channelService.GetChannels(business_id, 0, 50); return(new ChannelFeed { Data = resultData }); } catch (Exception ex) { _logService.Create(new Log { message = ex.Message, category = "Agent", link = $"{Request.HttpContext.Request.Scheme}://{Request.HttpContext.Request.Host}{Request.HttpContext.Request.Path}{Request.HttpContext.Request.QueryString}", details = JsonConvert.SerializeObject(ex.StackTrace), name = string.Format("Get channels by business_id: {0}", business_id) }); } return(null); }
public async Task <ApiResponse> GetShortcuts(string business_id, string access_token) { ApiResponse response = new ApiResponse(); try { var resultData = await _shortcutService.GetShortcuts(business_id, 0, 10); response.ok = true; response.data = resultData; } catch (Exception ex) { _logService.Create(new Log { message = ex.Message, category = "Shortcut", link = $"{Request.HttpContext.Request.Scheme}://{Request.HttpContext.Request.Host}{Request.HttpContext.Request.Path}{Request.HttpContext.Request.QueryString}", details = JsonConvert.SerializeObject(ex.StackTrace), name = string.Format("Get shortcuts by business_id: {0}", business_id) }); } return(response); }
public async Task <FacebookComment> GetComment(string commentId, string pageAccessToken) { string url = string.Format(_facebookGraphApiUrl + "/{0}/?fields=object,message,attachment,created_time,permalink_url&access_token={1}", commentId, pageAccessToken); try { try { var c = await Core.Helpers.WebHelper.HttpGetAsync <FacebookComment>(url); return(c); } catch { try { url = string.Format(_facebookGraphApiUrl + "/{0}/?fields=message,created_time,permalink_url&access_token={1}", commentId, pageAccessToken); var c = await Core.Helpers.WebHelper.HttpGetAsync <FacebookComment>(url); return(c); } catch { url = string.Format(_facebookGraphApiUrl + "/{0}/?fields=message,created_time&access_token={1}", commentId, pageAccessToken); var c = await Core.Helpers.WebHelper.HttpGetAsync <FacebookComment>(url); return(c); } } } catch (Exception ex) { _logService.Create(new Log { message = ex.Message, category = "Facebook", link = url, details = JsonConvert.SerializeObject(ex.StackTrace), name = string.Format("Get comments: {0}", commentId) }); return(null); } }
public bool SaveLastVisit([FromBody] LastVisit data) { try { Task <bool> .Factory.StartNew(() => { _threadService.AddLastVisit(data.business_id, data.thread_id, data.url, data.agent_id); return(true); }); return(true); } catch (Exception ex) { _logService.Create(new Log { category = "Threads", link = $"{Request.HttpContext.Request.Scheme}://{Request.HttpContext.Request.Host}{Request.HttpContext.Request.Path}{Request.HttpContext.Request.QueryString}", message = ex.Message, name = string.Format("Add last_visit thread-{0} to agent-{1}", data.thread_id, data.agent_id) }); throw ex; } }
public void WriteLog(LogLevel logLevel, string message) { _loggingService.Create(CreateLogging(logLevel, message)); }