# 启动器

消息类型 名称 必须实现
response start_activity
back
select
request start_activity_result
back_result
select_result

# context

"iflyos_context": {
  ...
  "launcher": {
    "version": "1.1"
  },
  ...
}
参数 类型 说明 必填
version String 模块版本,现在是1.1

版本说明

版本 说明 更新日期
1.0 基础实现 2019-08-28
1.1 增加选择相关 2019-12-12

# response

# 页面跳转

说明

用户请求后,云端会理解语义,并返回该指令。你需要根据用户的实际请求,打开合适的页面。即使你的页面命名与云端返回不一致。

{
  "iflyos_responses": [
    ...,
    {
      "header": {
        "name": "launcher.start_activity"
      },
      "payload": {
        "page": "home",//取值见下表
      }
    }
 ]
}
参数 类型 说明 必填
page String 页面名称

目前支持的页面

page取值 页面说明
home 主页面/首页/桌面
settings 设置页,显示设备支持的设置项
contents 内容中心页,显示推荐的内容列表
skills 技能中心页,显示设备可以使用的技能
alarms 闹钟列表,显示设备当前已经设置的闹钟
messages 留言板页,显示设备与APP之前的留言历史
next 下一页
previous 上一页

# 页面返回

说明

当用户请求“返回”时,如果云端认为用户请求的是页面的返回,云端会返回该指令。你需要根据用户的实际请求,返回到合适的页面。

{
  "iflyos_responses": [
    ...,
    {
      "header": {
        "name": "launcher.back"
      },
      "payload": {}
    }
 ]
}

# 页面选择

当前界面处于launcher页面时,用户可能会语音请求说“选择第3个”之类的选择话术,云端会在语义理解后,向设备发送selectresponse

在你收到这样的response时,你需要在当前页面进行合适的处理。如打开用户选择的列表项,或向用户反馈“超出列表选项”。


{
  "iflyos_responses": [
    ...,
    {
      "header": {
        "name": "launcher.select"
      },
      "payload": {
        "number": 12//选择的序号
      }
    }
 ]
}
参数 类型 说明 必填
number Int 用户请求选择的数字

# request

# 页面跳转结果

在执行完云端返回的response后,你需要将执行的结果告知云端。

{   
  "iflyos_header": {...},   
  "iflyos_context": {...},   
  "iflyos_request": {     
    "header": {       
      "name": "launcher.start_activity_result",       
      "request_id": "xxxxxxxx"     
    },     
    "payload": {       
      "result": "SUCCEED",
      "page": "xxxxx", 
      "failure_code": "xxxx",    
      "feedback_text": "xxxxx"     
    }   
  } 
}
参数 类型 说明 必填
iflyos_header Object 构建的通用 iflyos_header
iflyos_context Object 构建的通用 iflyos_context
result String 页面跳转结果。取值:SUCCEED,FAILED
page String 跳转的页面名称,以response中的取值为准
failure_code String 失败类型,当result取值为FAILED时此项必填。取值:NOT_FOUND_PAGE,INTERNAL_ERROR
feedback_text String 执行后反馈给用户的语音提示。提示音播放逻辑:
1. 该项出现,则云端会返回feedback_text中的文本;
2.若该项出现但取值为空,云端不回复TTS;
3.该项不出现,云端返回默认文本。

# 页面返回结果

在执行完云端返回的back后,你需要将执行的结果告知云端。


{  
  "iflyos_header": {...},  
  "iflyos_context": {...},  
  "iflyos_request": {    
    "header": {      
      "name": "launcher.back_result",      
      "request_id": "xxxxxxxx"    
    },    
    "payload": {      
      "result": "SUCCEED", 
      "feedback_text": "xxxxx"    
    }  
  }
}
参数 类型 说明 必填
iflyos_header Object 构建的通用 iflyos_header
iflyos_context Object 构建的通用 iflyos_context
result String 执行返回操作的结果。取值:SUCCEED,FAILED
feedback_text String 执行后反馈给用户的语音提示。提示音播放逻辑:
1. 该项出现,则云端会返回feedback_text中的文本;
2.若该项出现但取值为空,云端不回复TTS;
3.该项不出现,云端返回默认文本。

# 页面选择结果

{ 
  "iflyos_header": {...}, 
  "iflyos_context": {...}, 
  "iflyos_request": {   
    "header": {     
      "name": "launcher.select_result",     
      "request_id": "xxxxxxxx"   
    },   
    "payload": {     
      "result": "FAILED",
      "failure_code": "INVALID_NUMBER",//可取值:INVALID_NUMBER,NONSELECTABLE_PAGE
      "feedback_text": "xxxxx"   
    } 
  }
}
参数 类型 说明 必填
iflyos_header Object 构建的通用 iflyos_header
iflyos_context Object 构建的通用 iflyos_context
result String 执行返回操作的结果。取值:SUCCEED,FAILED
failure_code String 执行失败的原因,当result取值为FAILED时必填。可取值:INVALID_NUMBERINVALID_NUMBERNONSELECTABLE_PAGE
feedback_text String 执行后反馈给用户的语音提示。提示音播放逻辑:
1. 该项出现,则云端会返回feedback_text中的文本;
2.若该项出现但取值为空,云端不回复TTS;
3.该项不出现,云端返回默认文本。