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
.
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.2.0.dev0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81fc862aa62a57d5e1b954be9c1e36fc3955c79c6faea07a2f0e41c092d20b94 |
|
MD5 | bada91edc9747b7b7ddb835dd0296f70 |
|
BLAKE2b-256 | c2a97043f5cb5a7c37ba4b0c39050ee43124f79c157b613f8031abdf95a5fcb1 |