Is it possible to trigger the Alexa Test per url? - alexa

In your Alexa skill is a section where you can test the program.
https://developer.amazon.com/alexa/console/ask/test/yourskill
There you can type in a question for your skill. Is it possible to do this with a link.
Like sending the link with the question text as a parameter?
In other words I want to catch the submit-function that is triggered with "Enter".
Background: for a university project we want to "hack" alexa to start an interaction.

Related

Creating a survey in amazon Alexa with open ended questions

I am trying to create a simple survey skill in Amazon Alexa where Alexa asks the user a question and they respond in any manner they feel like (open-ended). For example, if Alexa asks "Do you cook?", a user may respond in many ways such as "Yes I do cook", "My son does the cooking" etc.
The issue I am getting is that the questions can have similar responses so when I create an utterance in the Alexa dev console they overlap (utterance conflicts) and I am redirected to the error handler. (note each question has its own intent)
Is there any other way I can go about creating a survey without using intents?
Can I capture the full user response to a slot?
The reason being I want to store the user's response in a database.
Unfortunately, Alexa Skills aren't designed to do Speech To Text.
When a user talks to a device, the request goes through multiple steps:
Automated Speech Recognition > It does Speech To Text internally
Natural Language Understanding (NLU) > Using Machine Learning, it will understand what the user want to do (Stop a skill, play music, switch on the light, ...)
Depending of the context, if the NLU understand that the user is trying to respond to your skill (the interaction model match what the user is saying), it will send a POST request to your skill. But it will not send you the Speech To Text.
Documentation
Although, the intent AMAZON.SearchQuery will do the job but you will have to use a prefix: My answer is {query} and not directly {query} because all requests will be redirected to this intent otherwise. It will not look like a good & smooth user experience.

How to make multistatement request with Alexa Skill

I am building an Alexa Skill and I need that when the user asks for information but it's missing the required fields for the back-end, Alexa asks the user back for this information. For example:
If the user asks What's the temperature? but does not give a location, Alexa asks back the location so it can be passed with the request to the back-end.
Another example is when you want to set a reminder and ask Alexa Set a reminder, she asks you for what and when is the reminder. I want to do the same with my skill.
Reading the documentation I noticed that there's a reprompt and a shouldEndSession entry in the response Object. Is this the right way to do what I want? Or is there any other way to achieve it?
I believe I found an answer. There is a directive for asking the user for missing values: the Dialog.ElicitSlot.
Similar question: Alexa input validation for type AMAZON.NUMBER using dialog model

Pushing messages to be spoken to Alexa

How do I force Alexa to speak messages? For example everytime someone mentions Elon Musk on Twitter I want my Alexa to automatically speak the tweet.
It's not possible yet to trigger Alexa directly without Alexa wasn't asked. You could use notifications. Alexa will have a yellow ring and user has to ask for messages.
See https://developer.amazon.com/en-US/docs/alexa/smapi/proactive-events-api.html fro details.

Integrate Alexa app into existing website

Given the scenario:
I have an existing website
I have an alexa skill kit app
Is there anyway that a user can press a button on the webpage, speak and aws backend will process it and send it to my request handlers?
If this is not available with alexa would I be able to do this with lex?
Yes, Lex is able to do this instead of Alexa.
But be aware that Lex and Alexa have surprisingly different Request and Response JSON formatting so be prepared to restructure your Alexa request handlers to accept and respond appropriately to Lex.
Side Note: the Lex request does have one large perk over Alexa's which is that Lex provides you with the exact user input (or the audio input interpretation) in a field named 'inputTranscript'. So while in Alexa you have to rely on the slots being filled based solely on Alexa's interpretation of the input, in Lex you can parse the input yourself and improve your bot's recognition of slot values.

Can I set an alarm on Alexa or Google Home by sending a text message, through integration such as IFTTT? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
Can I set an alarm on Alexa or Google Home by sending a text message, through integration such as IFTTT?
From the ifttt website, the integration all seems to be driving actions through Alexa or Google Home, I am looking for ways to drive actions on Alexa or Assistant.
https://ifttt.com/amazon_alexa
https://ifttt.com/google_assistant
Notifications (which are announced by a "bing" sound and a glowing yellow ring, and you listen to by saying, "Alexa, what are my notifications") can be pushed to your Alexa device using a skill I created called Notify Me and a REST API.
Notify Me works great with IFTTT via its Webhooks service. First, of course, you have to enable the Notify Me skill; then launch the skill to get an access code (say, "Alexa, launch Notify Me" and the skill will email you the access code). Next, you fill out the IFTTT Webhooks service like this...
URL: https://api.notifymyecho.com/v1/NotifyMe
Method: POST
Content Type: application/json
Body: {"notification": "HOWDY", "accessCode":"ACCESS_CODE"}
...replacing HOWDY with the actual message you want to send (it does not have to be all uppercase, of course) and replacing ACCESS_CODE with the access code you previously received via email.
See www.notifymyecho.com for more info.
At Alexa I am sure you can't do it with the Alexa Skills Kit currently at Google Home I think you can't.
The simple Problem here is that both device react only on user voice for the normal developer.
At Alexa a Notification system is planned or already there but it seems that it can't be used by the normal developer, from Outside. So you can't send anything to the device. Only if the device request Something like after an Intent it can push this to notifications and even for that i am not sure.
What you can do is built your on Alexa | or maybe Google Assitant device with the Alexa Voice Service | maybe Google Assistant tools (dialogflow, action sdk etc.) but there you have to do all handshakes by yourself.

Resources