天猫精灵音箱接入Home Assistant的设备

molobot-master.zip (279.4 KB)

中文简介

molo团队出品
molo交流QQ群: 776817275或598514359


这是一个能让天猫精灵接入Home Assistant的组件. 通过使用此组件可以实现用语音让天猫精灵控制家里已经连上HA的硬件.

本组件不会上传用户所绑定天猫精灵的手机号和密码到服务器上, 而是将其通过SHA1哈希算法生成token来与阿里平台交互, 账号数据对于服务器透明, 不用担心账号安全问题:

# molo_bot_client.py: get_phonesign(): Line 99
...
hkey = ("molobot:%s:%s" % (phone, password)).encode('utf-8')
self._phone_sign = hashlib.sha1(hkey).hexdigest()
return self._phone_sign
...

安装MoloBot

一键安装

在终端直接执行下面命令一键安装molobot:

python <(curl "https://raw.githubusercontent.com/haoctopus/molobot/master/auto_install.py" -s -N)

等待提示安装成功后手动重启Home Assistant即可。

若此方法安装失败,请用下面的方法手动安装。有curl组件的Windows用户也可以通过cmd

手动安装

1、下载molobot文件夹,保存在<homeassistant配置目录>/custom_components/目录中,若custom_components目录不存在则自行创建。

2、编辑<homeassistant配置目录>/custom_components/configuration.yaml文件,添加如下配置

molobot:
  phone: 131xxxxxxxx  # 天猫精灵绑定的手机号
  password: 123456    # 绑定密码
  • homeassistant配置目录在哪?

Windows用户: %APPDATA%\.homeassistant

Linux-based用户: 可以通过执行locate .homeassistant/configuration.yaml命令,查找到的.homeassistant文件夹就是配置目录。

群晖Docker用户: 进入Docker - 映像 - homeassistant - 高级设置 - 卷, /config对应的路径就是配置目录

天猫精灵app中配置实例

  • 安装最新版天猫精灵APP
  • 打开天猫精灵APP
  • 点击我的TAB
  • 点击添加智能设备
  • 搜索molobot
  • 点击MoloBot M1
  • 点击绑定平台账号
  • 填写手机号密码
  • 确认授权,返回我的TAB,智能家居下查看全部

高级配置

设备分组查询或控制

比如小米传感器支持温度、湿度,在ha中被分为两个设备,但猫精不支持两个相同设备再同一房间,此时可以如下解决

molobot:
  phone: 131********
  password: ******

  group:
    - name: test_input #多开关控制,查询时其中一个为关,则状态为关
      entities:
        - input_boolean.notify_home1
        - input_boolean.notify_home2

    - name: test_sensor #可同时查询温度、湿度
      entities:
        - sensor.humidity_1
        - sensor.temperature_2

自定义设备至天猫精灵的过滤配置,慎重配置,可能导致天猫精灵获取不到设备

molobot:
  phone: 131********
  password: ******

  filter:
    #白名单,只同步在白名单内的列表
    include_domains:
      #配置同exclude_domains

    include_entities:
      #配置同exclude_entities

    #黑名单,设备不同步至天猫精灵
    exclude_domains: #按domain过滤
      - input_boolean #过滤所有传感器

    exclude_entities: #按设备ID过滤
      - light.gateway_light_1 #设备1
      - light.gateway_light_2 #设备2

禁止welcome molobot的通知提醒

molobot:
  phone: 131********
  password: ******

  disablenotify: true

支持设备及属性

目前支持的设备类型有: 灯、开关、传感器、风扇、空调、摄像头、播放器、二元选择器.

目前支持的属性: 亮度、颜色、开关、温度、湿度、模式.

灯支持调整颜色
空调支持更换模式,自动、制冷、制热、通风、送风、除湿;支持调节温度
空调、风扇风速支持 自动、低风、中风、高风、最小、最大
摄像头、播放器、二元选择器 只支持开关

备注

注意,由于天猫精灵本身不支持自定义别名,在绑定成功后请在app中对设备设置位置和别名,否则将不能对这些设备进行操作。例如在“客厅”内有两个“灯”,则这两个灯都不能正常操作,需要改为“卧室”的“灯”和“客厅”的“灯”,或者改为“客厅”的“灯”和“客厅”的“吊灯”,才能正常操作。

相关链接

平台网站:https://www.molo.cn

molobot组件:https://github.com/haoctopus/molobot

联系我们

如果安装和使用过程中遇到任何问题,可以通过以下方式联系我们,我们将在看到反馈后第一时间作出回应:

QQ群: 776817275或者598514359


绑定成功后就能在天猫精灵app中看到HA中绑定的设备.

期待能接入iob

我也好期待。。。

昨天体验了下,不知道是不是姿势不对。
我客厅用个控客的开关控制电视开跟关,
同步到猫精里,你说打开电视,但这是个开关的类,猫精是不会执行这个动作的,
不知道怎么样修改类,
包括热水器也是,我也是用个开关控制热水器的开跟关,你说打开热水器,也是不能执行的,
后面换回oath2自搭服务那种方式,通过自定义类来实现电视跟热水器的控制了。