From 6f9bb08b2cb15654a714f7b2363b97b2653a8787 Mon Sep 17 00:00:00 2001
From: "th.l" <thl-cmk@outlook.com>
Date: Wed, 7 Jun 2023 17:34:36 +0200
Subject: [PATCH] update project

---
 agent_based/inv_cisco_wlc_aps_lwap.py     |   4 +-
 gui/views/inv_cisco_wlc_aps_lwap.py       |  78 ++++++++++++++++
 gui/wato/inv_cisco_wlc_aps_lwap.py        | 109 ++++++++++++++++++++++
 inv_cisco_wlc_aps_lwap-0.4.0-20230607.mkp | Bin 0 -> 6396 bytes
 inv_cisco_wlc_aps_lwap.mkp                | Bin 6413 -> 6396 bytes
 packages/inv_cisco_wlc_aps_lwap           |  11 +--
 6 files changed, 194 insertions(+), 8 deletions(-)
 create mode 100644 gui/views/inv_cisco_wlc_aps_lwap.py
 create mode 100644 gui/wato/inv_cisco_wlc_aps_lwap.py
 create mode 100644 inv_cisco_wlc_aps_lwap-0.4.0-20230607.mkp

diff --git a/agent_based/inv_cisco_wlc_aps_lwap.py b/agent_based/inv_cisco_wlc_aps_lwap.py
index c39fee8..5b4522f 100644
--- a/agent_based/inv_cisco_wlc_aps_lwap.py
+++ b/agent_based/inv_cisco_wlc_aps_lwap.py
@@ -15,6 +15,7 @@
 # 2020-03-15: added support for CMK1.6x
 # 2021-07-11: rewritten for CMK 2.0
 # 2021-07-15: added support for Catalyst 9800 Controllers
+# 2023-06-07: moved gui files to ~/local/lib/chek_mk/gui/plugins/...
 
 from cmk.base.plugins.agent_based.agent_based_api.v1 import (
     register,
@@ -337,8 +338,7 @@ def inventory_cisco_wlc_aps_lwap(params, section) -> InventoryResult:
 register.snmp_section(
     name='inv_cisco_wlc_aps_lwap',
     parse_function=parse_inv_cisco_wlc_aps_lwap,
-    fetch=
-    SNMPTree(
+    fetch=SNMPTree(
         base='.1.3.6.1.4.1.9.9.513.1.1.1.1',  # CISCO-LWAPP-AP-MIB::cLApEntry
         oids=[
             '2',  # cLApIfMacAddress (2)
diff --git a/gui/views/inv_cisco_wlc_aps_lwap.py b/gui/views/inv_cisco_wlc_aps_lwap.py
new file mode 100644
index 0000000..e0225af
--- /dev/null
+++ b/gui/views/inv_cisco_wlc_aps_lwap.py
@@ -0,0 +1,78 @@
+#!/usr/bin/env python3
+# -*- coding: utf-8 -*-
+
+from cmk.gui.plugins.views.utils import (
+    inventory_displayhints,
+)
+from cmk.gui.i18n import _
+from cmk.gui.plugins.views.inventory import declare_invtable_view
+
+inventory_displayhints.update({
+    '.networking.wlan.controller.accesspoints_lwap:': {
+        'title': _('Access Points LWAP info'),
+        'keyorder': [
+            'name', 'if_mac_address', 'admin', 'power_status', 'led_state', 'last_reboot_reason', 'telnet', 'ssh',
+            'encryption_supported', 'encryption', 'data_encryption', 'wips',
+        ],
+        'view': 'invwlcapslwap_of_host',
+    },
+    '.networking.wlan.controller.accesspoints_lwap:*.name': {'title': _('Name')},
+    '.networking.wlan.controller.accesspoints_lwap:*.if_mac_address': {'title': _('MAC Address')},
+    '.networking.wlan.controller.accesspoints_lwap:*.admin': {'title': _('Admin state')},
+    '.networking.wlan.controller.accesspoints_lwap:*.power_status': {'title': _('Power status')},
+    '.networking.wlan.controller.accesspoints_lwap:*.led_state': {'title': _('LED state')},
+    '.networking.wlan.controller.accesspoints_lwap:*.last_reboot_reason': {'title': _('Last reboot reason')},
+    '.networking.wlan.controller.accesspoints_lwap:*.telnet': {'title': _('Telnet enabled'), 'short': _('Telnet')},
+    '.networking.wlan.controller.accesspoints_lwap:*.ssh': {'title': _('SSH enabled'), 'short': _('SSH')},
+    '.networking.wlan.controller.accesspoints_lwap:*.encryption_supported': {'title': _('Encryption supported')},
+    '.networking.wlan.controller.accesspoints_lwap:*.encryption': {'title': _('Encryption enabled')},
+    '.networking.wlan.controller.accesspoints_lwap:*.data_encryption': {'title': _('Data encryption')},
+    '.networking.wlan.controller.accesspoints_lwap:*.wips': {'title': _('wireless IPS,')},
+
+    '.networking.wlan.controller.accesspoints_lwap:*.rogue_detection': {'title': _('Rogue detection enabled'),
+                                                                        'short': _('Rouge detection')},
+    '.networking.wlan.controller.accesspoints_lwap:*.pwr_injector_state': {'title': _('Pow. inj. state')},
+    '.networking.wlan.controller.accesspoints_lwap:*.pwr_injector_selection': {'title': _('Pow. inj. selection')},
+    '.networking.wlan.controller.accesspoints_lwap:*.pwr_pre_std_state': {'title': _('PoE pre standard')},
+    '.networking.wlan.controller.accesspoints_lwap:*.pwr_injector_sw_mac_addr': {'title': _('Pow. inj. MAC address')},
+    '.networking.wlan.controller.accesspoints_lwap:*.wlc_primary_address': {'title': _('primary WLC')},
+    '.networking.wlan.controller.accesspoints_lwap:*.wlc_secondary_address': {'title': _('secondary WLC')},
+    '.networking.wlan.controller.accesspoints_lwap:*.wlc_tertiary_address': {'title': _('tertiary WLC')},
+    '.networking.wlan.controller.accesspoints_lwap:*.max_#_of_dot11_slots': {'title': _('max # of dot11 slots')},
+    '.networking.wlan.controller.accesspoints_lwap:*.max_#_of_ethernet_slots': {'title': _('max # of ethernet slots')},
+    '.networking.wlan.controller.accesspoints_lwap:*.failover_priority': {'title': _('failover priority')},
+    '.networking.wlan.controller.accesspoints_lwap:*.monitor_mode_optimization': {
+        'title': _('monitor mode optimization')},
+    '.networking.wlan.controller.accesspoints_lwap:*.amsdu': {'title': _('Aggregate MAC Service Data Unit'),
+                                                              'short': _('AMSDU')},
+    '.networking.wlan.controller.accesspoints_lwap:*.tcp_mss': {'title': _('TCP MSS')},
+    '.networking.wlan.controller.accesspoints_lwap:*.port_number': {'title': _('Port number'), 'short': _('Port #')},
+    '.networking.wlan.controller.accesspoints_lwap:*.venue_config_venue_group': {'title': _('Venue group')},
+    '.networking.wlan.controller.accesspoints_lwap:*.venue_config_venue_type': {'title': _('Venue type')},
+    '.networking.wlan.controller.accesspoints_lwap:*.venue_config_venue_name': {'title': _('Venue name')},
+    '.networking.wlan.controller.accesspoints_lwap:*.venue_config_language': {'title': _('Venue language')},
+    '.networking.wlan.controller.accesspoints_lwap:*.trunk_vlan': {'title': _('Mgmt VLAN ID')},
+    '.networking.wlan.controller.accesspoints_lwap:*.trunk_vlan_status': {'title': _('Mgmt VLAN tagged state')},
+    '.networking.wlan.controller.accesspoints_lwap:*.location': {'title': _('Location')},
+    '.networking.wlan.controller.accesspoints_lwap:*.submode': {'title': _('AP submode')},
+    '.networking.wlan.controller.accesspoints_lwap:*.real_time_stats_mode_enabled': {'title': _('Real time stats')},
+    '.networking.wlan.controller.accesspoints_lwap:*.upgrade_from_version': {'title': _('Upgrade from version')},
+    '.networking.wlan.controller.accesspoints_lwap:*.upgrade_to_version': {'title': _('Upgrade to version')},
+    '.networking.wlan.controller.accesspoints_lwap:*.upgrade_failure_cause': {'title': _('Upgrade failure cause')},
+    '.networking.wlan.controller.accesspoints_lwap:*.max_client_limit_number_trap': {'title': _('Max client limit')},
+    '.networking.wlan.controller.accesspoints_lwap:*.max_client_limit_cause': {'title': _('Max client cause')},
+    '.networking.wlan.controller.accesspoints_lwap:*.max_client_limit_set': {'title': _('Max client set')},
+    '.networking.wlan.controller.accesspoints_lwap:*.floor_label': {'title': _('Floor label')},
+    '.networking.wlan.controller.accesspoints_lwap:*.adj_channel_rogue_enabled': {'title': _('Adj. channel rogue')},
+    '.networking.wlan.controller.accesspoints_lwap:*.sys_net_id': {'title': _('Sys net ID')},
+    '.networking.wlan.controller.accesspoints_lwap:*.antenna_band_mode': {'title': _('Antenna band mode')},
+    '.networking.wlan.controller.accesspoints_lwap:*.module_inserted': {'title': _('Module inserted')},
+    '.networking.wlan.controller.accesspoints_lwap:*.enable_module': {'title': _('Module enabled')},
+    '.networking.wlan.controller.accesspoints_lwap:*.is_universal': {'title': _('AP is universal')},
+    '.networking.wlan.controller.accesspoints_lwap:*.universal_prime_status': {'title': _('AP universal prime status')},
+    '.networking.wlan.controller.accesspoints_lwap:*.is_master': {'title': _('AP is master')},
+    '.networking.wlan.controller.accesspoints_lwap:*.ble_fw_download_status': {'title': _('Ble FW downaload status')},
+})
+
+declare_invtable_view('invwlcapslwap', '.networking.wlan.controller.accesspoints_lwap:', _('Cisco WLC APs LWAP info'),
+                      _('Cisco WLC APs LWAP info)'))
diff --git a/gui/wato/inv_cisco_wlc_aps_lwap.py b/gui/wato/inv_cisco_wlc_aps_lwap.py
new file mode 100644
index 0000000..668a401
--- /dev/null
+++ b/gui/wato/inv_cisco_wlc_aps_lwap.py
@@ -0,0 +1,109 @@
+#!/usr/bin/env python3
+# -*- coding: utf-8 -*-
+#
+#
+from cmk.gui.i18n import _
+from cmk.gui.plugins.wato.utils import (
+    HostRulespec,
+    rulespec_registry,
+)
+from cmk.gui.valuespec import (
+    Dictionary,
+    ListChoice,
+)
+
+from cmk.gui.plugins.wato.inventory import (
+    RulespecGroupInventory,
+)
+
+_removecolumns_cisco_wlc_aps_lwap = [
+    # ('name', 'Name'),
+    # (if_mac_address', 'MAC Address'),
+    # ('admin', 'Admin state'),
+    # ('power_status', 'Power status'),
+    # ('led_state', 'LED state'),
+    # ('last_reboot_reason', 'Last reboot reason'),
+    # ('telnet', 'Telnet enabled'),
+    # ('ssh', 'SSH enabled'),
+    # ('encryption_supported', 'Encryption supported'),
+    # ('data_encryption', 'Data encryption'),
+    # ('encryption', 'Encryption enabled'),
+    # ('wips', 'wireless IPS,'),
+
+    ('adj_channel_rogue_enabled', 'Adj. channel rogue'),
+    ('amsdu', 'Aggregate MAC Service Data Unit'),
+    ('antenna_band_mode', 'Antenna band mode'),
+    ('is_master', 'AP is master'),
+    ('is_universal', 'AP is universal'),
+    ('submode', 'AP submode'),
+    ('universal_prime_status', 'AP universal prime status'),
+    ('ble_fw_download_status', 'Ble FW downaload status'),
+    ('failover_priority', 'failover priority'),
+    ('floor_label', 'Floor label'),
+    ('location', 'Location'),
+    ('max_#_of_dot11_slots', 'max # of dot11 slots'),
+    ('max_#_of_ethernet_slots', 'max # of ethernet slots'),
+    ('max_client_limit_cause', 'Max client cause'),
+    ('max_client_limit_number_trap', 'Max client limit'),
+    ('max_client_limit_set', 'Max client set'),
+    ('trunk_vlan', 'Mgmt VLAN ID'),
+    ('trunk_vlan_status', 'Mgmt VLAN tagged state'),
+    ('enable_module', 'Module enabled'),
+    ('module_inserted', 'Module inserted'),
+    ('monitor_mode_optimization', 'monitor mode optimization'),
+    ('port_number', 'Port number'),
+    ('pwr_injector_selection', 'Pow. inj. selection'),
+    ('pwr_injector_state', 'Pow. inj. state'),
+    ('pwr_injector_sw_mac_addr', 'Pow. inj. MAC address'),
+    ('pwr_pre_std_state', 'PoE pre standard'),
+    ('real_time_stats_mode_enabled', 'Real time stats'),
+    ('rogue_detection', 'Rogue detection enabled'),
+    ('sys_net_id', 'Sys net ID'),
+    ('tcp_mss', 'TCP MSS'),
+    ('upgrade_failure_cause', 'Upgrade failure cause'),
+    ('upgrade_from_version', 'Upgrade from version'),
+    ('upgrade_to_version', 'Upgrade to version'),
+    ('venue_config_language', 'Venue language'),
+    ('venue_config_venue_group', 'Venue group'),
+    ('venue_config_venue_name', 'Venue name'),
+    ('venue_config_venue_type', 'Venue type'),
+    ('wlc_primary_address', 'primary WLC'),
+    ('wlc_secondary_address', 'secondary WLC'),
+    ('wlc_tertiary_address', 'tertiary WLC'),
+]
+
+_removecolumns_defaul_cisco_wlc_aps_lwap = [
+    'adj_channel_rogue_enabled', 'amsdu', 'is_master', 'is_universal', 'submode',
+    'universal_prime_status', 'max_client_limit_cause', 'ble_fw_download_status', 'antenna_band_mode',
+    'module_inserted', 'floor_label', 'max_client_limit_set', 'enable_module',
+    'pwr_injector_sw_mac_addr', 'pwr_injector_selection', 'pwr_injector_state', 'pwr_pre_std_state',
+    'trunk_vlan', 'trunk_vlan_status', 'tcp_mss', 'monitor_mode_optimization', 'sys_net_id',
+    'upgrade_failure_cause', 'upgrade_from_version', 'upgrade_to_version', 'venue_config_language',
+    'venue_config_venue_group', 'venue_config_venue_name', 'port_number', 'venue_config_venue_type',
+    'max_#_of_dot11_slots', 'max_#_of_ethernet_slots', 'failover_priority', 'wlc_primary_address',
+    'wlc_secondary_address', 'wlc_tertiary_address'
+]
+
+
+def _valuespec_inv_cisco_wlc_aps_lwap():
+    return Dictionary(
+        title=_('Cisco WLC AP LWAP info'),
+        elements=[
+            ('removecolumns',
+             ListChoice(
+                 title=_('list of columns to remove'),
+                 help=_('information to remove from inventory'),
+                 choices=_removecolumns_cisco_wlc_aps_lwap,
+                 default_value=_removecolumns_defaul_cisco_wlc_aps_lwap,
+             )),
+        ],
+    )
+
+
+rulespec_registry.register(
+    HostRulespec(
+        group=RulespecGroupInventory,
+        match_type='dict',
+        name='inv_parameters:inv_cisco_wlc_aps_lwap',
+        valuespec=_valuespec_inv_cisco_wlc_aps_lwap,
+    ))
diff --git a/inv_cisco_wlc_aps_lwap-0.4.0-20230607.mkp b/inv_cisco_wlc_aps_lwap-0.4.0-20230607.mkp
new file mode 100644
index 0000000000000000000000000000000000000000..f82949a6a12748cb4bb6e3631f8f6fc3d7e415b1
GIT binary patch
literal 6396
zcmbuv<s%%9!vJt?oMC#J={DUlvEy`io&K8c)7{;1(_O<f)7`mgP7cFqhu?qjym>w^
zJ~VOf-o=#!gHhh>zj>Ki*}Gdgn|c3dWoF^xZuXzIg$pMS7e5yd=VzYJd_00YLR?Oc
zE=cDRj_&KisgGx7A<7QQ3z?v}V(OnY-8$6FIpcL{?R(&By1$n5L=3#;U%6<!_^URY
z`@RL^A)(oiPJr*f{nqMg3jfAGXUE@3f#=)*8FI}$_|9A~r!fe5DM-apGRRVuDJ?}r
z(6$_XdlsoMc|Hw_WRNP#+X%UaVww4?X4Vh3dxQM`t&ViaJe~a6_7)O?=HIYQX-eTZ
zOL7j}OuQEg+j2>|A>ntm;#TV6k*=N;YT%A0-B_S~zt3q9$twaU5MrR2ogF)omwmEr
z;F{gKfCh>8w696^tOdQCW`$fOeQ#4FI)1qjf$g6>w}B~ahCD;9I7xnwe%|9C!Q|Zx
zZ%b#`jZ7_5e336Mn+p`7PEdUQG|5vjs!wW?%n(=1qv}g)`nJh$W0uP@{W1^P=1&5G
z{#kOX*sH6jH1VRaF;!l2U4F5(ux(08HLS4rfVd=2uIfi=kds?<TaGEuR$!U;2iHoc
z-?gUAp+jDmP=Ej7Qd;VTo2<tWtoOOofBJJ*A8EPoS2JaW)<)f<jGH?i*~&$CTaXsX
zDW|vHm=V%kv_>pJ{rBr>SzySgQ#lnZvOCU%G~*P7ks-44FqgXd|M*Fj6B0<*cwcM}
zhe1p|O%~)Oj#>jTl=m2NdKrpVAL*3y9ie{=lKq4!od<#g{jZ_8)N4We?gSWbvd_*l
zD#Nd{w)-=$Z<Nn(>FaM5qp*{gySI~MapEZ{0*Mub<9{y_kuNm;s491;XMBI7%?q2D
zRSrM8=6GT-;Okiz?7}N55=h`D#B(7)8~yuiFnIo35H$3KQEeV!sda0o4`}WcQL4F>
zhi!bO@B9xEAv=CYZ}ZJxK7HUObJ*N(*lqqAMK$>`(AM`&LR#Gx_5JQ_+nd&18~AN{
zek0fW?(L}d?LEfP?8hK?$sBl4#UcbzH}7GZ@aAJV@SvvRc*8deO=e!rIpQ|FykLKm
z!k!%qq5=aUF6Zc&{OyeMB;6su{`f20y<tzfwqJ%W^NueZywU|W-{UCFNMvDPNig;G
zK1v6cAtz8ljlrwEM<muTuPJr49CuexZUDCQ)8z#vO0rcbz@^wI1o@~VO>^jD($w!)
zyB|`b;9I>K<8}s664o&<vV_er<+DqWxPlszNi2FY$1&+~4%7)H(Jh*#WSrM^RkcyJ
z0cA7Unxy?0hNFR<-Y)4G%E88(h!$Jw!3DB%fY1fx>)3->e{a80uu87=W|gAqBD-7N
z8Euj!u3n5r3qN({FI}|(l@f6kKe>@$*i$}9)=uOv{Gkc)IUEgF#>gigprlHTgazRu
z<~$Lo+g*|_t2ZNC8<a=`GB8_q?ytBwgKO(XBfF71>boeGF!{*#@^?XDo>%ckX+9Jy
zy^?XVR-GtSbJ?S%$Dm$JjVrZ(^Nv2GTUTmaEn6X{kIc+#e|Fv4g?zLr;yoxd{AIFY
zHgYHVF#>EMB6)fdfjuR_!-_HI*}DP;^sHl1oGTj4P-ZvT-p`1wcZ0J?vXkNy7da2;
z$DQ`|reV|tyb-L}qa3P<s-$t*Oyi6yaVW}cNQXM}XmP^#S#!4z>VR<8{dTXCti*q2
zVUBkTA;Ci2`AxF<EIav5!>J<9k3mtUNQh#58&?gFv1q%-;eox$Pl<SltSzN7o*YVJ
zU0vs*@$fw-b8|_#nl*#D$tlmG62^gcIUkDMn=n@wh_gnfk@e&6+)kma-wMOo>15`j
z`S)9qp}VZg6*_R!(2<&<=2&4o0@EQ^{nj8;iZF(oni)RdVbvQFFyvGR3<7KTDDJ~A
z>z9zZs@H%k2YNO!4|#3Xz0`o4jK&e&$JSyK!Y$>wOQaSuOtH8cO(xW6(T!XBA<88o
zbtiHjH7X*sH=U)Y>HezHWlCQ<R(I8ovA;$rYD@fL*V2KeojnywX32oSt+|LSr&5C^
z5{3b>cej4#)oz&}e8JjN`%DP4kh=p&QfX=`$Mr#D?`Qaqe6IZsAiLpLitXCSvn(lv
z`bM#achfmKv<mQZNVQV!_kx=m{KpOx(rsFTJdy+)y{g%!INGWK_7e*g@1q6kfBJGg
z3HMQOq)63eff0^`e!pOube~OM4SFC$o0oCGhR>uXs#h;g|Br<kcV)sDTl_;$Ut|@h
zC<<wc^IHjG-}!U7rkXas;leG|*W}zpmY}ibzz+<*sQE~l>%T%GKI!vlY%K=Ug8Hwb
ze*p$Q(h4vl)9IQujd1+Xw6cg9XAx33o7JJTneXXLkz2aWEd2bI&rp=-7{q?nIrAMk
z)Ym$oB5ulBX?N_Y+r#)!U8Z4P59Lkxj_6#0@n!+UR0w}05BrB^(cA6yi!9V@;GS5t
zIReYYO?RRi`S!_<wGo*@zY3<apII*<1TWAxW&hRAEo)QcNe~eH#E+%@P-qwNcgP%*
zaeM%WxQ-;vA-u&r&kAM5a=+?s;J2J3w~5xJn-%c;3=?W0ttf%WRRY7(n746k;6D>G
zW=HN+20(%0Ec%hSFif`2cw}dJShYJtKCZUf#=T=;tW1?;FnhwWVL`Wd!xT`G+R!-3
z=+lqobA8S6{0Rr^p<+ggkC{Ynm{j-J8HX#c3mwWGPlw{_@gl6PsJQIbyTK)^Z3`YD
z!iQMc5u&kPUjy6`3Z?;B)PF_S4>VWIvUgjHA@4CFG97K*V)k6H-diooTT4xsfeO}4
z_zKMCj83CIP<Uj=|Mxll*w{$(SW~*q!NgsMAy-7w#!Y#{lkABhwtu{8$sEFv&L|v0
zB3m_VYrE6bLJd++u8IpZ5eVV*WJ~dKv`j#c(+ae&%CI|67?$h8O&e2=aISz@;OPp_
zMgy9)GKz++kGposJI5KQZP}ycR%Qg~Pg|xfiw`1wslHX?!gI*{$<TtuB>}jto~3ss
z->8^BNh0un2M@_$>%`=^d-SU@^C$_)zWb#TK=N&1X^>we!C3|`x;UMX>1#eDg*16t
zL4S)G<ipNfH4j==aQyEcoO%DW0>qmBz$TGD^*C0#q?q&HWzvuMQ3AR(Y1b)cknU<x
z*kS-W{Y<sKrKo0JDF?-3?#hAk*BJF?SgQ_r!pS!?6eI&+5fo40Yiq&QV&WZ*>p#<-
z-}K0BXgDAR@hiKGvR$}K;+TeK$kI%@=2IV<>Jsay<j_ikEg<Kc=@1)%kJ<og#W7Bw
zosdjMN0b>t4uJJvTM!D@n4GbKjjsJ3T_R^+0jy4Te_-HS^wz{c@gNUInF_Q?b=$|n
zP3u8bBh^G|%oZE02E5_wP(c?;RhndfW*S8`^~WC}j2;X_Z-1c}<%Ep9-U^ms0gf?8
zee3C__kwQ{{YPxyfuEs%K_3&+s2>3ai`)VF_D^~JJBtqwu?MPx=3ZZQMwfp@vl_WQ
zODs@W24P@4wDVu!r7QT%zc}$!3pSFtT=<Rn-txF%wccW_OOCc`c}OG;i!02K;#;st
znw&SOjg7=4C&}p*0)ngIWpw}E&56!eoan^t%6L0ccQzH<(_Av?p}M)HcELs$>`_go
z$vc+kF#Ij|Ct86HTZoY9yjDRqt+w6}w&D#reeqvlHcoLra{!)^k$!{Wwlun$9gSTW
zauGKEZJ$!>eRr8~lzHcg4M~fOhd^>t%8lR*>2nShms9514?-zW3bo5LJGy|BJc|5&
zO}Qb9Pd4v_V&#}-ljjxFPlNjay7eX<N54~rJErlR_zJeHh%`~zjQo&nX4aa*<!Xg3
zuVkls`+U8iO5Is{qC7=*akr+Nk`PEsk;V8$<%p^l>1jqio5ptS{1=Dn$m!2UV#w?;
zwn6mVPpcRoNmh17deK`bt%@zpFGR8gGG~{r%kUg&E<4I46?2vp-s?iA6#cQbKIj4D
z#5Cu9ipLJ0k<XBHUw-Lv5(Zz_1{fIjebLE|truiZws!#5a2TF7ageX5E7xUY#J6Td
z`|_5ON@bO1W)dNUvST=>3+={J!JD#t%Wc=V{=gy=z>44>&B5BHNVa7!HDWlXwg&ib
z_FN02wPzGw<wZSz+4Rb?_=4_Gexc1@z6AmSCe)_#kpcfs*ng?=D+@$D*rIU>t2UCi
zB_E<{aD*He9LUIzZyk;o{dLA2=AIW+vEb!J7(Jp#raaB05z5A?{2p1Nz3)+FKF)^Y
zsiZhKA2!fb#5*^vwF7PRY&lb;Tf+$g$tTv*G$`&;|8cC<hgncC^E9+zU;ZB9Tnv5^
zq*<x9`pUoffpL9ELGc%R<Ds4*d}3&zF0eVj{0X?n=vBDpf*`T%@#SKjmpt0fJlGoY
zfRx#`xw@=3M`W2YesK4-&9Ys+Se&d1RQ;ZJ@I-wP_r!AqARUgZ<en(2b@EA2rF8o%
zLj+t``aCa0`lUde8sB))FnLbeK=kx;-D#hYI;m+3sP<t+v{`GNapc=-A19}i3SVCa
zwD+LbpITz?3WJ(3^N7ZSmkur7ydo-l{L7#S?Q@WpP)po*B0MA*S28}6AIEXHXf?i^
z{J}vjo<tRnEcnEID{Kt7I#!g$%(8YtfK3kRr&Bh{@*g(mS}S)!b9Kw5;b|Cc=yujY
zbv|CH&%JM@o(ryA=5FZKDf*!M-qU<jRtE!7aD(Z_5_wcQP>ClmYsdJUCVr+>FvZSG
zVC7j!hT0*+1Lk#1Wzg&p2zE7I9O(8_kV;lMA<a@?eH7dLQFkuNdZCZ_t~*w+UMD{s
z#aW2Wl@xt*4<7Oe2z_IoWwsDk3-7aLuuwRtRAsOl>k&zj(yh$?$*S5$25gKuGuHDp
z;>{Md?@;XT48el#Q7!<DUZV&(>`&{}V!!ZbfG&?GfwMgCC$szC)OLatFSnOkcDV0o
zrUb7+?n)02YZ6ikraR^ttr1)FB99D;8dj#r^nHfCUK@xV?31Je-U|cbJ;$R-il3+5
zCX%D+{frn-rOvEGi?Ms}$Kr1)um@6pPLTS((l*?FrTeT%yo_!pSMAQ``*(Z4-eQ}w
zs`T)sRNAH*92(CRS5^^I!6vxq_l_68dV!Cbc=s7H?O-XYVPApw9bME@ddfiF8~5*~
z*w2lgede;KLy){w?VMS<%r)SU2I;9NmMi{#QXHdqY~NB^57UnWmp`&Q3jzKbRGavB
zji@W`gY$f3lW3-uD@U4VOa<=x8i7uPX*mF<D)Nf*ZfTbsFzD$@+BZ?65TQg>d8MtU
zQ^<Fcw9HFBd&A)U2tz0E%pZZr!am6rTQ?lB74v*=@C}Yp+}?`C)OfP;H0G2kuV~<g
z2C<yBIS39duufU~?vy%LS+=4z^$xc0`+iW#lx@{6GAzF9ns?OpR3<KAjQ%j2gEc+A
zJf%5ohqWLw9Na!s3xs{u-V{D4e~+JpcK>}1pMy7O6htYNG5U%i){4aLT#irtDcxVl
zZ&f0%+gM?E1{Y_nq>anm8+I>0#E$&#@sF4CjY?b|{XjizAflQU`&xXKFn+@D6ItBk
z8F{O&3_b%U#`LIr#2A~*l5rLhc8Go8+J_{Z*O?N>kKTgSyS;d~*)~18)ZtJI>2lhn
zGUDrad8;F`c-I6!JQ=90g@DF!HI$#uY(ZOwIDMb7++~(GtY$|W#Rwv~KaL`3+qzc(
znBs05r^xNq<VB+rI}lkn%Qx4cSszTX`^l4V$u>*H?o)0T*r-Bj)K6ei4EvHoubzx1
zlEreYrC#t#tvbYJ){GV!N;h^-3hhPcQ<~{i@2{)-wvY2UG9%<X5BN!r>Yg+9g=aS9
ziL{fpuL*JQamoII^TbCfLh%}+3RL=VvQ7#JwM;ls#XU_r7c#<TX8okr3hLh}XLWKy
zbYo~Yyl5?d8VmvG<I>U^wzW&iZfJ|D0@U0w{5PkYaYc{6hy7peC=Rm0Ut7Fs01p@U
zG>Y)6TK~7JieD0Vi?7F5tKDyQsx~Dt*RT8kiRXF!lX}JRxeJ(;(rq{|+GU|$w^9P{
zlmI6D{RU33xMLu;T_Yukg_;2UBwK0>^rFp?V!sRCQB(C*Z%Z$>Toa4756;eNv#Vpp
z5orsE3HRB`dRj7{w_lZ9G-R!Ln4=5RbJr>UUE5;Tm9WrV0&#JbOO4w?mz)ysFKrgx
z=Bojc_Vu!Oj`#IZ!`2-|Zm#YuTecJq&N(=ffV?k(m~gtR@~8#$Ws8>uxVm3n2o*hn
zXtd?*HUblXf`Miox!S&Jp(*a2LX-KZ+VQqL)<6|R9Fcg0>mN3{qTfYGzx?ua6Az2Z
zqnRykKV?~-O7tg?^h&BX=on?^HOI_{1F(~hXic-ztEGajAge2m&hq0Rq%aqpR4egZ
zBVSj8y<d3VX?v%;=3~_3F<MPGSK^O#wlTX02hJ)R-;b|q$qS{Dee{@9fe~<2;h&eR
zT~GR4x0s|1x;}Hc?}n2O)3z%z+4|s?rzJ8$o~|Nb9jW?@r#kDH_hR!(6P7X(9#S*c
zEcnZ3CfRjpUSj$*o9BMZ7#|x^0tLMUJyhB*^VTw0#G16tXw=(#XoG`I2HAz<XqLrJ
zG=d{vcROKcom?l*3rdu5O9XP#=EL#Drc%CA_@=M@w-cq>*y~MUfo|7Nt|*k(I8bY_
zaQOb&Ow%28VxfJ=Pj<7-v`+-1C?V<ZlKxpu0*L*fVimM!5xg;bSGY#6#Sv$Xb-KJJ
zyNht)M=rSS-P#iz*|4#zmBfj^>!u~FK}*t-K}^h+6n1-X!1Y@G5Sn6{M~gNYN7NTd
zEa5M{nyHvl%GAiN5Kj8?)#kAVNN!pSQ~a?oER?U)sFl8W!;luKVesU0P6+i#9jsbr
zV(f!Ld+8bq-=d!=WTCMtr?qQI!e?Za+T7~nyTGfLebn%46|&ze#>vI7d7W*zSNvHB
z3YUyAQx#QaY^0D4gUutAz<`?=`pgVvnVv%nV&QVsRm-en-aGlzhs2h}AKTZGakY<)
zckadmE<v<<PI~BpQk_{q34PLb#;)*#>o`{efEQuPWib_j<g^+EE0Ff`z#TNe<ITgk
zxA@g<!Xj^nqEYO(@n*BPo1QRAhmBh6KXAus!|k}?uUMc#_ZO5eflNxH)<=kl>)dpQ
z!=7;M;Upntl?K(SGbOpZ4WUgD2^LAyvJ*qoyW>*|v-VV<7nJ>*>rXNqnDaxXyN<v=
z2_e1t(2@K*?{6qLDQ$@7%s=scIMe)LTRUd{q%ALc%uq!9OW%iYcWlo=hhwLAZ?Es~
z-wOMKw!1u|*vi)_5uBg}Zyz(!VlJqN>+ASoR?ohZQ^n=V6<;L1-tC4}j1(s8C0s-u
zTKDDM%5QEj0il|oMPq;2bBDKPSfHT&zE?(xz_J{{ht7{Ru#YEM>;8~F2Yray_Ia9M
zfl{{vq52=u>WSqZ8DG@OfwViE2q#M9FI_2>>+w}~)lMUSGL>Qm1!-e`plfCdp39$l
zbFzs}Ux1zTq(|kej27v8$AL=$!4Qh?+t=ZY6lI;xLLBc5La|b)Gqq103#k-NJ7;xv
z^Z<N&z__Mh%?@hD%$)?HXnB?i*NI;(EZ<xtg}u@SHSmRMFQqryt4T|5TVTn@nkkIE
zJGZFiuoF^Y>(ZnrQ-yo^D!~IWhWGYc<Qb_yiLsWo>%P{+49tC9qHj<j=QT}dg_AX<
zeBR|VOz6Uf(9MVGYr0h=eu{U}3N5Eim2hWJ@4osmtW>F9q`NB<v7T;7o%)l*O@^CE
zD#w?Yun;{l5E^T=|Fo4}Slc+=y2&Te*=WY_0q8GBU)5bRY`0WUi_#+ygO=Vpqyen_
z&zJt&v!JaRWP?->i_U>FgLT$%pG^z)Lz%BsWg5xmi)gt5b9t@YXI7OmO)Pun5CxC`
zG0_td2Y!{k9%o4Q9hd#Jwl_d#*F9PUM&gk<%Qf%o)g`@pPJ$cL{e@+3#T((GC%tt*
zc;(pTb#|88t|he5RsCp;U@R0|tqI8B(zCSh*UlPoL*H=phxvXrJoALhRv7%bZ|O7S
zVK^mU0XGsqcdWkNAd*|wID70DvQs2(k0>MMoDmVg4Tn^D_r}%hk%wgd8H*PVr|cO2
z^S)oa3{Hd~14{Cv6;t@X5*%P&&G%cc7I(LXgQmY0gJLVf%@6-bGBk7+8vx@{rrPpG
z%Z?Tt0`A2OqBk8M=J*j#Vz=*q|9PHw`&@>7@^s6gJid7(b*UJ8l-17yH*6ix5xD(S
zIzTc)@ycTj>?aNREWM<=^8<sC`5q&J{Lh{QFB2jyDp$Cyxc|Esby|;DEyjYv6~s{D
zrhaJL<F%Caj<ZqlA+8_PtmX%pL$ml^tv6e(xR7YH4gSK?`VVF*KjptB0bP;7r1F^i
Te}<5Xd_&)llm;S=AtC(_=;C@a

literal 0
HcmV?d00001

diff --git a/inv_cisco_wlc_aps_lwap.mkp b/inv_cisco_wlc_aps_lwap.mkp
index 752bb12af17f9f2b66b348d2904cca202a693b93..f82949a6a12748cb4bb6e3631f8f6fc3d7e415b1 100644
GIT binary patch
literal 6396
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
Te}<5Xd_&)llm;S=AtC(_=;C@a

literal 6413
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

diff --git a/packages/inv_cisco_wlc_aps_lwap b/packages/inv_cisco_wlc_aps_lwap
index 94f0e6d..d967a8b 100644
--- a/packages/inv_cisco_wlc_aps_lwap
+++ b/packages/inv_cisco_wlc_aps_lwap
@@ -7,12 +7,11 @@
                 '2021-07-11: rewritten for CMK 2.0\n',
  'download_url': 'http://thl-cmk.hopto.org',
  'files': {'agent_based': ['inv_cisco_wlc_aps_lwap.py'],
-           'web': ['plugins/views/inv_cisco_wlc_aps_lwap.py',
-                   'plugins/wato/inv_cisco_wlc_aps_lwap.py']},
+           'gui': ['views/inv_cisco_wlc_aps_lwap.py',
+                   'wato/inv_cisco_wlc_aps_lwap.py']},
  'name': 'inv_cisco_wlc_aps_lwap',
- 'num_files': 3,
  'title': 'inventory for CISCO-LWAPP-AP-MIB',
- 'version': '20210715.v0.4a',
- 'version.min_required': '2.0.0',
- 'version.packaged': '2021.07.14',
+ 'version': '0.4.0-20230607',
+ 'version.min_required': '2.1.0b1',
+ 'version.packaged': '2.1.0p21',
  'version.usable_until': None}
\ No newline at end of file
-- 
GitLab