Project Icon

MiService

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

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

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播报/执行插件

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

稿定AI

稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号