通过实施 Web 服务向 Alexa 托管自定义技能

2024-04-16

我正在开发一个网络服务,用于处理 Alexa 发送的请求并在 .net 框架中以特定响应进行响应。 Alexa 以 JSON 格式发送到您的服务的请求正文,如下所示:

{
  "version": "string",
  "session": {
    "new": true,
    "sessionId": "string",
    "application": {
      "applicationId": "string"
    },
    "attributes": {
      "string": {}
    },
    "user": {
      "userId": "string",
      "accessToken": "string"
    }
  },
  "context": {
    "System": {
      "application": {
        "applicationId": "string"
      },
      "user": {
        "userId": "string",
        "accessToken": "string"
      },
      "device": {
        "supportedInterfaces": {
          "AudioPlayer": {}
        }
      }
    },
    "AudioPlayer": {
      "token": "string",
      "offsetInMilliseconds": 0,
      "playerActivity": "string"
    }
  },
  "request": {}
}

and 响应主体语法Json 格式如下:

{
  "version": "string",
  "sessionAttributes": {
    "string": object
  },
  "response": {
    "outputSpeech": {
      "type": "string",
      "text": "string",
      "ssml": "string"
    },
    "card": {
      "type": "string",
      "title": "string",
      "content": "string",
      "text": "string",
      "image": {
        "smallImageUrl": "string",
        "largeImageUrl": "string"
      }
    },
    "reprompt": {
      "outputSpeech": {
        "type": "string",
        "text": "string",
        "ssml": "string"
      }
    },
    "directives": [
      {
        "type": "string",
        "playBehavior": "string",
        "audioItem": {
          "stream": {
            "token": "string",
            "url": "string",
            "offsetInMilliseconds": 0
          }
        }
      }
    ],
    "shouldEndSession": boolean
  }
}

我在亚马逊开发者论坛上进行了研究将自定义技能托管为 Web 服务 https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/developing-an-alexa-skill-as-a-web-service , 处理 Alexa 发送的请求 https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/handling-requests-sent-by-alexa但我无法实现这一目标,并且我没有使用一件事Lambda我想要自定义技能,但我的位置不在North US.

我得到了自由党。来自 githubhere https://github.com/AreYouFreeBusy/AlexaSkillsKit.NET并在我的网络服务中使用,但无法与该库同步,这里的任何人都可以给我一个方向,我该如何做到这一点或我如何开始,提前致谢。


我刚刚发布了一个使用您提到的相同 AlexaSkillsKit.NET 包的项目。目标是帮助每个人使用 .NET + Visual Studio 创建可轻松部署到 Azure 的 Alexa 自定义技能。

https://github.com/tamhinsf/Azure4Alexa https://github.com/tamhinsf/Azure4Alexa

有一个示例技能实现,您可以将其用作您自己的自定义技能的模式。它利用 httpClient 和常见的异步模式。

只需下载并启动 Visual Studio 即可开始!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过实施 Web 服务向 Alexa 托管自定义技能 的相关文章

  • 将 void* 作为函数调用而不声明函数指针

    我已经搜索过 但找不到任何结果 我的术语可能有问题 所以如果以前有人问过这个问题 请原谅我 我想知道是否有一种简单的方法可以调用void 作为 C 中的函数 无需首先声明函数指针 然后为函数指针分配地址 IE 假设要调用的函数是类型void
  • nUnit Assert.That(method,Throws.Exception) 不捕获异常

    有人可以告诉我为什么这个检查异常的单元测试失败了 显然我真正的测试是检查其他代码 但我使用 Int32 Parse 来显示问题 Test public void MyTest Assert That Int32 Parse abc Thro
  • 调试Windows服务

    Scenario 我有一个用 C 编写的 Windows 服务 我已经阅读了所有关于如何调试它的谷歌线程 但我仍然无法让它工作 我已经运行 PathTo NetFramework InstallUtil exe C MyService ex
  • 在剑道网格中显示动态图像

    我想在剑道网格中填充动态图像 我正在获取 json 数据 我有以下代码 var grid timeSegmentGrid kendoGrid var icon dataSource transport read function optio
  • 如何在 Google 日历中创建“recurData”?

    我想使用 Google API 创建日历的重复事件 我正在关注链接 谷歌日历API http code google com apis calendar data 2 0 developers guide dotnet html Creat
  • 如何防止通过“new”运算符分配类? (我想确保我的 RAII 类始终分配在堆栈上。)

    我想确保我的 RAII 类始终分配在堆栈上 如何防止通过 new 运算符分配类 您需要做的就是将类的 new 运算符声明为私有 class X private Prevent heap allocation void operator ne
  • 公开 ASP.NET 用户控件中的复杂属性

    我想从自定义 ASP NET 用户控件公开一个复杂的属性 可以通过aspx页面中的控制标签来设置 像这样的事情 public class TestData public int X public int Y public partial c
  • 阅读 C 语言中的科学记数法

    我正在尝试读取包含以下内容的文件 1 0000000e 01 2 9265380e 03 5 0821200e 02 4 3231640e 01 2 0000000e 01 1 0170240e 04 9 2798610e 02 4 072
  • M1 MacBook Pro 和 cmake 的编译错误

    我刚刚拿到了新的 M1 MacBook Pro 正在尝试编译大学工作所需的代码库 以下是我已采取的步骤 我使用 Rosetta 将终端设置为始终打开 安装的自制程序using bin bash c curl fsSL https raw g
  • 接收UDP数据包

    假设我的程序通过网络 UDP 发送 1000 字节 它是否保证接收方将 一批 接收 1000 个字节 或者他可能需要执行多次 读取 直到收到完整的消息 如果后者为真 我如何确保同一消息的数据包顺序不会 混淆 按顺序 或者协议可能保证这一点
  • fgets 和 fread 之间的区别

    我有以下代码 include
  • 不区分大小写“包含(字符串)”

    有没有办法让下面的返回为真 string title ASTRINGTOTEST title Contains string 似乎没有过载允许我设置区分大小写 目前我将它们都大写 但这很愚蠢 我指的是i18n http en wikiped
  • 如何使用最小起订量模拟 Controller.User

    我有几个 ActionMethods 查询 Controller User 的角色 如下所示 bool isAdmin User IsInRole admin 在这种情况下可以方便地行事 我开始使用这样的代码对这些方法进行测试 TestMe
  • IBM Rhapsody 中状态图终止连接器的理解

    在IBM Rhapsody中 如果我使用new创建了一个类的实例 那么我们是否必须通过调用delete来处理内存的释放 或者Termination Connector将在其状态图中通过内存释放来处理其销毁 如果您使用 C 和 OXF 对象执
  • 当无法处理指定的情况时,在 switch 语句中抛出异常

    假设我们有一个函数可以在 MVC 应用程序的系统中更改用户的密码 public JsonResult ChangePassword string username string currentPassword string newPassw
  • 如何从 .NET DataGridView 控件单元格值写入文本文件?

    我有以下代码应该循环遍历我的所有行DataGridView 并将其所有单元格值写入文本文件 但是 它输出所有行 但仅输出每行的第一个单元格 而不输出其他三个单元格 string file name C test1 txt var objWr
  • 缓冲区溢出(与)缓冲区溢出(与)堆栈溢出[重复]

    这个问题在这里已经有答案了 可能的重复 堆栈溢出和缓冲区溢出有什么区别 https stackoverflow com questions 1120575 what is the difference between a stack ove
  • Plink 通过 C# 返回不需要的字符

    通过 C 使用 Plink 时 我在结果前后收到不需要的字符 Command ls l informatica tgtdynamicparams out grep vaulttest grep Sep 1 awk print 9 sort
  • 优化Gson反序列化

    优化反序列化的最佳方法是什么 我目前正在使用标准 Gson toJson 和 Gson fromJson 方法来序列化和反序列化一些复杂对象 我希望尽可能减少反序列化时间 如果重要的话 我的最复杂的对象包含 43 个变量 如果你想使用 Gs
  • Phong 着色问题

    我正在根据以下内容编写着色器冯模型 http en wikipedia org wiki Phong reflection model 我正在尝试实现这个方程 其中 n 是法线 l 是光线方向 v 是相机方向 r 是光反射 维基百科文章中更

随机推荐

  • C++ 没有 DELETE 宏的原因

    在那儿任何好的理由 也许除了 宏是邪恶的 不使用以下宏 define DELETE ptr if ptr NULL delete ptr ptr NULL define DELETE TABLE ptr if ptr NULL delete
  • 如何应用iOS VNImageHomographicAlignmentObservation warpTransform?

    我正在测试 Apple 的 Vision Alignment API 并对 VNHomgraphicImageRegistrationRequest 有疑问 有人让它工作吗 我可以从中得到 warpTransform 但我还没有看到一个有意
  • 如何通过FTP将多个多级(不同层次)文件从本地版本覆盖到在线版本

    我只是在本地更改了几个不同目录中的许多文件 然后将更改推送到 Subversion 但这不会更改实时版本 只会更改存储库 现在我必须通过 FTP 更新这些文件 但它们都是不同的层次结构级别 我怎么做 我知道的唯一方法是采用我的整个本地版本并
  • YUV420 到 RGB 转换

    我使用以下公式将 RGB 矩阵转换为 YUV 矩阵 Y 0 257 R 0 504 G 0 098 B 16 Cr V 0 439 R 0 368 G 0 071 B 128 Cb U 0 148 R 0 291 G 0 439 B 128
  • Java中获取Spark当前任务ID

    我需要获取 Spark 中当前任务的 ID 我一直在Google和官方API中搜索 但我能找到的唯一ID是执行者ID和RDD的ID 有谁知道如何获取任务的唯一ID 我看到班级TaskInfo正是我正在寻找的东西 但我不知道如何获取此类的实例
  • 正则表达式从查询字符串中删除一个参数

    我正在寻找一个正则表达式来从查询字符串中删除单个参数 并且如果可能的话 我想在单个正则表达式中执行此操作 假设我要删除foo范围 现在我用这个 foo 只要foo不是查询字符串中的第一个参数 如果是 那么我的新查询字符串以 符号开头 例如
  • 姜戈。线程安全的更新或创建。

    我们知道 更新是线程安全的操作 这意味着 当你这样做时 SomeModel objects filter id 1 update some field 100 代替 sm SomeModel objects get id 1 sm some
  • Spring-如何保护RESTful私有资源?

    我有一些 RESTful 服务 使用 Spring MVC 实现 公开一组资源 我已经使用基于 HTTPBasicAuthentication 和 HTTPS 的身份验证 某些资源必须只能由某些用户访问 例如 我希望 URI 中的所有子资源
  • jQuery,单击时连续调用多个动画

    到目前为止 我已经做到了 所以当页面打开时 一些动画会运行以使一些图片和文本滑入视图中 我在页面顶部有链接 这些链接没有目的地 但我已将它们全部链接用于样式目的 例如效果悬停 访问等 链接有类 所有链接都有 nav 类 然后它们每个都有相关
  • WPF:列表视图在顶部而不是底部显示最近添加的项目

    我有一个集合绑定到列表视图 该集合每 4 5 秒添加一次项目 新项目将自动添加到列表视图的底部 因此 如果您想看到最新的项目 那么您需要向下滚动到底部 我的问题是 是否可以反转列表视图 以便新的最新项目位于顶部 最旧的项目位于底部 Than
  • 视频馈送至 ThingsBoard 仪表板

    我目前使用 ThingsBoard 作为 IoT 代理来捕获来自多个传感器的遥测数据并将其显示到仪表板 我想添加显示来自 iPhone 相机或网络摄像头的实时视频源的功能 我想知道这里是否有人知道 ThingsBoard 是否支持任何类型的
  • 检测PHP中是否启用cookie

    我正在尝试检测我的页面上的用户是否启用了 cookie 以下代码执行检查 但是 我不知道如何将用户重定向到他们来自的页面 该脚本启动一个会话并检查是否已检查 cookie 如果没有 它会将用户重定向到测试页面 并且由于我在第一页中调用了 s
  • R rpart:如果删除不太重要的变量,则不会分割

    我试图了解 rpart 在我试图完成的项目中如何工作 我对 R 比较陌生 但我有很多使用 SAS 构建各种分析模型的经验 首先我运行了这段代码 mtree1 lt rpart X17 data mydata method class con
  • FileInfo.Extension 是否返回最后一个 *.* 模式或其他内容?

    我很好奇以下行为到底是什么 FileInfo info new FileInfo C testfile txt gz string ext info Extension 这会返回 txt gz 还是 gz 更多扩展名 例如 txt gz z
  • 点击 CardView 时的仰角动画

    我想将海拔动画添加到我的android support v7 widget CardView 就像材质风格一样Button是的 我尝试过设置一个StateListAnimator android stateListAnimator anim
  • 如何在 FactoryGirlRails 中定义序列?

    以前在 Factory Girl 中 我们可以像这样定义序列 spec factories rb FactoryGirl define do this is the sequence in question sequence random
  • vscode api:如何从文件图标主题获取图标

    我正在为 VSCode 编写一个扩展 在 WebviewPanel 中 我需要显示来自文件图标主题的文件扩展名图标 有没有从文件图标主题中获取图标的功能 我也在研究这个 我还没有答案 但到目前为止已经有了一些线索 希望这可以帮助 https
  • Perl 调用带括号和不带括号的方法

    一些 Perl 书籍建议在调用类方法时使用括号 称这有助于使解析器不必猜测代码的意图 然而 我见过的几乎所有 Perl 代码 包括 cpan 上的模块 在调用不带参数的方法时很少使用括号 省略这些括号是正常的还是我应该总是输入它们 我编写了
  • Keras:使用 flow_from _directory() 函数为两个输入模型创建自定义生成器

    我试图用以下方法训练我的暹罗网络fit generator 我从这个答案中了解到 Keras 如何将 fit generator 与多个输入一起使用 https stackoverflow com questions 49404993 ke
  • 通过实施 Web 服务向 Alexa 托管自定义技能

    我正在开发一个网络服务 用于处理 Alexa 发送的请求并在 net 框架中以特定响应进行响应 Alexa 以 JSON 格式发送到您的服务的请求正文 如下所示 version string session new true session