Beispiel #1
0
    private PingResponse PingService(CheckServiceStatusRequest requestData)
    {
        PingResponse pingResp = new PingResponse();

        try
        {
            pingResp.ServiceType = dh.GetServiceType(requestData.Payload.ServiceID);
            string    IpAddress = dh.GetServerIpAddress(requestData.Payload.ServiceID);
            Ping      myPing    = new Ping();
            PingReply reply     = myPing.Send(IpAddress, 5000);
            if (reply == null)
            {
                pingResp.LastTimeDown      = "" + DateTime.Now;
                pingResp.StatusCode        = "100";
                pingResp.StatusDescription = "Service Is Unavailable";
            }
            else
            {
                pingResp.LastTimeUp        = "" + DateTime.Now;
                pingResp.StatusCode        = "0";
                pingResp.StatusDescription = "Service Is Up and Running";
            }
        }
        catch (Exception ex)
        {
            pingResp.LastTimeUp = "" + DateTime.Now;
            pingResp.StatusCode = "100";
            pingResp.Reason     = ex.Message;
        }
        return(pingResp);
    }
Beispiel #2
0
    internal CheckServiceStatusResponse CheckServiceStatus(CheckServiceStatusRequest requestData)
    {
        CheckServiceStatusResponse resp = new CheckServiceStatusResponse();

        try
        {
            //they call this when they want to know if the utility is up
            PingResponse pingResp = PingService(requestData);
            if (pingResp.StatusCode.Equals("0"))
            {
                resp.Status              = new Status();
                resp.Status.StatusCode   = "200";
                resp.Status.Description  = "Successfully Authenticated";
                resp.Payload.StatusCode  = "100";
                resp.Payload.CountryID   = requestData.Payload.CountryID;
                resp.Payload.LastTimeUp  = pingResp.LastTimeUp;
                resp.Payload.LastWentoff = "";
                resp.Payload.NetworkID   = requestData.Payload.NetworkID;
                resp.Payload.Reason      = "NONE";
                resp.Payload.ServiceID   = requestData.Payload.ServiceID;
                resp.Payload.ServiceType = pingResp.ServiceType;
            }
            else
            {
                resp.Status              = new Status();
                resp.Status.StatusCode   = "200";
                resp.Status.Description  = "Successfully Authenticated";
                resp.Payload.StatusCode  = "105";
                resp.Payload.CountryID   = requestData.Payload.CountryID;
                resp.Payload.LastTimeUp  = "";
                resp.Payload.LastWentoff = pingResp.LastWentOff;
                resp.Payload.NetworkID   = requestData.Payload.NetworkID;
                resp.Payload.Reason      = pingResp.Reason;
                resp.Payload.ServiceID   = requestData.Payload.ServiceID;
                resp.Payload.ServiceType = pingResp.ServiceType;
            }
        }
        catch (Exception e)
        {
            resp.Status             = new Status();
            resp.Status.StatusCode  = "200";
            resp.Status.Description = "Successfully Authenticated";
            resp.Payload.StatusCode = "105";
            resp.Payload.Reason     = e.Message;
        }
        return(resp);
    }