I know for Alexa account linking user need to create his security profile in amazon developer and after that, a user needs to setup account linking in Alexa developer console for google sign in with Alexa skill. But now the question is how can user test the Alexa account linking without publishing that skill? because my skill is still in development and I want to check google sign in with Alexa in my developer console! So Is it possible to do? And if it is possible then please guide me how can I do that!
I am using python-ask for Alexa and for google sign in we need access token and I could not get access token in it! Here is my code:
from ask_sdk_core.skill_builder import SkillBuilder
from alexa.data import MORNING_WISHES
sb = SkillBuilder()
#sb.request_handler(can_handle_func=is_intent_name("MorningWishesIntent")
def morning_wishes_intent_handler(handler_input):
try:
accessToken=handler_input.request_envelope.context.\
system.user.access_token
print(accessToken)
speech_text = random.choice(MORNING_WISHES)
handler_input.response_builder.speak(speech_text).\
set_should_end_session(False)
except Exception as e:
speech_text = RESPONSES['EXCEPTION_MSG']
handler_input.response_builder.speak(speech_text).\
set_should_end_session(False)
return handler_input.response_builder.response
And as per the above code, I get none in access token and I tried to test account linking with my Alexa developer console without publishing the skill!
Developer console doesn't support account linking cards so there is no way to test it there. You should test account linking using alexa app or going to the alexa amazon website. Just remember to login with your developer account which has access to the skill. You'll find your account linking card there with the link with which you should be able to test if it works properly. Also you can go find your skill, in the skills tab and then go to the setting of that skill and test account linking from there.
Related
I am developing a custom action for google assistant.
In order to get user data and other user info. I need allow account linking flow.
My Account Linking flow:
Open the Google Assistant app on Android or iPhone.
Say the Action – "Talk to My test app”
Read and agree to the Action Terms and Conditions that appear on the screen.
Sign in with Web app.
Go back to Google assistant and ends linking flow
Everything works properly. But once account linked, I am not able to test the flow again
Could anyone suggest, how to unlink my account and test the above account linking process again? Thanks in advance
During development you can unlink your account via the actions on google console. If you navigate to the test window, you can see a settings button on the top right, click that and a setting pop-up should open. There you should look for an unlink button.
This will unlink your account, so when you restart the conversation for your action with this account, you will be prompted to sign-in again via accountlinking. This also works if you are testing on your phone. You just need to make sure that the account on your phone and the simulator are the same.
mismatch redirect uri screen This is account linking screen. This is error image with actual error. How to link account through Google Actions?
(token generation process through google actions)
Generated Client Id & Client secret for Project but not able to construct the authoriztion URL in client information section of Account linking tab.
Account link process is not working as expected, showing error while enabling test in simulator (Error: We're sorry, but something went wrong. Please try again.)
I am developing a new google home app. The google action is written in Dialogflow. The web hook is written in node js using JOVO framework. The action requires account linking with OAUTH.
I am trying to simulate and test "first time user" or "new user". In JOVO this is handled with a handler called NEW_USER.
I am looking to create the correct testing conditions so NEW_USER is triggered, unable to do so. Tried the following
1) https://support.google.com/googlehome/answer/7126338?co=GENIE.Platform%3DAndroid&hl=en - this contains a section in Step 2 to unlink the app. This does not work as described , as my action is yet unpublished I do not see it in the section as described, so I cannot unlink it.
2) I go to dialog flow and force a change in some intent - this seams to unlink my account. So now when I open my action "ok google , talk to XYZ" it asks for account linking - however, after account linking it does not go to NEW_USER handler, it seams to remember that I am not a new user.
3) Go to my OAUTH server and logout the user - google assistant still remembers that user is not new user
4) Create a new OAUTH user from google home app while doing account linking - even then NEW_USER is not triggered. The google assistant still remembers and does not treat me as new user.
Is there a way to create conditions to test a new user on google home?
Just a side note, this is easy on Alexa. In Alexa app, if you disable your skill and re-enable it, all previous history is lost and NEW_USER is triggered. So I am able to test "first time user" condition for developing Alexa.
We had success using the account linking URL provided in the Google Assistant Simulator and clicking on "unlink my accounts": https://gala-demo.appspot.com/
I've built an Action using API.AI, and set it up with integration to Actions On Google. A webhook is used for fulfillment, together with account linking. I've followed the directions here to complete testing using my main google account that gives me access to the unpublished action in the web simulator and on my Google Home device that is set up with the same account.
Now it's time to deploy my Action. These instructions detail the process. One of the steps is to provide testing instructions for the Google reviewers that will approve the deployment. If you use account linking, it is necessary to provide them with test user credentials. Here is specifically what they request:
Provide any additional information needed to test your agent. If your agent requires account linking or login information, you must provide a username and password for a test account. Please make sure that any provided accounts are not real user accounts. This information will only be used by the review team, and will not be visible to users.
I've set up a test account for this purpose. I would obviously like to test my Action using the test account (instead of my main account) prior to submission for deployment. How do I do this?
If I use the web simulator and login with the test account, when I try and invoke the Action with my invocation name I get 'Sorry, this action is not available in simulation'.
When developing an Alexa Skill, Amazon provides for this as described here. While researching, I see references to similar provisions for Android developers with Google Play here. Where is the same thing for Actions On Google?
The test account is for the account linking step only.
To test your action in the simulator, you should be using the developer account you used to submit the action for review. The test account is used once your action is invoked and account linking is required to continue using your action.
I have to add a paid application to play-store. I have successfully created the developers account, after that I am getting this error (while creating the new Merchant Account on google play):
Here is the steps to creating Merchant Account on Google play..
http://www.jeweleffects.com/instructions/merchantaccount.html
See also this
Thanks