Editor’s Note: In addition to using the ASK CLI, you can now use the developer console beta to create and publish private skills. Learn More
Technology around the office can often seem too complicated, or simply take too much time away from the real task at hand. Perhaps the best example is with meetings, during which valuable time may be lost simply finding a meeting room, or spending too much time starting a conference call. Multiply these experiences across offices around the world, and you can imagine the collective loss in productivity is staggering.
I recently had the opportunity to host a webinar with James Huang, technical product manager for Alexa for Business, during which we discussed these types of challenges in the modern workplace and how Alexa for Business can address them. Check out the webinar recording to learn more.
Alexa for Business from Amazon Web Services (AWS) is a service that makes it easy for organizations to use Alexa in the workplace. Alexa for Business includes the tools and controls that administrators need to deploy and manage shared Alexa devices, skills, and users at scale. This opens up new opportunities for Alexa skill developers to build skills that help organizations and employees get more done in less time.
With Alexa for Business, account administrators can manage and provision Alexa-enabled devices from a centralized console. Alexa for Business provides access to all Alexa skills available in the public Alexa Skill Store, and also introduces the ability to build and deploy private skills. If you are creating skills specific to your business or on behalf of an organization, you can choose to publish skills privately to an Alexa for Business account rather than the public Alexa Skills Store. This allows developers to create unique voice experiences exclusive to a specific organization.
To develop a private skill with Alexa for Business, you’ll need your AWS account and the Alexa Skills Kit Command Line Interface (ASK CLI) up and running on your developer environment. The ASK CLI is useful for speeding up the Alexa Skills Kit development workflow. If you haven’t already set it up, take a look first at our ASK CLI Quick Start documentation.
If you’re scaffolding your first skill using the CLI with the `ask new` command or cloning an existing skill using the `ask clone` command, look for the skill manifest. It should be named skill.json and will be located the root level of your skill directory. The skill manifest contains metadata and properties required for a skill.
Alternatively, you can download the skill manifest of an existing, development stage skill with the get-skill API by entering the following command:
$ ask api get-skill -s {skill_id} > skill.json
Once you’ve located your skill manifest, open this file in your preferred text editor or IDE.
If you intend to publish your skill as a private skill, add the "distributionMode": "PRIVATE" line in the publishingInformation block of your skill manifest. It should look something like this:
"isAvailableWorldwide": true,
"testingInstructions": "This is a private skill.",
"category": "EDUCATION_AND_REFERENCE",
"distributionMode": "PRIVATE",
"distributionCountries": []
},
"apis": {
To upload the updated skill manifest for cloned or new scaffolded projects, use the `ask deploy` command. Although if you use the get-skill API from above, you should instead use the update-skill API by entering the command below:
$ ask api update-skill -s {skill_id} -f skill.json
Last, submit the skill. The submission process is similar to certification for public skills. Just issue the following command:
$ ask api submit –s {skill_id}
This submission process may take a few hours to complete, and once completed the skill will be available in the live stage.
The final step is to distribute the skill to an Alexa for Business organization. To do this, you’ll need the ARN of the AWS account for the organization which you want to deploy the skill. Then enter the following command:
$ ask api add-private-distribution-account -s {skill_id} --stage live --account-id <id>
For example: `arn:aws:iam::123456789012:root`, where `123456789012` is a placeholder for your AWS account Id. You must specify the root and not an individual user for that account.
And that’s it! The private skill is now deployed and available to the Alexa for Business organization. To manage it:
For additional information about how to set up and manage Shared Devices and Enrolled Users, see the Alexa for Business Administration Guide.
Businesses can have highly tuned and special voice experiences that can delight customers and employees. With Alexa for Business, developers have the opportunity to create efficiencies and better serve customers and employees with voice. To learn more and get started, take a look at the Alexa Skills Kit and Alexa for Business resources:
Every month, developers can earn money for eligible skills that drive some of the highest customer engagement. Developers can increase their level of skill engagement and potentially earn more by improving their skill, building more skills, and making their skills available in in the US, UK and Germany. Learn more about our rewards program and start building today.