Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iPolloBot

Lightweight IoT gateway with AI-powered device control via messaging platforms.

轻量级 IoT 智能网关,通过即时通讯平台实现 AI 驱动的设备控制。


Features / 功能特性

  • MQTT Broker — Built-in broker for IoT device connectivity / 内置 MQTT Broker,设备即连即用
  • LLM Integration — Natural language device control via DeepSeek, OpenAI, Qwen, Kimi, GLM, Claude, Ollama / 自然语言控制设备,支持多种大模型
  • Messaging Channels — Telegram, Feishu (飞书), WeChat / 多通道消息接入
  • REST API — Device management, telemetry query, command dispatch / 设备管理、遥测查询、指令下发
  • Upstream Bridge — WebSocket connection to OpenClaw Gateway / 上游网关 WebSocket 桥接
  • Cross-platform — Single binary, supports ARM/MIPS/x86 / 单二进制,支持 ARM/MIPS/x86 交叉编译
  • SDKs — Go, Swift, Kotlin, TypeScript

Architecture / 架构

┌─────────────┐     MQTT      ┌──────────────┐     WebSocket     ┌──────────────────┐
│  IoT Device │ ──────────▶  │  iPolloBot   │ ──────────────▶  │  OpenClaw Gateway │
│  (Sensors)  │  telemetry   │  Gateway     │   node role      │  (AI Agent)       │
│             │ ◀──────────  │              │ ◀──────────────  │                   │
│             │   command    │              │   invoke         │                   │
└─────────────┘              └──────┬───────┘                  └──────────────────┘
                                    │
                         REST API + Channels
                                    │
                    ┌───────────────┼───────────────┐
                    │               │               │
              ┌─────┴─────┐  ┌─────┴─────┐  ┌─────┴─────┐
              │  Telegram  │  │   Feishu  │  │  WeChat   │
              └───────────┘  └───────────┘  └───────────┘

Quick Start / 快速开始

# Build / 编译
make build

# Run / 运行
./iPolloBot --config iPolloBot.example.json

# Or use Docker / 或使用 Docker
make docker
docker run -p 1883:1883 -p 18801:18801 ipollobot:0.1.0

Configuration / 配置

Copy iPolloBot.example.json and edit:

复制 iPolloBot.example.json 并修改:

{
  "llm": {
    "provider": "deepseek",
    "model": "deepseek-chat",
    "apiKey": "your-api-key"
  },
  "channels": {
    "feishu": {
      "enabled": true,
      "appId": "your-app-id",
      "appSecret": "your-app-secret"
    }
  }
}

Chat Commands / 聊天指令

Talk to the bot naturally, or use commands:

直接对话即可控制设备,也可使用指令:

Command Description
把客厅灯打开 Turn on the living room light
查看温度传感器 Check temperature sensor
/devices List all devices / 设备列表
/status System status / 系统状态
/reset Reset conversation / 重置对话
/help Help / 帮助

REST API

Method Path Description
GET /api/health Health check / 健康检查
GET /api/devices List devices / 设备列表
GET /api/devices/{id} Device detail / 设备详情
POST /api/devices/{id}/command Send command / 下发指令
GET /api/devices/{id}/telemetry Query telemetry / 查询遥测

Auth: Authorization: Bearer <token>

MQTT Topics

Topic Direction Description
iot/{deviceId}/telemetry Device → Gateway Report sensor data / 上报数据
iot/{deviceId}/command Gateway → Device Send command / 下发指令
iot/{deviceId}/command/res Device → Gateway Command result / 指令结果

Cross Compilation / 交叉编译

make build-all
# iPolloBot-linux-amd64    (x86 server)
# iPolloBot-linux-arm64    (Raspberry Pi 4/5, Jetson)
# iPolloBot-linux-armv7    (Raspberry Pi 3)
# iPolloBot-linux-mips     (Router / Embedded)
# iPolloBot-darwin-arm64   (macOS)
# iPolloBot-windows-amd64  (Windows)

Supported LLM Providers / 支持的大模型

Provider Models
DeepSeek deepseek-chat, deepseek-reasoner
OpenAI gpt-4o, gpt-4o-mini
Qwen (通义千问) qwen-turbo, qwen-plus, qwen-max
Kimi (月之暗面) moonshot-v1-8k, moonshot-v1-128k
GLM (智谱) glm-4, glm-4-flash
Claude claude-3.5-sonnet, claude-3-haiku
Ollama Any local model / 任意本地模型

Author / 开发者

JackClaw

License

MIT

About

iot

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages