Metadata-Version: 2.1 Name: mficlient Version: 0.5.0 Summary: A remote control client for Ubiquiti's UVC NVR Home-page: https://github.com/uilibs/mficlient License: MIT Author: Dan Smith Author-email: dsmith+mficlient@danplanet.com Requires-Python: >=3.10 Classifier: Development Status :: 5 - Production/Stable Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: MIT License Classifier: Natural Language :: English Classifier: Operating System :: OS Independent Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.10 Classifier: Programming Language :: Python :: 3.11 Classifier: Programming Language :: Python :: 3.12 Classifier: Topic :: Software Development :: Build Tools Classifier: Topic :: Software Development :: Libraries Requires-Dist: requests (>=2.26.0,<3.0.0) Project-URL: Bug Tracker, https://github.com/uilibs/mficlient/issues Project-URL: Changelog, https://github.com/uilibs/mficlient/blob/main/CHANGELOG.md Project-URL: Repository, https://github.com/uilibs/mficlient Description-Content-Type: text/x-rst Client for Ubiquiti's mFi system ================================ The APIs in this library (and tool) should not be considered stable! To install:: $ pip install mficlient To get started, set your connection information like this:: $ export MFI="https://user:password@192.168.1.123:6443" Then you can run the client, doing something like:: $ mfi dump_sensors Model | Label | Tag | Value | Extra ------------------------------------------------------------------------------- Output 12v | Relay Control | output | 0 | 0.0 Output 24v | Relay | output | 0 | 0.0 Ubiquiti mFi-THS | Temp | temperature | 14.3 | None Input Digital | Garage Door | input | 1 | None Outlet | Heater Control | active_pwr | 5.810242 | 1.0 Ubiquiti mFi-CS | Furnace | amps | 1.0539 | None Ubiquiti mFi-CS | Water Heater | amps | 0.0 | None $ mfi control_device --device 'Heater Control' --state on Client API example:: >>> c = mficlient.MFiClient('192.168.1.123', 'admin', 'password') >>> p = c.get_port(label='Water Heater Control') >>> p.model 'Outlet' >>> p.value 5.746462 >>> p.tag 'active_pwr' >>> p.data {'rpt_time': 1456258144771, 'mac': 'redacted', 'locked': False, 'label': 'Water Heater Control', 'wattHours': 8001.875, 'y': 222.18320610687024, 'map_id': 'redacted', 'output': 1.0, 'fovrotation': 0, 'active_pwr': 5.746462, 'pf': 0.678653, 'reported_val': 1.0, '_id': 'redacted', 'i_rms': 0.069931, 'fovradius': 10, 'v_rms': 121.082737, 'val_time': 1456258144000, 'port': '1', 'energy_sum': 8001.875, 'wattHoursBase': 0.0, 'tag': 'active_pwr', 'val': 5.746462, 'wh_rpt_time': 1456258144761, 'model': 'Outlet', 'x': 564.8839694656489, 'fovangle': 1.5707963267948966, 'output_val': 1.0} >>> p.control(False)