pyvesync是管理etekcity交换机的库
pyvesync的Python项目详细描述
Pyvesync
Pyvesync是一个用于管理与Vesync兼容的智能家庭设备的库。
安装
从pip安装最新版本:
pipinstallpyvesync
支持的设备
- Eteccity Voltson智能WiFi插座(7A型号ESW01-USA)
- ETEKCITY Voltson智能WiFi插座(10A型号ESW01-EU)
- Eteccity Voltson智能WiFi插座(10A型号ESW03-USA)
- Eteccity Voltson智能WiFi插座(15A型号ESW15-USA)
- ETEKCITY双插头室外插座(ESO15-TB)(每个插头是一个单独的对象,两个插头的能量读数是组合的)
- ETEKCITY智能WiFi灯开关(ESWL01型)
- Levoit智能WiFi空气净化器(LV-PUR13S)
- ETEKCITY软白色可调光智能灯泡(ESL100)
用法
从模块开始:
frompyvesyncimportVeSyncmanager=VeSync("EMAIL","PASSWORD",time_zone=DEFAULT_TZ)manager.login()manager.update()my_switch=manager.outlets[0]# Turn on the first switchmy_switch.turn_on()# Turn off the first switchmy_switch.turn_off()# Get energy usage datamanager.update_energy()# Display outlet device informationfordeviceinmanager.outlets:device.display()
配置
时区
参数是可选的,但指定的时区必须与TZ数据库(IANNA时区数据库)中的时区匹配,请参阅此链接以获取参考:
TZ数据库。
时区决定智能插座的能源历史记录是如何生成的,即一周的能源历史记录从周日上午12:01开始,在指定的时区。如果未输入时区或无效时区,则默认值为"美国/纽约"
#Devices are respectively located in their own lists that can be iterated overmanager.outlets=[VeSyncOutletObjects]manager.switches=[VeSyncSwitchObjects]manager.fans=[VeSyncFanObjects]manger.bulbs=[VeSyncBulbObjects]
如果要连续轮询插座,可以设置自定义的能量更新间隔-默认值为6小时(21600秒)
manager.energy_update_interval=time# time in seconds
示例用法
获取插座的电量指标
forsinmanager.outlets:s.update_energy(check_bypass=False)# Get energy history for each device
API详细信息
管理器API
vesync.get_devices()
-返回设备列表
vesync.login()
-使用类用户名和密码登录到vesync
vesync.update()
-获取有关设备的更新信息
vesync.update_all_devices()
-获取所有设备的详细信息(运行vesyncdevice.update()
)
vesync.update_energy(bypass_check=false)
-获取所有门店的能源历史记录-构建周、月和年嵌套能源字典。设置bypass_check=true
以禁用库检查更新间隔
设备API
vesyncdevice.turn_on()
-打开设备
vesyncdevice.turn_off()
-关闭设备
vesyncdevice.update()
-获取有关设备的更新信息
vesyncdevice.active_time
-以分钟为单位返回设备的活动时间
vesyncdevice.get_config()
-检索设备的固件版本等配置数据,并存储在vesyncdevice.config
字典中
vesyncdevice.firmware_update
-如果固件有可用的更新,则返回true。vesyncdevice.get_config()
必须首先调用
出口比能量API
vesyncoutlet.update_energy(bypass_check=false)
-获取出口能源历史记录-生成周、月和年嵌套能源字典。设置bypass_check=true
以禁用库检查更新间隔
vesyncoutlet.energy_today
-返回当前的用电量(kWh)
vesyncoutlet.power
-返回设备的当前功率(瓦)
vesyncoutlet.voltage
-返回当前电压读数
vesyncoutlet.weekly_energy_total
-返回过去一周的总能量读数(kWh),从周日上午12:01开始
vesyncoutlet.monthly_energy_total
-返回上个月的总能量读数(kWh)
Vesyncoutlet.年能源总量代码>-返回过去一年的总能量读数(kWh)
型号ESW15-USA 15A/1800W API
矩形智能交换机模型在常规api调用的基础上支持一些附加功能
vesyncoutlet.打开夜光灯()
-打开夜光灯
vesyncoutlet.关闭夜光()
-关闭夜光
空气净化器LV-PUR131S功能
vesyncfan.fan_level
-返回风扇的级别(1-3)或0表示关闭
vesyncfan.filter_life
-返回过滤器剩余寿命的百分比
Vesyncfan.空气质量
-回风质量读数
vesyncfan.auto_mode()
-将模式更改为auto
vesyncfan.manual_mode()
-将风扇模式更改为手动,风扇级别为1
vesyncfan.sleep_mode()
-将风扇模式更改为睡眠模式
vesyncfan.更改风扇速度(速度)
-将风扇速度更改为1、2或3级
vesyncfan.screen\u status
-获取屏幕开/关状态
智能灯泡API
vesyncbulb.设置亮度(亮度)
-将灯泡亮度值设置为1-100
注释
通过检查vesyncoutlet.energy
字典,可以在vesyncoutlet
中获得更详细的数据。
vesyncoutlet.energy
对象包括3个嵌套字典week
,month
和year
包含详细的周、月和年数据
VesyncOutlet.energy['week']['energy_consumption_of_today']VesyncOutlet.energy['week']['cost_per_kwh']VesyncOutlet.energy['week']['max_energy']VesyncOutlet.energy['week']['total_energy']VesyncOutlet.energy['week']['data']# which itself is a list of values
与家庭助理集成
此库与Home Assistant集成,有关文档,请访问https://www.home-assistant.io/components/vesync/" rel="nofollow">https://www.home-assistant.io/components/vesync/。与此存储库相比,Home助手附带的库版本可能落后于开发,因此,希望使用最新版本的用户可以执行以下操作以与HA集成。
- 将
自定义组件
目录添加到家庭助手配置目录 - 在
自定义组件中添加一个
vesync
目录作为目录- 将
switch.py
添加到vesync
目录中- 向
vesync
目录添加\uu init\uuuu.py
- 将
manifest.json
添加到vesync
目录中- 将以下配置添加到家庭助理
configuration.yaml
文件: - 将
vesync:username:VESYNC_USERNAMEpassword:VESYNC_PASSWORD
- 重新启动家庭助手
自定义组件
目录应包含以下文件:
custom_components/vesync/__init__.py custom_components/vesync/switch.py custom_components/vesync/fan.py custom_components/vesync/manifest.json
manifest.json
中定义的库版本现在应该在Home助手中加载。