You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于Surface Capabilities区分设备类型,调整Actions on Google建议芯片文本

根据设备类型自定义建议芯片文本

当然可以实现!你完全可以根据设备的Surface Capabilities来为建议芯片设置不同的文本,适配智能显示屏和移动设备的屏幕差异。下面是具体的实现步骤:

  • 获取设备的Surface类型
    首先你需要在代码里识别当前交互的设备类型。通过访问设备的能力集合,你可以区分智能显示屏(比如Google Nest Hub)和移动设备。以Actions SDK(Node.js)为例:
// 从设备能力中提取Surface类型
const surfaceCapability = conv.device.capabilities.find(cap => cap.name === 'actions.capabilities.SURFACE');
const surfaceType = surfaceCapability?.params?.surfaceType;

智能显示屏的surfaceType会是SMART_DISPLAY,而手机则是MOBILE。

  • 分支设置芯片文本
    拿到设备类型后,就可以为不同设备定义对应的建议芯片文本了:
let backChipText, forwardChipText;

if (surfaceType === 'SMART_DISPLAY') {
  // 智能显示屏用完整文本
  backChipText = '(backward)';
  forwardChipText = '(forward)';
} else if (surfaceType === 'MOBILE') {
  // 移动设备用短符号适配宽度
  backChipText = '<<';
  forwardChipText = '>>';
}

// 将文本添加为建议芯片
conv.add(new Suggestions([backChipText, forwardChipText]));
  • Dialogflow用户的适配方式
    如果你用的是Dialogflow,同样可以在Webhook请求中获取设备信息:
// 从Webhook请求中提取设备能力
const surfaceCapability = request.body.originalDetectIntentRequest.payload.device.capabilities.find(cap => cap.name === 'actions.capabilities.SURFACE');
const surfaceType = surfaceCapability?.params?.surfaceType;
// 后续的文本分支逻辑和上面一致

测试的时候记得分别在智能显示屏和手机端验证效果,确保短符号在手机底部单行能完整显示,而完整文本在Hub上展示正常。

内容的提问来源于stack exchange,提问作者John Pool

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 09:00:32