public void SaveServiceHeader(ServiceHeaders serviceheader) { if (serviceheader.HeaderId == 0) { context.ServiceHeaders.Add(serviceheader); } else { ServiceHeaders dbentry = context.ServiceHeaders.Find(serviceheader.HeaderId); if (dbentry != null) { dbentry.Category = serviceheader.Category; dbentry.CategoryLabel = serviceheader.CategoryLabel; dbentry.Description = serviceheader.Description; dbentry.HomeCategory = serviceheader.HomeCategory; dbentry.HomeCategoryLabel = serviceheader.HomeCategoryLabel; dbentry.ImageUrl = serviceheader.ImageUrl; dbentry.IsActive = serviceheader.IsActive; dbentry.MenuCategory = serviceheader.MenuCategory; dbentry.MenuCategoryLabel = serviceheader.MenuCategoryLabel; dbentry.ProductCode = serviceheader.ProductCode; dbentry.ProductName = serviceheader.ProductName; dbentry.ServiceName = serviceheader.ServiceName; dbentry.ServiceLabel = serviceheader.ServiceLabel; dbentry.ServiceUrl = serviceheader.ServiceUrl; dbentry.ServiceParams = serviceheader.ServiceParams; dbentry.ParamsType = serviceheader.ParamsType; dbentry.TimeFormat = serviceheader.TimeFormat; } } context.SaveChanges(); }
public string ServiceUrlFill(ServiceHeaders s, ServiceRequests r) { string val = s.ServiceUrl; switch ((ServiceUrlFiller)s.ParamsType) { default: val += ServiceUrlFill(s.ServiceParams.Trim(), r.MSISDN.Trim(), s.ProductCode.Trim()); break; case ServiceUrlFiller.standard: val += ServiceUrlFill(s.ServiceParams.Trim(), r.MSISDN.Trim(), s.ProductCode.Trim(), r.TransactionId.ToString().Replace("-", "").Trim(), s.Description.Trim()); break; case ServiceUrlFiller.multiplex: val += ServiceUrlFill(s.ServiceParams, r.MSISDN.Trim(), s.ProductCode.Trim(), r.TransactionId.ToString().Replace("-", "").Trim(), DateTime.Now, s.TimeFormat); break; case ServiceUrlFiller.nil: val += ServiceUrlFill(s.ServiceParams); break; case ServiceUrlFiller.lone: val += ServiceUrlFill(s.ServiceParams, s.ProductCode); break; } new Thread(() => { LocalLogger.LogFileWrite(val); }).Start(); return(val); }
protected async Task <ServiceHeaders> GetServiceHeaders() { var serviceHeaders = new ServiceHeaders(); await TryUpdateModelAsync(serviceHeaders, typeof(ServiceHeaders), string.Empty); return(serviceHeaders); }
public ServiceHeaders DeleteServiceHeader(int headerId) { ServiceHeaders dbentry = context.ServiceHeaders.Find(headerId); if (dbentry != null) { context.ServiceHeaders.Remove(dbentry); context.SaveChanges(); } return(dbentry); }
//Chat(code, phone) //mns(pid, phone, tid, descr) //Voice(msisdn, packid, requestimestamp(timeformat),trasactionid) public ReturnMessage Subscribe(int headerId, string ipAddress, string msisdn, bool IsHeaderEnabled = true, string sourceChannel = "Standard") { ServiceHeaders serv = context.ServiceHeaders.FirstOrDefault(f => f.HeaderId == headerId); if (serv != null) { ServiceRequests req = new ServiceRequests(); req.HeaderEnabled = IsHeaderEnabled; //else number was obtained manually -false req.MSISDN = msisdn; req.ClientIp = ipAddress; req.ServiceHeaderId = serv.HeaderId; req.SourceChannel = sourceChannel; //Opera req.Timestamped = DateTime.Now; req.TransactionId = Guid.NewGuid(); SaveServiceRequest(req); if (req.RequestId > 0) { var reply = "";// new WebClient().DownloadString(ServiceUrlFill(serv, req));/////Need to follow up with return data if (serv.ParamsType == 3 | serv.ParamsType == 4) { //request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8"; //request.Method = "POST"; // Doesn't work with "GET" //ASCIIEncoding encoding = new ASCIIEncoding(); //byte[] data = encoding.GetBytes(serv.ServiceParams.TrimStart('?')); //request.ContentLength = data.Length; Pop(ServiceUrlFill(serv, req)); HttpContext.Current.Session["Param3"] = ServiceUrlFill(serv, req); //request.GetRequestStream().Write(data, 0, data.Length); reply = "OK"; } else { HttpContext.Current.Session["Param3"] = null; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ServiceUrlFill(serv, req)); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); using (Stream stream = response.GetResponseStream()) { StreamReader reader = new StreamReader(stream, Encoding.UTF8); String responseString = reader.ReadToEnd(); reply = responseString; } } ServiceResponses rep = new ServiceResponses(); new Thread(() => { LocalLogger.LogFileWrite(reply); }).Start(); rep.Description = reply; rep.RequestId = req.RequestId; var statCode = string.Concat(reply.Take(50)); rep.StatusCode = statCode; rep.Timestamped = DateTime.Now; _IServiceResponseRepository.SaveServiceResponse(rep); new Thread(() => { LocalLogger.LogFileWrite($"RequestId: {rep.RequestId} - Description: {rep.Description}"); }).Start(); return(new ReturnMessage() { ID = rep.RequestId, Message = rep.Description, Success = true, Data = rep }); } else { return(new ReturnMessage() { Message = "This service does not exist on this platform.", Success = false, Data = serv }); } } else { return(new ReturnMessage() { Message = "This service does not exist on this platform.", Success = false, Data = serv }); } }