A Python client for interacting with IKuai routers
Project description
PyIKuaiClient
A Python client for interacting with IKuai routers.
How to install
pip install pyikuai
Usage
from pyikuai import IKuaiClient
ikuai_client = IKuaiClient(
url="http://192.168.1.1",
username="your/ikuai/username",
password="your/ikuai/password"
)
Implemented functionality
mac_group
>>> ikuai_client.list_mac_groups() # get the mac_groups configured
{'total': 2,
'data': [{'id': 1,
'comment': '',
'group_name': 'IPAD',
'addr_pool': '34:b8:ec:42:91:2d'},
{'id': 2,
'comment': 'foo,%20bar',
'group_name': 'test',
'addr_pool': '43:a9:fc:43:97:3d,43:a9:fc:43:97:3f'}]}
>>> ikuai_client.del_mac_group(group_id=3) # delete mac_group with id 3
{'Result': 30000, 'ErrMsg': 'Success'} # succeed even that id does not exists.
>>> ikuai_client.add_mac_group(
group_name="test2",
addr_pools=['43:a9:fc:43:97:3d', '43:a9:fc:43:97:3f'],
comments=["foo2", "bar2"])
{'Result': 30000, 'ErrMsg': 'Success', 'RowId': 3}
>>> ikuai_client.edit_mac_group( # update mac_group id 3 with new comments
group_id=3,
group_name="test2",
addr_pools=['43:a9:fc:43:97:3d', '43:a9:fc:43:97:3f'],
comments=["foo3", "bar3"])
{'Result': 30000, 'ErrMsg': 'Success'}
acl_l7
The functionality related to behavioral control of devices connected, via protocol.
The implemented methods include
add_acl_l7
, list_acl_l7
, edit_acl_l7
, del_acl_l7
, disable_acl_l7
, enable_acl_l7
.
domain_blacklist
The functionality related to behavioral control of devices connected, via domain blacklist.
The implemented methods include
add_domain_blacklist
, list_domain_blacklist
, edit_domain_blacklist
, del_domain_blacklist
,
disable_domain_blacklist
, enable_domain_blacklist
sysstat
Get the system statistics.
>>> ikuai_client.get_sysstat()
{'verinfo': {'modelname': '',
'verstring': '3.7.10 x32 Build202401231339',
'version': '3.7.10',
'build_date': 202401231339,
'arch': 'x86',
'sysbit': 'x32',
'verflags': '',
'is_enterprise': 0,
'support_i18n': 0,
'support_dingtalk': 1,
'support_lcd': 0,
'bootguide': 'hd'},
'cpu': ['0.00%', '0.00%'],
'memory': {'total': 886264,
'available': 618720,
'free': 538644,
'cached': 45460,
'buffers': 69132,
'used': '30%'},
'stream': {'connect_num': 52,
'upload': 821,
'download': 432,
'total_up': 671137724,
'total_down': 4459837833},
'cputemp': []}
>>> ikuai_client.get_sysstat(["verinfo"])
{'verinfo': {'modelname': '',
'verstring': '3.7.10 x32 Build202401231339',
'version': '3.7.10',
'build_date': 202401231339,
'arch': 'x86',
'sysbit': 'x32',
'verflags': '',
'is_enterprise': 0,
'support_i18n': 0,
'support_dingtalk': 1,
'support_lcd': 0,
'bootguide': 'hd'}}
monitor_lanip & monitor_lanipv6
Get the monitor list of lanip (v4) or lanipv6. For v4, use ikuai_client.list_monitor_lanip()
. For v6, use ikuai_client.list_monitor_lanip(ip_type='v6')
.
acl_mac
The access control of device via mac address. The implemented methods include: add_acl_mac
, list_acl_mac
, edit_acl_mac
, del_acl_mac
, enable_acl_mac
, disable_acl_mac
.
mac_comment
The management of alias of devices, mapping mac addresses. The implemented methods include: add_mac_comment
, list_mac_comment
, edit_mac_comment
, del_mac_comment
.
mac_qos
The interface for limiting download/upload speed of devices, mapping mac addresses. The implemented methods include: add_mac_qos
, list_mac_qos
, edit_mac_qos
, del_mac_qos
, enable_mac_qos
, disable_mac_qos
.
url_black
Blacklisting or whitelisting url for accessing, mapping mac addresses. The implemented methods include: add_url_black
, list_url_black
, edit_url_black
, del_url_black
, enable_url_black
, disable_url_black
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pyikuai-0.4.0.dev0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 500d0a8a8705afccc384650f57b7a44d1b8fca2841b86d8e35afbb5799e7ee60 |
|
MD5 | 98fe2efc769ced4ba54b5d2f7abdbf95 |
|
BLAKE2b-256 | 8b4768e44725a68acaf28025134c27d90a68ab13a6d24865c7cadc7f8925c773 |