Hello,
is it possible to share to other (family) users the amazon-skill to view in the store of other user (but keeping private) so the skill can be used without deployed from the other users?
Thanks
Hello,
is it possible to share to other (family) users the amazon-skill to view in the store of other user (but keeping private) so the skill can be used without deployed from the other users?
Thanks
I am not sure if I fully got your question. Letâs check:
Is that correct ? Do I miss something ?
Yes correct so other users with other account on private openhab cloud can use same skill (pointing to my private openhab cloud) without re-deploy the lamba.
Sorry If I reply after 1 yearâŠbut I really need to know if itâs possible this is my situation:
All is working perfect.
Now Iâd like to add another user to my cloud with another oh instance, what is better:
The private openhab cloud is the same as myopenhab.org - just an other instance.
The private alexa skill is like the skill offered by openhab - just an other instance.
If you think about how all this works with the âofficialâ instance then
As you can see only one openhab cloud instance and one alexa skill would be required.
But you need to keep in mind that each OH instance get their own account in the (private) cloud instance appart of you use the remote binding to connect one instance to one that is registered in the cloud.
Yes this is clear, but to browse the openhab skill (customized to point to the private cloud) each alexa user has to be able to browse the customized skill (customized because only the url from myopenhab.org to the private has to be edited), so the skill need to be deployed in the other alexa accounts. And I dont know if this is the right process
Doesnât this apply to public skills only ?
This one could help
Beta testers get access to your (private) skill before it is made public:
Before we launch our Alexa skill to public, we need to test it. Alexa Developer Console provides an option to send your Alexa skill to a list of beta testers, up to 500 email addresses. Once your Alexa skill is ready, validated, and ready to test, follow these steps to send your Alexa skill to a list of beta testers.
This could be good I have to test it.
Its a pity that there is an end date for testing.
Another way its to deploy the skill in the others private account (pointing to the same private cloud), but I dont know if its tested for have multiple skills pointing to it.
I can confirm this is the only workaround to get a skill in development shared across different accounts.
You can deploy the skill on your other usersâ Amazon account while still pointing to the same AWS resources and therefore cloud connector instance. To that effect, when these users enable the skill on their account they can log in with their own account on your cloud connector during the account linking process.
To do so, you would need to setup additional profiles with ASK CLI. For each profile, authorize the relevant Amazon account and no need to specify AWS credentials since you wouldnât deploy the skill infrastructure from these profiles.
To configure each new profile, I would recommend using the --no-browser
parameter and send the generated authorization url to the relevant users who can just send back the authorization code after they log in into their Amazon account.
ask configure --no-browser -p <profileName>
To deploy, you will need to have already run the deploy command as per the installation instructions with your default profile. This should have added your Lambda endpoint to skill-package/skill.json
.
At that point, you can just deploy the skill metadata on each of the profile you created by running the following command:
ask deploy -t skill-metadata -p <profileName>
Also, make sure to update the skill account linking information using the newly created skill id displayed in the step above.
ask smapi update-account-linking-info -s <skillId> --account-linking-request file:accountLinking.json
Last step is to add permission to your Lambda function to allow each newly created skill to invoke it. You can run the following command using the AWS CLI:
aws lambda add-permission --statement-id AlexaSkillFunctionPermission<profileName> --function-name alexa-openhab --action lambda:invokeFunction --principal alexa-connectedhome.amazon.com --event-source-token <skillId>
Or if you prefer, use the AWS console to add the permission to the relevant Lambda function.
Thanks for the detailed explanation, I will try asap to see if all itâs working.