文档中心 > AliGenie开发者平台

小程序API

更新时间:2019/11/01 访问次数:9753

小程序API

精灵小程序是在支付宝小程序的基础上,增加了语音、视觉等能力。小程序基础的API,请参考:支付宝小程序的API

以下是天猫精灵扩展的API:

playTTS

  • API: my.tg.playTTS
  • 功能:播放TTS
  • 入参:
属性 类型 必填 说明
content String tts播报的内容, string类型
openMic Boolean 是否在播报结束后开麦,默认false
  • 使用示例:
my.tg.playTTS({
  content: '请问你要选第几个', 
  openMic: true
});

nlpRequest

  • API: my.tg.nlpRequest
  • 功能:模拟语音请求
  • 入参:
属性 类型 必填 说明
text String 模拟语音请求的内容
  • 使用示例:
my.tg.nlpRequest({
  text: "今天天气",
});

hideNavigationBar

  • API:my.call(‘hideNavigationBar’)
  • 功能:隐藏顶部导航栏

showNavigationBar

  • API: my.call(‘showNavigationBar’)
  • 功能:显示顶部导航栏

sendKeyEvent

  • API: my.call(“sendKeyEvent”)
  • 功能:模拟物理按键
  • 入参:
属性 类型 必填 说明
keyCode String 键值,当前仅支持BACK、HOME两种键值
  • 使用示例:
my.call("sendKeyEvent", {"keyCode": "BACK"})

useSystemSkill

  • API: my.call(“useSystemSkill”)
  • 功能:使用系统自带技能
  • 入参:
属性 类型 必填 说明
skillName String 系统内置技能的名字,目前可选值有:chat

当前系统内置的技能说明:

skillName 说明
chat 沉寂式对话模式,将拦截所有的语音指令,不会跳出当前的技能。 对于“退出”“返回”这些指令,小程序自行可自行使用sendKeyEvent来处理
  • 使用示例
  1. 在Page的onShow方法中,设置技能配置
Page({
  
  onShow() {
    my.call('useSystemSkill', {
      skillName: 'chat'
    })
  },
  
});
  1. 在page的onVoiceEvent中语音操作的指令:
Page({
  
  onShow() {
    my.call('useSystemSkill', {
      skillName: 'chat',
    })
  },

  //默认的语音指令回调
  onVoiceEvent(event){
    my.alert({content: "onVoiceEvent = " + JSON.stringify(event)}); 
  },

});
  1. 假设此时用户说“天猫精灵,凤和日丽", ?onVoiceEvent回调中的event的数据格式如下,其中的query就是原生的ASR
{
  "command":"NluResult",
  "domain":"AliGenie.Text",
  "param":{
    "domain":"小程序技能chat",
    "intent":"sys.fallback",
    "query":"风和日丽",
    "slots":[]
  }
}

useCustomSkill

  • API: my.call(“useCustomSkill”)
  • 功能:使用自定义技能
  • 入参:
属性 类型 必填 说明
skillName String 技能的名字,默认值为小程序的appid
secretKey String 技能的secretKey,从技能开放平台创建的技能中获取
pageId String 指定页面id,和技能开放平台中的页面意图配置相匹配,会优先使用页面绑定的意图
  • 使用示例
  1. 在Page的onShow方法中,设置技能配置
Page({
  
  onShow() {
    my.call('useCustomSkill', {
    	secretKey: 'your secretKey',
    	pageId: 'pages/index/index'
    })
  },
  
});

startNativeApp

  • API: my.call(‘startNativeApp’)
  • 功能:启动Native应用
  • 参数
属性 类型 必填 说明
uri String
启动 Activity 的 Uri
action String 启动Activity时,设置的action参数,默认为“android.intent.action.VIEW”
param String 传给要启动的Activity的Intent extra参数. 子参数将通过 putExtra 方式添加进 Intent 中,可通过 getStringExtra()方法获取,(注意: 所有子参数类型必须都是 String 类型)
  • 使用示例:
my.call('startNativeApp', {
  // 通过URI的方式 start Activity: 启动通讯录
  uri: 'genie://com.alibaba.ailabs.genie.contacts/page/home',
  param: {// 可选,传入intent中的extra中的参数,注意必须为String类型
    "extra1": "value1",
    "interger": "1",
    "extra2": "Hello native app",
  }
},

function(result) {
  my.alert({
    content: JSON.stringify(result)
  })
})

getGenieDeviceInfo

  • API: my.call(“getGenieDeviceInfo”)

  • 功能:获取设备信息

  • 使用示例:

my.call('getGenieDeviceInfo', function(result) {
  my.alert({
    content: JSON.stringify(result)
  })
})
{
  "code":"0",
  "data":{
	  "uuid":"real uuid" // 设备uuid
  },
  "msg":"Success"
}

FAQ

关于此文档暂时还没有FAQ
返回
顶部