API服务模块允许调用外部服务。您可以通过配置服务接口新增服务,对话流中支持直接引用已有的API服务,已被引用的服务需要解除后方可删除。同时,API服务中可以直接调用阿里云通信的短信服务接口以及阿里云函数计算服务。一键授权开通即可。
设置模拟数据:提供了模拟测试功能
除了在函数节点里面编辑函数和服务注册中心以外,在整个租户级别,也可以通过全局服务管理编写函数。
在全局服务管理编写的函数,可以复用于对话工厂的各个对话流,并在服务调用节点进行使用。
系统支持对注册后的服务进行在线调试。
注意:创建服务完成后记得点击设置为可上线状态,不然在服务调用节点无法显示。
新建服务
服务名称:自定义输入服务名称不超过20字。
服务类型,包括通用HTTP服务、集成发送短信服务以及函数计算服务。
当选择HTTP服务为服务类型时对参数进行配置:
调用方式设置
服务调用方式若选择同步,服务将在调用完成或超时的情况,生成response信息并返回结果。若选择异步,需要调用方自主访问接口,来获取服务结果或超时信息。
服务超时时间表示设定调用服务超时时间,超时后,系统会返回timeout信息。
接收参数设置
服务接收参数:设置己方服务需要接收的参数, 此处设定的参数名称要与己方接口服务中的参数名称一致。
功能配置
服务接口:可以选择GET和POST两种服务接口。并填入对应 URL。
接口入参:此处与服务接收参数为映射关系,名称设定为相同即可。
返回参数设置
服务返回参数:接口需要utf-8编码、string格式的结果,result=${serviceOutput}表示将结果全部信息赋予result参数,供引用该服务的模块使用;如果结果string是json结构,支持${serviceOutput.name}表示获取接口结果中name字段。
签字认证
启用签字,可参考文档签名计算使用指引
选择函数计算作为服务类型对参数的配置
说明本服务由阿里云函数计算服务提供,您可以前往阿里云函数计算控制台管理函数计算。
选择服务:选择阿里云函数计算服务。
选择函数:选择对应函数。
接收参数设置
服务接收参数:设置己方服务需要接收的参数, 此处设定的参数名称要与己方接口服务中的参数名称一致。
返回参数设置
服务返回参数:接口需要utf-8编码、string格式的结果,result=${serviceOutput}表示将结果全部信息赋予result参数,供引用该服务的模块使用;如果结果string是json结构,支持${serviceOutput.name}表示获取接口结果中name字段。
当选择短信服务为服务类型时对参数进行配置
说明本服务由阿里云短信服务提供,短信模板及签名均来自于阿里云短信服务,您可以前往阿里云短信服务控制台管理短信模板/签名。
选择签名:选择在短信服务控制台中配置的短信签名。
选择模板:选择在短信服务控制台中配置的短信模板。
服务返回参数:可通过此参数查询短信成功或失败的状态。
code:请求状态码。透传阿里云短信服务的API-SendSms(发送短信)的返回参数Code,详写的Code列表可以在短信服务产品文档-错误码-API错误码中查询。
message:状态码的描述。
使用案例
此处的配置按照服务需求填写参数即可,系统当前支持HTTP协议,GET和POST两种服务接口。
参数说明:
服务名称:根据服务提供的功能, 可自定义服务名称。
服务接收参数:设置己方服务需要接收的参数;
接口入参:此处与服务接收参数为映射关系,名称设定为相同即可。
服务返回参数:设置服务返回参数, 可在服务节点, 将该参数赋值到全局变量。
服务接口:该服务需要引用的第三方接口
请求类型:GET
请求URL: http://127.xx.xx.xx/smsapi
请求参数: 根据第三方接口要求提供入参,可通过${}引用上面的服务接收参数,例: ${city}。
接口出参:服务接口返回的结果 ${serviceOutput},赋值到的服务返回参数。
最佳实践
新建服务,假设查天气的https协议接口:
设定服务接收参数city(注:服务接收参数名称与接口需要获取参数名称一致)。接口入参(注:入参参数名称与服务接收参数名称保持一致)输入好后,选择映射的参数名称进行引用。
然后将服务返回参数设定完成,点击确定。
确定后,点击调试测试接口是否通畅。
调试没有问题后,选择发布此服务。
实际调用方式参考文档服务节点-全局服务调用配置指引。