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

如何将Google Assistant自定义操作与智能家居操作关联至同一后端服务器

双SDK绑定同一后端的实现方案
  • 核心实现逻辑:两个SDK的请求来源互相独立,仅需在后端拆分不同路由分别承接即可,原有业务逻辑无需大幅修改。
  • 第一步:服务端依赖安装与路由配置
    以Express框架为例,先安装所需依赖:
    npm install express @assistant/conversation actions-on-google
    
    服务端代码示例:
    const express = require('express');
    const { conversation } = require('@assistant/conversation');
    const { smarthome } = require('actions-on-google');
    
    const app = express();
    // 统一解析JSON请求体,两个SDK均可复用
    app.use(express.json());
    // 可在此处添加统一的鉴权中间件,两个路由的请求都会先经过校验,实现用户身份打通
    app.use((req, res, next) => {
      // 你的统一鉴权逻辑,比如解析Authorization头验证用户身份
      next();
    });
    
    // 初始化自定义对话操作实例,原有自定义操作逻辑直接复用即可
    const conversationApp = conversation({debug: false});
    conversationApp.handle('你的自定义意图名', conv => {
      conv.add('自定义操作返回内容');
    });
    
    // 初始化智能家居操作实例,原有智能家居逻辑直接复用即可
    const smarthomeApp = smarthome({debug: false});
    smarthomeApp.onSync(async (body, headers) => {
      return {
        requestId: body.requestId,
        payload: {
          agentUserId: '绑定的用户ID',
          devices: [] // 你的设备列表配置
        }
      };
    });
    smarthomeApp.onExecute(async (body, headers) => {
      // 设备控制逻辑
    });
    smarthomeApp.onQuery(async (body, headers) => {
      // 设备状态查询逻辑
    });
    
    // 两个SDK分别挂载到不同路由
    app.post('/webhook/conversation', conversationApp);
    app.post('/webhook/smarthome', smarthomeApp);
    
    // 启动服务,生产环境需要对外暴露HTTPS 443端口
    app.listen(3000, () => {
      console.log('服务运行在端口3000');
    });
    
  • 第二步:Google Action控制台配置修改
    分别找到两个操作对应的fulfillment配置项,填写对应的后端地址即可:

    自定义操作的webhook地址:https://你的后端域名/webhook/conversation
    智能家居操作的webhook地址:https://你的后端域名/webhook/smarthome

  • 注意事项:
    • 后端必须支持HTTPS协议,Google官方不接受HTTP协议的webhook地址,本地调试可以用ngrok等工具临时生成HTTPS公网地址测试。
    • 如果两个操作对应同一个Google Cloud项目,也可以在同一个Action控制台内配置不同的触发入口绑定对应路由,无需拆分项目管理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 17:54:03