MiService

MiService

小米云服务开源库 支持小爱音箱多功能控制

MiService是一个开源的Python库,用于访问小米云服务。该项目支持小爱音箱的多种控制功能,包括音乐播放、语音播报和设备信息查询。作为原MiService的分支,MiService增添了新功能,为开发者提供了操作小米设备的便捷接口和命令行工具。此开源项目不仅支持基本的小爱音箱控制,还新增了循环播放、播放列表和硬件信息查看等功能。MiService提供了简洁的命令行界面,便于用户快速上手和操作小米设备。

MiService小米云服务音箱控制命令行工具AI语音助手Github开源项目

MiService

小米云服务(适用于mi.com) 这是从https://github.com/Yonsm/MiService fork而来的项目,为xiaogpt做了一些修改

如果遇到无法登录的问题,请参考置顶issue。如果仍然无法解决,请留言

本fork新增功能

-> 播放音乐

micli play ${mp3_url} 
micli pause

-> 播放音乐高级版

micli loop ${mp3_url}  # 循环播放
micli pause

# 创建一个名为test.txt的播放列表
cat test.txt
# http://192.168.6.212:8000/public/s4.mp3
# http://192.168.6.212:8000/public/s1.mp3
# http://192.168.6.212:8000/public/s2.mp3
# http://193.168.6.212:8000/public/s3.mp3

micli play_list test.txt # 播放列表

-> 播放suno.ai热门内容

micli suno 

-> 随机播放suno.ai热门内容

micli suno_random

-> 查看硬件信息

micli mina

安装

pip3 install -U miservice_fork
或 
pip3 install .

库结构

MiService:小米云服务
  |
  |-- MiAccount:账户服务
  |-- MiBaseService:(如有需要,待实现)
  |     |
  |     |-- MiIOService:MiIO服务(sid=xiaomiio)
  |     |     |
  |     |     |-- MIoT_xxx:MIoT服务,基于MiIO
  |     |
  |     |-- MiNAService:小爱同学服务(sid=micoapi)
  |     |
  |     |-- MiAPIService:(待实现)
  |-- MiIOCommand:MiIO命令风格接口

命令行

使用方法:必须设置以下环境变量:
           export MI_USER=<用户名>
           export MI_PASS=<密码>
           export MI_DID=<设备ID|名称>

获取属性:micli <siid[-piid]>[,...]
           micli 1,1-2,1-3,1-4,2-1,2-2,3
设置属性:micli <siid[-piid]=[#]value>[,...]
           micli 2=#60,2-2=#false,3=test
执行动作:micli <siid[-piid]> <arg1|#NA> [...] 
           micli 2 #NA
           micli 5 Hello
           micli 5-4 Hello #1

调用MIoT:micli <cmd=prop/get|/prop/set|action> <params>
           micli action '{"did":"267090026","siid":5,"aiid":1,"in":["Hello"]}'

调用MiIO:micli /<uri> <data>
           micli /home/device_list '{"getVirtualModel":false,"getHuamiDevices":1}'

设备列表:micli list [name=full|name_keyword] [getVirtualModel=false|true] [getHuamiDevices=0|1]
           micli list Light true 0

MIoT规范:micli spec [model_keyword|type_urn] [format=text|python|json]
           micli spec
           micli spec speaker
           micli spec xiaomi.wifispeaker.lx04
           micli spec urn:miot-spec-v2:device:speaker:0000A015:xiaomi-lx04:1

MIoT解码:micli decode <ssecurity> <nonce> <data> [gzip]

使用步骤及示例:

请在Mac OS或Linux下执行,Windows下虽然可能也能支持,但可能需要修改

1. 首先设置账号

export MI_USER=<用户名>
export MI_PASS=<密码>

2. 查询自己的设备

micli list

这将显示您账号下的设备列表,包括名称、类型、DID、Token等信息。

3. 设置DID

为了后续操作,请设置设备ID(来自上面命令的结果)。

export MI_DID=<设备ID|名称>

4. 查询设备的接口文档

查询设备的MIoT接口能力描述:

micli spec xiaomi.wifispeaker.lx04

这包括属性获取、属性设置和动作调用三种描述。

5. 查询音量属性

micli.py 2-1

其中2siid1piid(如果是1则可以省略),可从spec接口描述中查得。

6. 设置音量属性

micli.py 2=#60

siidpiid规则同属性查询命令。注意#号表示整数类型,如果不带则默认为文本字符串类型,需根据接口描述文档确定类型。

7. 动作调用:TTS播报和执行文本

以下命令执行后小爱音箱会播报"您好":

micli.py 5 您好

其中,5为siid,此处省略了1aiid

以下命令执行效果相当于直接对音箱说"小爱同学,查询天气":

micli.py 5-4 查询天气 #1

其中#1表示设备语音回应,如果要执行默默关灯(不要音箱回应),可以如下:

micli.py 5-4 关灯 #0

8. 播放音乐

micli play ${mp3_url} 
micli pause

9. 播放音乐高级版

micli loop ${mp3_url}  # 循环播放
micli pause

# 创建一个名为test.txt的播放列表
cat test.txt
# http://192.168.6.212:8000/public/s4.mp3
# http://192.168.6.212:8000/public/s1.mp3
# http://192.168.6.212:8000/public/s2.mp3
# http://193.168.6.212:8000/public/s3.mp3

micli play_list test.txt # 播放列表

10. 其它应用

在扩展插件中使用,例如,参考ZhiMsg小爱同学TTS播报/执行插件

编辑推荐精选

音述AI

音述AI

全球首个AI音乐社区

音述AI是全球首个AI音乐社区,致力让每个人都能用音乐表达自我。音述AI提供零门槛AI创作工具,独创GETI法则帮助用户精准定义音乐风格,AI润色功能支持自动优化作品质感。音述AI支持交流讨论、二次创作与价值变现。针对中文用户的语言习惯与文化背景进行专门优化,支持国风融合、C-pop等本土音乐标签,让技术更好地承载人文表达。

lynote.ai

lynote.ai

一站式搞定所有学习需求

不再被海量信息淹没,开始真正理解知识。Lynote 可摘要 YouTube 视频、PDF、文章等内容。即时创建笔记,检测 AI 内容并下载资料,将您的学习效率提升 10 倍。

AniShort

AniShort

为AI短剧协作而生

专为AI短剧协作而生的AniShort正式发布,深度重构AI短剧全流程生产模式,整合创意策划、制作执行、实时协作、在线审片、资产复用等全链路功能,独创无限画布、双轨并行工业化工作流与Ani智能体助手,集成多款主流AI大模型,破解素材零散、版本混乱、沟通低效等行业痛点,助力3人团队效率提升800%,打造标准化、可追溯的AI短剧量产体系,是AI短剧团队协同创作、提升制作效率的核心工具。

seedancetwo2.0

seedancetwo2.0

能听懂你表达的视频模型

Seedance two是基于seedance2.0的中国大模型,支持图像、视频、音频、文本四种模态输入,表达方式更丰富,生成也更可控。

nano-banana纳米香蕉中文站

nano-banana纳米香蕉中文站

国内直接访问,限时3折

输入简单文字,生成想要的图片,纳米香蕉中文站基于 Google 模型的 AI 图片生成网站,支持文字生图、图生图。官网价格限时3折活动

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成AI工具AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机AI图像热门
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

下拉加载更多