ColeHorvat / serverless-camp

GNU General Public License v3.0
0 stars 0 forks source link

Week 3: Exposed!! #48

Closed counselorbot[bot] closed 2 years ago

counselorbot[bot] commented 2 years ago

Week 3 Step 8 ⬤⬤⬤⬤⬤⬤⬤⬤◯ | 🕐 Estimated completion: 10-20 minutes

Exposed!!

✅ Task:

Modify the deepsecrets Azure Function to

❗ Make sure to return your message in this format:

Thanks 😊! Stored your secret "insert_user's_message". 😯 Someone confessed that: "a_random_secret"

Remember that the bot will be checking the response, so make sure you use the same emojis, punctuation, wording, and capitalization! Only the messages can be different.

🚧 Test Your Work

To test your work, send your Twilio number a text message. You should still receive a text back that contains a message with the same format and wording as the one below, but now the second secret returned will be random, and no longer the most recent secret stored!

Thanks 😊! Stored your secret "insert_user's_message". 😯 Someone confessed that: "a_random_secret"

💡 Yay! This means you've successfully queried for and returned a random secret.


1: Modifying the SQL Query

In your createDocument function, you'll first want to modify the original SQL query to now query for all secrets inside your container.

❓ How do I select all secrets? ```js const querySpec = { query: "SELECT * from c" }; ```

2: Selecting a Random Item

Next, you'll want to select a random secret by:

  1. Generating a random integer that is strictly less than the length of the array of secrets. (Hint: use Math.floor() and Math.random())
  2. Returning the secret at an index of this random number.
❓ How do I generate a random number for the index? The `Math.floor()` function returns the [floor](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/floor) of the given number - ie. the largest integer less than or equal to a given number. In the example below, the generated random number will never be greater than `items.length`. ```js let random_value = Math.floor(items.length * Math.random()); ```

💡 Make sure to change your responseMessage to return the correct index of items.

📹 Walkthrough Video

walkthrough video

counselorbot[bot] commented 2 years ago

That's it for Week 3, move on to Week 4 in your new issue!