智能家居跟踪器
使用AI代理构建
智能家居设置追踪器后端

智能家居设置追踪器后端模板
设备配对日志和中心配置

在 Back4app 上生产就绪的 智能家居设置追踪器后端,包含设备配对日志、中心配置和用户权限。包括 ER 图、数据字典、JSON 模式、API 游乐场,以及一个 AI 代理 提示,用于快速引导。

设置跟踪器要点

此模板为您提供一个智能家居设置跟踪器后端,具有设备配对日志、中心配置和用户权限,以便协调员能够保持安装的可见性和控制。

  1. 配对日志可见性以可查询的结构跟踪每个 DevicePairingLog,包含设备名称、配对状态和技术人员备注。
  2. 中心设置控制存储 HubConfig 记录,包括 Wi‑Fi、地区和自动化规则,以便安装人员在交接前进行审核。
  3. 权限感知访问分配 PermissionGrant 条目,使得只有经过批准的用户才能查看或编辑家庭设置。
  4. 现场操作跟踪使用 HomeSite 和 DevicePairingLog 记录跟踪跨房间、地址和完成状态的安装。
  5. 多客户端后端通过一个 REST 和 GraphQL API 为移动和网页客户端提供设置、日志和用户权限。

智能家居设置跟踪器模板是什么?

当智能家居设置数据被结构化而不是被困在 PDF 和侧边聊天中时,路由、部件和客户沟通才会显得轻松。成本体现在回调和信用上。此模板在 Back4app 上建模 HomeSite、HubConfig、DevicePairingLog 和 PermissionGrant,使您能发布一个有效的智能家居设置后端,而不是将电子表格拼凑在一起。该架构涵盖用户(用户名、电子邮件、密码)、HomeSite(昵称、地址标签、安装者备注)、HubConfig(homeSite、wifiSsid、时区、自动化模式)、DevicePairingLog(homeSite、设备名称、设备类型、配对状态、配对时间)和 PermissionGrant(homeSite、用户、角色、访问级别),并内置身份验证和设置跟踪。连接您喜欢的前端并更快发布。

最佳适用对象:

智能家居安装跟踪器设备配对日志仪表板中心配置工具用户权限管理应用现场操作团队选择 BaaS 作为智能家居产品的团队

智能家居设置:后端快照

如果在智能家居设置中为新员工入职需要部落知识,那么您离单点故障只差一次离职。

无论您是发布网页还是移动应用,HomeSite、HubConfig 和 DevicePairingLog 始终是支柱——此页面是快速对齐利益相关者的方式。

核心智能家居设置功能

这个中心的每一个技术卡片都使用相同的智能家居设置架构,包括 User, HomeSite, HubConfig, DevicePairingLog 和 PermissionGrant。

主页管理

HomeSite 存储昵称、地址标签和安装者备注。

中心配置记录

HubConfig 将每个主页链接到 wifiSsid、时区和自动化模式。

设备配对日志

DevicePairingLog 跟踪 deviceName, deviceType, pairingStatus 和 pairedAt。

用户权限

PermissionGrant 存储 homeSite, user, role 和 accessLevel。

为什么使用Back4app构建智能家居设置追踪后端?

Back4app为您的团队提供家庭、中心、日志和权限原语,以便他们可以专注于安装操作,而不是后端管道。

  • HomeSite和DevicePairingLog追踪: HomeSite记录每个地址,而DevicePairingLog捕获每次安装的设备名称、设备类型和配对状态。
  • HubConfig控制: HubConfig将wifiSsid、时区和自动化模式集中在一个地方,供安装人员和协调员使用。
  • 实时 + API灵活性: 在保持REST和GraphQL可用于每个客户端的同时,使用Live Queries进行DevicePairingLog更新。

快速构建和迭代智能家居设设置工作流程,所有平台使用同一个后端合约。

核心优势

一个使安装工作可见且有权限的智能家居设置后台。

快速安装启动

从完整的 HomeSite、HubConfig 和 DevicePairingLog 模式开始,而不是从零设计后端设置。

清除配对历史记录

捕捉配对尝试,包括 deviceName、deviceType、pairingStatus 和备注,以便轻松审核问题。

权限感知的交接

使用 PermissionGrant 控制谁可以在安装后查看或编辑每个家庭网站。

集中管理 Hub 设置

将 wifiSsid、时区和 automationMode 存储在一起,以便配置更改保持可追踪。

家庭和设备快照

为 HomeSite 和 DevicePairingLog 保留设置快照,而不在添加新设备时更改模式。

AI 启动工作流程

快速生成后端框架和集成指导,只需一个结构化提示。

准备好启动您的智能家居设置跟踪器吗?

让 Back4app AI 代理为您的智能家居设置后端搭建框架,并从一个提示中生成设备配对日志、集线器配置和用户权限。

免费开始 - 每月 50 条 AI 代理提示,无需信用卡

技术栈

这个智能家居设置后端模板中的所有内容。

前端
13+ 种技术
后端
Back4app
数据库
MongoDB
认证
内置认证 + 会话
API
REST 和 GraphQL
实时
Live Queries

智能家居 ER 图

用于智能家居设置后端架构的实体关系模型。

查看图表源
Mermaid
erDiagram
    User ||--o{ HomeSite : "primaryContact"
    User ||--o{ DevicePairingLog : "technician"
    User ||--o{ HubConfiguration : "configuredBy"
    User ||--o{ PermissionGrant : "grantee"
    HomeSite ||--o{ DevicePairingLog : "homeSite"
    HomeSite ||--o{ HubConfiguration : "homeSite"
    HomeSite ||--o{ PermissionGrant : "homeSite"

    User {
        String objectId PK
        String username
        String email
        String password
        String fullName
        String role
        Date createdAt
        Date updatedAt
    }

    HomeSite {
        String objectId PK
        String siteCode
        String addressLabel
        String setupStatus
        String primaryContactId FK
        Date createdAt
        Date updatedAt
    }

    DevicePairingLog {
        String objectId PK
        String homeSiteId FK
        String deviceName
        String deviceType
        String pairingStatus
        Date pairedAt
        String technicianId FK
        Date createdAt
        Date updatedAt
    }

    HubConfiguration {
        String objectId PK
        String homeSiteId FK
        String hubModel
        String firmwareVersion
        String networkName
        String pairingMode
        String configuredById FK
        Date createdAt
        Date updatedAt
    }

    PermissionGrant {
        String objectId PK
        String homeSiteId FK
        String granteeId FK
        String accessLevel
        String status
        Date grantedAt
        Date createdAt
        Date updatedAt
    }

智能家居设置集成流程

典型的认证、家庭站点查找、中心配置、设备配对日志和权限授予的运行流程。

查看图表源
Mermaid
sequenceDiagram
  participant User
  participant App as Smart Home Setup Tracker App
  participant Back4app as Back4app Cloud

  User->>App: Sign in to review a home installation
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open HomeSite list
  App->>Back4app: GET /classes/HomeSite?include=primaryContact
  Back4app-->>App: HomeSite rows with setupStatus

  User->>App: Save a DevicePairingLog
  App->>Back4app: POST /classes/DevicePairingLog
  Back4app-->>App: DevicePairingLog objectId

  User->>App: Update HubConfiguration
  App->>Back4app: PUT /classes/HubConfiguration/:objectId
  Back4app-->>App: HubConfiguration saved

  App->>Back4app: Subscribe to live changes for PermissionGrant
  Back4app-->>App: PermissionGrant updates

设置数据字典

智能家居设置模式中每个类的完整字段级参考。

字段类型描述必需
objectIdStringAuto-generated unique identifier自动
usernameStringUser login name
emailStringUser email address
passwordStringHashed password (write-only)
fullNameStringDisplay name for the installer, coordinator, or homeowner
roleStringRole of the user (e.g., coordinator, field-tech, homeowner)
createdAtDateAuto-generated creation timestamp自动
updatedAtDateAuto-generated last-update timestamp自动

8 字段在 User 中

安全性和权限

ACL 和 CLP 策略如何保护用户、主站、中心配置、设备配对日志和权限授予。

用户拥有的帐户控制

只有用户可以更新或删除他们的个人资料;其他人不能修改用户内容。

主站和中心的完整性

只有经过授权的工作人员可以创建或更改 HomeSite 和 HubConfig 记录。使用 Cloud Code 进行验证。

范围设置访问

将 DevicePairingLog 和 PermissionGrant 读取限制为分配给该家庭现场的人。

模式 (JSON)

准备好复制到 Back4app 的原始 JSON 模式定义或用作实施参考。

JSON
{
  "classes": [
    {
      "className": "User",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "fullName": {
          "type": "String",
          "required": true
        },
        "role": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "HomeSite",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "siteCode": {
          "type": "String",
          "required": true
        },
        "addressLabel": {
          "type": "String",
          "required": true
        },
        "setupStatus": {
          "type": "String",
          "required": true
        },
        "primaryContact": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "DevicePairingLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "homeSite": {
          "type": "Pointer",
          "required": true,
          "targetClass": "HomeSite"
        },
        "deviceName": {
          "type": "String",
          "required": true
        },
        "deviceType": {
          "type": "String",
          "required": true
        },
        "pairingStatus": {
          "type": "String",
          "required": true
        },
        "pairedAt": {
          "type": "Date",
          "required": true
        },
        "technician": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "HubConfiguration",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "homeSite": {
          "type": "Pointer",
          "required": true,
          "targetClass": "HomeSite"
        },
        "hubModel": {
          "type": "String",
          "required": true
        },
        "firmwareVersion": {
          "type": "String",
          "required": true
        },
        "networkName": {
          "type": "String",
          "required": true
        },
        "pairingMode": {
          "type": "String",
          "required": true
        },
        "configuredBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "PermissionGrant",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "homeSite": {
          "type": "Pointer",
          "required": true,
          "targetClass": "HomeSite"
        },
        "grantee": {
          "type": "Pointer",
          "required": true,
          "targetClass": "User"
        },
        "accessLevel": {
          "type": "String",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "grantedAt": {
          "type": "Date",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

与 AI 代理构建

使用 Back4app AI 代理从这个模板生成一个真实的智能家居设置跟踪应用程序,包括前端、后端、身份验证,以及家庭、中心、日志和权限流程。

Back4app AI 代理
准备建立
在 Back4app 上创建一个智能家居设置跟踪器应用后端,使用此精确的架构和行为。

架构:
1. 用户(使用 Back4app 内置):用户名,电子邮件,密码;objectId,createdAt,updatedAt(系统)。
2. HomeSite:昵称(字符串,必填),地址标签(字符串,必填),安装人员备注(字符串);objectId,createdAt,updatedAt(系统)。
3. HubConfig:homeSite(指向 HomeSite 的指针,必填),wifiSsid(字符串,必填),时区(字符串,必填),自动化模式(字符串,必填);objectId,createdAt,updatedAt(系统)。
4. DevicePairingLog:homeSite(指向 HomeSite 的指针,必填),设备名称(字符串,必填),设备类型(字符串,必填),配对状态(字符串,必填),配对时间(日期,必填),技术人员备注(字符串);objectId,createdAt,updatedAt(系统)。
5. PermissionGrant:homeSite(指向 HomeSite 的指针,必填),用户(指向用户的指针,必填),角色(字符串,必填),访问级别(字符串,必填);objectId,createdAt,updatedAt(系统)。

安全性:
- 只有用户可以更新/删除其个人资料。只有授权的员工可以创建/更改 HomeSite 和 HubConfig。限制 DevicePairingLog 和 PermissionGrant 的读取权限,只允许指定的用户。使用云代码进行验证。

认证:
- 注册、登录、登出。

行为:
- 列出家庭站点,记录设备配对日志,更新集线器配置和管理权限。

交付:
- 带有架构、ACL 和 CLP 的 Back4app 应用;用于家庭站点、集线器配置、设备配对日志和权限授予的前端。

按下面的按钮打开代理,其中填充了此模板提示。

这是没有技术后缀的基础提示。您可以在之后调整生成的前端栈。

几分钟内部署每月50个免费提示无需信用卡

API 游乐场

尝试针对智能家居设置架构的 REST 和 GraphQL 端点。响应使用模拟数据,无需 Back4app 账户。

加载演示场…

使用与此模板相同的架构。

选择您的技术

展开每个卡片以查看如何将 HomeSite、HubConfig 和 DevicePairingLog 集成到您选择的技术栈中。

Flutter 智能家居设置后端

React 智能家居设置后端

React 原生 智能家居设置后端

Next.js 智能家居设置后端

JavaScript 智能家居设置后端

Android 智能家居设置后端

iOS 智能家居设置后端

Vue 智能家居设置后端

Angular 智能家居设置后端

GraphQL 智能家居设置后端

REST API 智能家居设置后端

PHP 智能家居设置后端

.NET 智能家居设置后端

您可以获得的每项技术

每个技术栈使用相同的智能家居设置后端架构和 API 合同。

统一的智能家居数据结构

通过一致的架构轻松管理家居站点、中心配置、配对日志和权限。

供安装人员使用的设备配对日志

跟踪每个设备的配对尝试、重试和完成状态。

中心配置支持

存储每个安装的Wi‑Fi、时区和自动化设置。

可自定义的用户权限

为管理人员、协调员、安装人员和居民定义访问级别。

REST/GraphQL APIs用于智能家居应用程序

将移动仪表板、网页控制台和现场工具与灵活的API集成。

为运营团队提供可扩展的架构

添加服务访问、设备清单或维护检查而不破坏现有的设置记录。

智能家居框架比较

比较所有支持的技术中的设置速度、SDK风格和AI支持。

框架设置时间智能家居好处SDK类型AI支持
约5分钟安装程序和协调器应用的单一代码库。类型化SDK完整
不到 5 分钟快速的网络仪表板用于配对日志。类型化 SDK完整
~3–7 分钟用于现场员工的跨平台移动应用。类型化 SDK完整
快速(5 分钟)设置用于家庭设置审核的服务器渲染控制台。类型化 SDK完整
~3–5 分钟用于智能家居操作的轻量级网页集成。输入 SDK完整
约 5 分钟适用于安装团队的原生 Android 应用。输入 SDK完整
不到 5 分钟适用于移动设置检查的原生 iOS 应用。输入 SDK完整
~3–7 分钟React 适用于设置跟踪的网页用户界面。输入的 SDK完整
快速(5分钟)设置企业网页应用程序,用于权限和日志。输入的 SDK完整
不到2分钟灵活的 GraphQL API,用于智能家居设置。GraphQL API完整
快速(2分钟)设置REST API 集成用于设置跟踪。REST API完整
~3分钟服务器端 PHP 后端用于安装工具。REST API完整
~3–7分钟.NET 后端用于操作仪表板。已输入的 SDK完整

设置时间反映从项目引导到使用此模板架构的第一个HomeSite或DevicePairingLog查询的预期持续时间。

常见问题

有关使用此模板构建智能家居设置跟踪器后端的常见问题。

智能家居设置团队在办公室和现场之间最浪费的时间在哪里?
智能家居设置模型的分配、状态和部件使用应如何管理,而不使架构过于复杂?
随着业务添加 SKU 或服务,演变智能家居设置实体的最安全方法是什么?
我如何使用 Flutter 对 HomeSite 和 HubConfig 进行查询?
我如何使用 Next.js Server Actions 管理智能家居设置权限?
React 本地是否可以离线缓存 DevicePairingLog 记录?
我如何防止未授权的中心更改?
在 Android 上显示配对日志的最佳方式是什么?
智能家居设置流程是如何从头到尾工作?
这个智能家居设置跟踪器模板由哪些类驱动?

受到全球开发者的信任

与 Back4app 模板一起,加快团队发布智能家居设置产品的速度

G2 Users Love Us Badge

准备好构建您的智能家居设置跟踪器了吗?

在几分钟内开始您的智能家居设置项目。无需信用卡。

选择技术