配置alexa skill(二)

  1. 第一个后台处理程序
    这里选择使用亚马逊alexa的java sdk进行开发:
    https://developer.amazon.com/docs/alexa-skills-kit-sdk-for-java/set-up-the-sdk.html
    配置alexa skill(二)_第1张图片
    直接下载alexa的官方demo:
    https://github.com/alexa/alexa-skills-kit-sdk-for-java/tree/2.0.x/samples/helloworldservlet
    拷贝部分必须程序,包含helloworld、launch两个处理器和一个servlet。其中launch负责处理alexa skill开启的动作,helloworld负责处理alexa控制台上配置的intents(例如之前配的Heater)。HelloWorldServlet负责提供接口对接alexa skill。
    配置alexa skill(二)_第2张图片
  2. 改写例子程序,使支持Heater意图的处理
    新增Heater意图处理器:配置alexa skill(二)_第3张图片
    在HelloWorldServlet上注册HeaterIntentHandler,并把alexa skill控制台上的技能id复制到withSkillid上
    配置alexa skill(二)_第4张图片
    完整的项目目录:
    配置alexa skill(二)_第5张图片
  3. 测试结果
    把上面的项目打包运行,然后把servlet的访问地址配置到alexa skill的endpoint上。保存后构建好alexa skill项目准备测试
    配置alexa skill(二)_第6张图片
    打开技能测试页面:
    1、输入“open test”打开我们的技能,这时alexa会向我们的服务发送一个请求。这个请求会交给LaunchRequestHandler处理。处理完成后服务器返回“Welcome to the Alexa Skills Kit.”到测试界面显示。
    2、接着输入“Tom helped me heat the water to fifty degrees Celsius.”,这时alexa也会向我们的服务发送一个请求。由于亚马逊语意分析对比后发现这个语句是Heater意图里面的指令,所以这个请求的意图类型参数是Heater,会交给HeaterIntentHandler处理。处理完成后服务器返回“Your device Tom is heating water to 50 degrees Celsius.”到测试界面显示。
    配置alexa skill(二)_第7张图片
  4. 总结
    到此,已经实现了alexa skill跟我们平台最基础的交互工作。其他功能可以在此基础上拓展。

你可能感兴趣的:(亚马逊alexa)