Exemplo n.º 1
0
    public JsonResult Getrequest(string key)
    {
        Task <string> secret = AWSDynamoDB.QueryByClientGuid(key);
        // The 8266 uses 'Basic' authenication so be have to Base64 decode it and account for the user name
        // get basic authenication token
        string appToken = Request.Headers["Authorization"];
        string auth     = appToken.Substring(6);
        string decoded  = Base64Decode(auth);

        if (secret.Result != decoded.Substring(7))
        {
            return(Json(invalidAuthToken));
        }

        Task <List <RequestQ> > requests = AWSDynamoDB.FetchQItem(key);

        if (requests.Result.Count > 0)
        {
            AWSDynamoDB.PutMonitor(key, false); //add this client to the list of active endpointId's
            string jsonResult = JsonConvert.SerializeObject(requests.Result[0]);
            return(Json(JObject.Parse(jsonResult)));
        }
        else
        {
            AWSDynamoDB.PutMonitor(key, true);
            return(Json(noResponseReturn));
        }
    } //Getrequest
Exemplo n.º 2
0
    public JsonResult Getdiscover(string amazn_email)
    {
        Globals.logger.LogInformation("Entering 'Getdiscover' using amazn_email: " + amazn_email);
        if (!CheckAuth(Globals.appSecret))
        {
            return(Json(invalidAuthToken));
        }

        AmaznRequest req = new AmaznRequest();
        {
            req.Amazn_email = amazn_email;
        }

        Task <bool> ifExists = AWSDynamoDB.ItemExists(req.Amazn_email.ToString());

        if (ifExists.Result)
        {
            Task <bool> result = AWSDynamoDB.AmaznLink(req);


            if (result.Result)
            {
                return(Json(successReturn));
            }
            else
            {
                return(Json(failedReturn));
            }
        }
        else
        {
            return(Json(notFoundReturn));
        }
    }     // end  [HttpGet("discover")]
Exemplo n.º 3
0
    public string Get(int id)
    {
        switch (id)
        {
        case 1: return(JsonConvert.SerializeObject(AWSDynamoDB.GetMonitor()));

        default: return("Alexa Skill");
        }
    }
Exemplo n.º 4
0
    public JsonResult GetQueueRequestStatus(string key)
    {
#if VERBOSEDEBUG
        Globals.logger.LogInformation("Entering 'GetQueueRequestStatus' using key: " + key);
#endif
        if (AWSDynamoDB.DeleteQbyClientGuid(key).Result)
        {
            return(Json(successReturn));
        }
        else
        {
            return(Json(notFoundReturn));
        }
    }
Exemplo n.º 5
0
    public JsonResult Getfetch(string email)
    {
        Globals.logger.LogInformation("Entering 'fetch' using email: " + email);
        Globals.logger.LogInformation(Globals.appSecret);
        if (!CheckAuth(Globals.appSecret))
        {
            return(Json(invalidAuthToken));
        }

        Client client = AWSDynamoDB.FetchItem(email).Result;

        if (client == null)
        {
            return(Json(new { }));
        }
        else
        {
            JObject jobject = (JObject)JToken.FromObject(client);
            return(Json(jobject));
        }
    }     // end [HttpGet("fetch")]
Exemplo n.º 6
0
    public JsonResult Getnewrequest(string directive, string MessageId, string correlationToken, string key, string endpointId)
    {
        Globals.logger.LogInformation("Entering 'Getnewrequest' using key: " + key + " enpoindId: " + endpointId);
        // get Bearer authenication token
        string appToken = Request.Headers["Authorization"];

        if (!CheckAuth(Globals.appSecret))
        {
            return(Json(invalidAuthToken));
        }

        Task <ClientGuidRequest> ClientGuid = AWSDynamoDB.GetClientGuid(key);

        if (ClientGuid.Result != null)
        {
            if (ClientGuid.Result.ActiveStatus)
            {
                Task <bool> result = AWSDynamoDB.AddtoRequestQ(directive, MessageId, correlationToken, ClientGuid.Result.ClientGuid, endpointId, ClientGuid.Result.secret);
                if (result.Result)
                {
                    return(Json(successReturn));
                }
                else
                {
                    return(Json(failedReturn));
                }
            }     //(ClientGuid.Result.ActiveStatus)
            else
            {
                return(Json(notActiveReturn));
            }
        }
        else     //ClientGuid.Result != null
        {
            return(Json(notFoundReturn));
        }
    }