Beispiel #1
0
        public ServiceResponses DeleteServiceResponse(int responseId)
        {
            ServiceResponses dbentry = context.ServiceResponses.Find(responseId);

            if (dbentry != null)
            {
                context.ServiceResponses.Remove(dbentry);
                context.SaveChanges();
            }
            return(dbentry);
        }
Beispiel #2
0
 public void SaveServiceResponse(ServiceResponses serviceresponse)
 {
     if (serviceresponse.ResponseId == 0)
     {
         context.ServiceResponses.Add(serviceresponse);
     }
     else
     {
         ServiceResponses dbentry = context.ServiceResponses.Find(serviceresponse.ResponseId);
         if (dbentry != null)
         {
             dbentry.Description = serviceresponse.Description;
             dbentry.RequestId   = serviceresponse.RequestId;
             dbentry.StatusCode  = serviceresponse.StatusCode;
             dbentry.Timestamped = serviceresponse.Timestamped;
         }
     }
     context.SaveChanges();
 }
        //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
                });
            }
        }
 public int IndexOf(ServiceResponses value)
 {
     return a.IndexOf(value);
 }
 public bool Contains(ServiceResponses value)
 {
     return a.Contains(value);
 }
 public int Add(ServiceResponses value)
 {
     return a.Add(value);
 }
 public void Remove(ServiceResponses value)
 {
     a.Remove(value);
 }
 public void Insert(int index, ServiceResponses value)
 {
     a.Insert(index, value);
 }