平台介绍
- AliGenie 智能应用平台:开发者使用淘宝账号注册登录到该平台即可创建天猫精灵技能等;
- 开发者云工作平台(简称工作台):开发者可以使用阿里云账号登录到该平台,创建 Serverless 应用,并可进行云端开发部署;
- Teambition,阿里云企业协同平台,工作台基于 Teambition 平台为用户提供企业协同服务;
- Codeup,阿里云代码托管平台,工作台上基于 Codeup 平台为用户提供应用代码托管服务;
阿里云FaaS使用步骤
- 天猫精灵应用的开发者在 AliGenie智能应用平台 创建 技能;
- 在技能回复逻辑中将 默认逻辑阿里云FaaS 设为默认集合,
- 点击开通,进入 云开发 工作台;
- 在工作台 创建对应的 Serverless应用;
- 开发并测试 Serverless应用;
- 技能 发布后,用户在使用技能时,天猫精灵将调用 Serverless应用 提供服务意图的后台服务。
一. 在 AliGenie 智能应用平台创建技能
使用淘宝账号登录 AliGenie 智能应用平台。请参考文档【成为开发者】
创建技能后,首先创建一个默认意图。然后在 回复逻辑 中将 默认逻辑阿里云FaaS 设为默认集合。
点击 默认逻辑阿里云FaaS 左边的 " + ",技能首次使用 阿里云FaaS 功能需要先 开通。
二. 授权
点击 开通 按钮,会引导您使用淘宝账号登录到阿里云。输入您登录 AliGenie智能应用平台 的淘宝账号信息并 确认授权。
三. 绑定阿里云账号
第一次确认授权后,需要为您做授权的淘宝账号绑定阿里云账号。之后再确认授权时,就会直接使用绑定的阿里云账号登录。
如果您之前没有阿里云账号,选择 快速注册 ,按提示完善信息,点击 注册并绑定。
如果您之前就有阿里云主账号,可以选择 绑定已有阿里云账号,按提示填写账号信息,点击 登录并绑定。
四. 创建开发团队
创建一个企业,输入您的团队或企业名称。团队使用规模请选择 1-10 人。如果超过此规模,涉及的代码托管等服务可能需要您额外付费才能使用。
点击 完成创建 之后,进入创建的 (xxx)开发团队 需要您签署《云开发平台服务协议》,签署之后就可以免费使用云开发平台进行服务开发了。
五. 进行实名认证
开发前需要先进行实名认证,认证方式请参考云开发平台的认证文档。
六. 创建应用
认证完成后点击新建应用
创建应用Step1要先进行服务授权
Step2中选择开发语言,开发语言按照您使用何种语言进行选择,Java语言没有提供模板,只能选择“天猫精灵智能应用解决方案(For Java)”。Python 和 PHP 语言暂时没有提供天猫精灵智能应用解决方案,请不要选择这两种语言。
NodeJs语言可以选择天猫精灵提供的“8分钟电影”模板,也可以选择解决方案中的“天猫精灵智能应用解决方案(For NodeJS)”;
Step3中选择产品线创建方式和计算服务,产品线有自动和手动2种方式进行选择,计算服务可以选择 FC(函数型Serverless)。
Step4中显示的是云应用所依赖的云服务开通情况和资费参考价格。点击完成即可创建云应用。
七. 开通云服务
在环境管理中,依赖的云服务 是必选项。您只有开通这些云服务,才能开始开发应用,请按照提示逐个完成这些云服务的开通。
PS: 这里之前开通过,所以显示已开通。对于第一次创建的云应用会显示未开通,需要将这四个云服务开通。
八. 开发应用
应用开发请参考阿里云应用开发文档-【开发应用】,点击在线开发部署,打开 CloudIDE,等待应用开发环境启动。
进入 CloudIDE 后,所在的资源管理器中,会为你把应用的初始代码准备好,您可以直接在示例代码上进行开发。
开发完成后要把代码提交到仓库中,不然进来就没有了。1.点击源代码管理。2点击提交按钮
九. 部署
应用开发请参考阿里云应用开发文档-【部署与测试】
开发完之后,点击左侧的 部署调试插件,即可进行部署调试。
打开 CloudIDE 左侧的 部署调试插件,进入到部署面板,我们提供 日常、预发、线上 三套环境供您使用,测试时对应的是预发环境,技能上线后,走线上环境。
选择要部署的环境,检查 路由、函数映射表,确认无误后点 部署。
请一定要检查 路由、函数映射表 中的数据是否正确。路由、函数映射表中会有一条默认的路由信息(如果没有请手动添加),每一个路由有三个字段:
- 第一个字段表示的是应用访问的路径,格式为:/skill-67954/entry,其中数字 67954 为智能应用平台上此应用的技能id,可以通过应用控制台的浏览器地址栏中查看此应用的技能id,例如:https://iap.aligenie.com/console/newskill/67954/basic?id=2020123022014,则此应用的技能id为67954。
- 第二个字段表示某个文件的函数入口。
- 如果选择Java语言,此数据为:com.alibaba.ailabs.GenieEntry::handleRequest,表示当应用发布之后,天猫精灵这边的请求会发送到com.alibaba.ailabs.GenieEntry类的handleRequest方法,handleRequest是从AbstractEntry类中继承的方法,请不要重写此方法。
- 如果选择NodeJS语言,此数据为:index.handler,表示含义和上面类似。
- 第三个字段表示请求的类型,这里只能是post类型,请不要修改。
PS: 在 部署日志 标签页可以看到部署的进度以及部署是否成功。
十. 调试
部署成功之后,就可以切换到 调试 面板,进行调试了。
选择好要调试的环境,先选择用户路径(发布时路由里的应用访问路径),输入请求头和入参(如果没有的话可以输入 {} 空对象)。入参信息请参考【请求响应协议】 --> 【请求数据】。
点击 测试 即可在右侧看到对这个路径的请求结果。
当请求测试的结果都符合预期,你就可以最终将应用部署到线上环境,进行下一步的技能测试。
十一. 线上部署
当选择线上环境部署时,如果有以下提示:
请先在应用管理中进行部署配置,同时可以到域名配置中进行自定义域名配置。PS: 因为平台默认自动生成一个域名,域名的格式为:production-67954.tmallgenieapi.com。
线上环境绑定域名部署还可以参考阿里云应用开发文档-【绑定域名部署线上环境】
线上部署后,就可以回到智能应用平台上对应用在线测试,进入应用在线测试页面,输入调用词测试能否正常收到Faas服务的响应数据。
之后就可以进行应用后台逻辑开发和应用上线发布了,具体开发和发布的相关内容,请参考其他文档。
十二. 查看日志
查看日志需要跳转到阿里云的控制台(不是云开发控制台)-日志服务,目前使用技能的测试环境和线上环境,访问的都是阿里云faas服务的线上环境,
进入日志服务后找到自己创建的应用
点击进入就可以查看日志了