From 0e562e37f9424467504139859b9de43b09c1dce8 Mon Sep 17 00:00:00 2001
From: "th.l" <thl-cmk@outlook.com>
Date: Mon, 3 Mar 2025 17:10:52 +0100
Subject: [PATCH] fixed per section cache -> removed appliance ports section

---
 README.md                                     |   2 +-
 mkp/cisco_meraki-1.4.4-20250303.mkp           | Bin 0 -> 44106 bytes
 .../agent_based/switch_ports_statuses.py      |  29 ++--
 .../wireless_device_ssid_status.py            |   2 +-
 .../agent_based/wireless_ethernet_statuses.py |  15 +-
 source/cmk_addons_plugins/meraki/lib/agent.py | 161 ++++++++----------
 source/cmk_addons_plugins/meraki/lib/utils.py |   3 +-
 .../meraki/rulesets/organisations_api.py      |   9 +-
 source/packages/cisco_meraki                  |   2 +-
 9 files changed, 98 insertions(+), 125 deletions(-)
 create mode 100644 mkp/cisco_meraki-1.4.4-20250303.mkp

diff --git a/README.md b/README.md
index 38083b3..32aef57 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-[PACKAGE]: ../../raw/master/mkp/cisco_meraki-1.4.2-20250104.mkp "cisco_meraki-1.4.2-20250104.mkp"
+[PACKAGE]: ../../raw/master/mkp/cisco_meraki-1.4.4-20250303.mkp "cisco_meraki-1.4.4-20250303.mkp"
 [SDK]: ../../raw/master/mkp/MerakiSDK-1.52.0-20241116.mkp "MerakiSDK-1.52.0-20241116.mkp"
 # Cisco Meraki special agent
 
diff --git a/mkp/cisco_meraki-1.4.4-20250303.mkp b/mkp/cisco_meraki-1.4.4-20250303.mkp
new file mode 100644
index 0000000000000000000000000000000000000000..312ba9020b6e7c5d567f98c312ee95241074ab80
GIT binary patch
literal 44106
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

literal 0
HcmV?d00001

diff --git a/source/cmk_addons_plugins/meraki/agent_based/switch_ports_statuses.py b/source/cmk_addons_plugins/meraki/agent_based/switch_ports_statuses.py
index f210421..b7e3032 100644
--- a/source/cmk_addons_plugins/meraki/agent_based/switch_ports_statuses.py
+++ b/source/cmk_addons_plugins/meraki/agent_based/switch_ports_statuses.py
@@ -7,7 +7,6 @@
 # URL   : https://thl-cmk.hopto.org
 # Date  : 2023-11-11
 # File  : switch_ports_statuses.py (check plugin)
-from Cython.Shadow import returns
 # 2024-04-08: moved neighbour_name and neighbour_port to key columns
 # 2024-04-27: made data parsing more robust
 # 2024-05-12: added support for MerakiGetOrganizationSwitchPortsStatusesBySwitch (Early Access)
@@ -27,6 +26,8 @@ from Cython.Shadow import returns
 # 2024-11-23  fixed crash on missing traffic data
 #             incompatible removed "Port" from item -> use only interface index
 # 2024-12-14: reworked output of port status
+#             changed if_port_type to port_type and from str to int to match Checkmks interface inventory
+
 
 # ToDo: create service label cmk/meraki/uplink:yes/no
 
@@ -255,9 +256,9 @@ class SwitchPort:
     usage: SwitchPortUsage | None
     warnings: Sequence[str]
     # syntetic settings
-    alias: str | None
-    description: str | None
-    if_port_type: str | None
+    # alias: str | None
+    # description: str | None
+    port_type: int | None
     name: str | None
 
     @classmethod
@@ -280,9 +281,9 @@ class SwitchPort:
             usage=SwitchPortUsage.parse(port.get('usageInKb')),
             warnings=port['warnings'] if port.get('warnings') is not None else None,
             # synthetic settings
-            alias=f'Port {port["portId"]}' if port.get('portId') is not None else None,
-            description=f'Port {port["portId"]}' if port.get('portId') is not None else None,
-            if_port_type='6 - ethernetCsmacd',
+            # alias=f'Port {port["portId"]}' if port.get('portId') is not None else None,
+            # description=f'Port {port["portId"]}' if port.get('portId') is not None else None,
+            port_type=6,
             name=f'Port {port["portId"]}' if port.get('portId') is not None else None,
         )
 
@@ -297,7 +298,7 @@ def host_label_meraki_switch_ports_statuses(section: Mapping[str, SwitchPort]) -
         if port.lldp:
             yield HostLabel(name="nvdct/has_lldp_neighbours", value="yes")
             break
-    # only set LLDP label, Merkai CDP data are not usefully for NVDCT
+    # only set LLDP label, Meraki CDP data are not usefully for NVDCT
 
 
 def parse_switch_ports_statuses(string_table: StringTable) -> Mapping[str, SwitchPort] | None:
@@ -338,7 +339,7 @@ def discover_switch_ports_statuses(params: Mapping[str, object], section: Mappin
             )
 
 
-def render_network_bandwidth_bits(value: int) -> str:
+def render_network_bandwidth_bits(value: float) -> str:
     return render.networkbandwidth(value/8)
 
 
@@ -432,7 +433,7 @@ def check_switch_ports_statuses(item: str, params: Mapping[str, any], section: M
         yield Result(state=State.OK, notice=f'Clients: {port.client_count}')
 
     if port.is_up_link:
-        yield Result(state=State.OK, summary='UP-Link', details=f'UP-Link: {is_up_link[port.is_up_link]}')
+        yield Result(state=State.OK, summary='UP-Link', details=f'UP-Link: {is_up_link[bool(port.is_up_link)]}')
     else:
         yield Result(state=State.OK, notice=f'UP-Link: {is_up_link[port.is_up_link]}')
 
@@ -483,13 +484,13 @@ def inventory_meraki_interfaces(section: Mapping[str, SwitchPort]) -> InventoryR
                 "index": port.port_id,
             },
             inventory_columns={
-                **({'alias': port.alias} if port.alias else {}),
-                **({'description': port.description} if port.description else {}),
+                # **({'alias': port.alias} if port.alias else {}),
+                # **({'description': port.description} if port.description else {}),
                 **({'name': port.name} if port.name else {}),
                 **({'admin_status': port.admin_state} if port.admin_state else {}),
                 **({'oper_status': port.operational_state} if port.operational_state else {}),
                 **({'speed': port.speed} if port.speed else {}),
-                **({'if_port_type': port.if_port_type} if port.if_port_type else {}),
+                **({'port_type': port.port_type} if port.port_type else {}),
             },
         )
 
@@ -539,7 +540,7 @@ def inventory_meraki_lldp_cache(section: Mapping[str, SwitchPort]) -> InventoryR
     for port in section.values():
         if lldp := port.lldp:
             key_columns = {
-                'local_port': port.port_id,
+                'local_port': str(port.port_id),
                 'neighbour_name': lldp.system_name,
                 'neighbour_port': lldp.port_id,
             }
diff --git a/source/cmk_addons_plugins/meraki/agent_based/wireless_device_ssid_status.py b/source/cmk_addons_plugins/meraki/agent_based/wireless_device_ssid_status.py
index 2710ccc..a157ff4 100644
--- a/source/cmk_addons_plugins/meraki/agent_based/wireless_device_ssid_status.py
+++ b/source/cmk_addons_plugins/meraki/agent_based/wireless_device_ssid_status.py
@@ -66,7 +66,7 @@ class SSID:
 def parse_wireless_device_status(string_table: StringTable) -> Mapping[str, SSID] | None:
     json_data = load_json(string_table)
     if not (json_data := json_data[0]):
-        return
+        return None
 
     ssids = {}
     for row in json_data.get('basicServiceSets', []):
diff --git a/source/cmk_addons_plugins/meraki/agent_based/wireless_ethernet_statuses.py b/source/cmk_addons_plugins/meraki/agent_based/wireless_ethernet_statuses.py
index 88cc8fe..5b3abbf 100644
--- a/source/cmk_addons_plugins/meraki/agent_based/wireless_ethernet_statuses.py
+++ b/source/cmk_addons_plugins/meraki/agent_based/wireless_ethernet_statuses.py
@@ -15,6 +15,7 @@
 # 2024-11-17: incompatible change item from "Port %s" to "Interface %s" -> rediscover your devices
 #             added interface inventory
 # 2024-12-12: fixed crash if speed is None
+#             changed if_port_type to port_type and from str to int to match Checkmks interface inventory
 
 # ToDo: create ruleset cisco_meraki_wireless_ethernet_statuses
 
@@ -108,10 +109,10 @@ class WirelessEthernetPort:
         )
 
 
-_is_connected = {
-    True: 'Yes',
-    False: 'No',
-}
+# _is_connected = {
+#     True: 'Yes',
+#     False: 'No',
+# }
 
 
 def parse_wireless_ethernet_statuses(string_table: StringTable) -> Mapping[str, WirelessEthernetPort] | None:
@@ -203,13 +204,13 @@ def inventory_meraki_wireless_ethernet(section: Mapping[str, WirelessEthernetPor
                 "index": port.name.split(' ')[-1],
             },
             inventory_columns={
-                'alias': port.name,
-                'description': port.name,
+                # 'alias': port.name,
+                # 'description': port.name,
                 'name': port.name,
                 'admin_status': 1,
                 'oper_status': 1,
                 **({'speed': render.nicspeed(port.speed)} if port.speed is not None else {}),
-                'if_port_type': '6 - ethernetCsmacd',
+                'port_type': 6,
             },
         )
 
diff --git a/source/cmk_addons_plugins/meraki/lib/agent.py b/source/cmk_addons_plugins/meraki/lib/agent.py
index b13c979..66600db 100644
--- a/source/cmk_addons_plugins/meraki/lib/agent.py
+++ b/source/cmk_addons_plugins/meraki/lib/agent.py
@@ -43,6 +43,8 @@
 # 2024-11-23: added appliance port api call -> not yet active
 # 2024-12-13: fixed crash in SwitchPortStatus if response has no data (>Response [503}>)
 # 2025-01-04: added "use network as prefix" option
+# 2025-03-03: completely removed APPLIANCE_PORT section -> fixed per section cache
+#             removed lldp_cdp section
 
 # Deprecation information
 # https://developer.cisco.com/meraki/api-v1/deprecated-operations/#deprecated-operations
@@ -97,7 +99,6 @@ from cmk_addons.plugins.meraki.lib.utils import (
 
     # parameter names
     SEC_NAME_APPLIANCE_UPLINKS,
-    SEC_NAME_APPLIANCE_PORTS,
     SEC_NAME_APPLIANCE_UPLINKS_USAGE,
     SEC_NAME_APPLIANCE_VPNS,
     SEC_NAME_APPLIANCE_PERFORMANCE,
@@ -113,6 +114,7 @@ from cmk_addons.plugins.meraki.lib.utils import (
     SEC_NAME_SWITCH_PORTS_STATUSES,
     SEC_NAME_WIRELESS_DEVICE_STATUS,
     SEC_NAME_WIRELESS_ETHERNET_STATUSES,
+    # SEC_NAME_DEVICE_LLDP_CDP,
     # Early Access
     SEC_NAME_ORG_SWITCH_PORTS_STATUSES,
 
@@ -134,7 +136,6 @@ from cmk_addons.plugins.meraki.lib.utils import (
     SEC_CACHE_SWITCH_PORTS_STATUSES,
     SEC_CACHE_WIRELESS_DEVICE_STATUS,
     SEC_CACHE_WIRELESS_ETHERNET_STATUSES,
-    SEC_CACHE_APPLIANCE_PORTS,
 )
 
 MERAKI_SDK_MIN_VERSION: Final = '1.46.0'
@@ -160,7 +161,6 @@ API_NAME_ORGANISATION_NAME: Final = 'name'
 SECTION_NAME_MAP = {
     SEC_NAME_APPLIANCE_UPLINKS: 'appliance_uplinks',
     SEC_NAME_APPLIANCE_UPLINKS_USAGE: 'appliance_uplinks_usage',
-    SEC_NAME_APPLIANCE_PORTS: 'appliance_ports',
     SEC_NAME_APPLIANCE_VPNS: 'appliance_vpns',
     SEC_NAME_APPLIANCE_PERFORMANCE: 'appliance_performance',
     SEC_NAME_CELLULAR_UPLINKS: 'cellular_uplinks',
@@ -175,6 +175,7 @@ SECTION_NAME_MAP = {
     SEC_NAME_SWITCH_PORTS_STATUSES: 'switch_ports_statuses',
     SEC_NAME_WIRELESS_DEVICE_STATUS: 'wireless_device_status',
     SEC_NAME_WIRELESS_ETHERNET_STATUSES: 'wireless_ethernet_statuses',
+    # SEC_NAME_DEVICE_LLDP_CDP: 'device_lldp_cdp',
     # Early Access
     SEC_NAME_ORG_SWITCH_PORTS_STATUSES: 'org_switch_ports_statuses',
 }
@@ -279,34 +280,35 @@ class _Organisation(TypedDict):
 #      +--\ MerakiSectionOrg
 #      |  |  - adds org_id parameter
 #      |  |
-#      |  |--> MerakiGetOrganization				                           -> default 86400
-#      |  |--> MerakiGetOrganizationApiRequestsOverviewResponseCodesByInterval -> Off, allways live data
-#      |  |--> MerakiGetOrganizationLicensesOverview		                   -> default 86400
-#      |  |--> MerakiGetOrganizationDevices				                       -> default 86400
-#      |  |--> MerakiGetOrganizationNetworks			                       -> default 86400
-#      |  |--> MerakiGetOrganizationDevicesStatuses			                   -> ex. 60+
-#      |  |--> MerakiGetOrganizationDevicesUplinksAddressesByDevice	           -> ex. 60+
-#      |  |--> MerakiGetOrganizationApplianceUplinkStatuses		               -> ex. 60+
-#      |  |--> MerakiGetOrganizationApplianceUplinksUsageByNetwork	           -> no cache
-#      |  |--> MerakiGetOrganizationApplianceVpnStatuses		               -> ex. 60+
-#      |  |--> MerakiGetOrganizationSensorReadingsLatest		               -> ex. 60+
-#      |  |--> MerakiGetOrganizationWirelessDevicesEthernetStatuses	           -> ex. 60+
-#      |  |--> MerakiGetOrganizationCellularGatewayUplinkStatuses              -> ex. 60.
-#      |  |--> MerakiGetOrganizationSwitchPortsStatusesBySwitch                -> ex. 60+
+#      |  +--> MerakiGetOrganization				                           -> default 86400
+#      |  +--> MerakiGetOrganizationApiRequestsOverviewResponseCodesByInterval -> Off, allways live data
+#      |  +--> MerakiGetOrganizationLicensesOverview		                   -> default 86400
+#      |  +--> MerakiGetOrganizationDevices				                       -> default 86400
+#      |  +--> MerakiGetOrganizationNetworks			                       -> default 86400
+#      |  +--> MerakiGetOrganizationDevicesStatuses			                   -> ex. 60+
+#      |  +--> MerakiGetOrganizationDevicesUplinksAddressesByDevice	           -> ex. 60+
+#      |  +--> MerakiGetOrganizationApplianceUplinkStatuses		               -> ex. 60+
+#      |  +--> MerakiGetOrganizationApplianceUplinksUsageByNetwork	           -> no cache
+#      |  +--> MerakiGetOrganizationApplianceVpnStatuses		               -> ex. 60+
+#      |  +--> MerakiGetOrganizationSensorReadingsLatest		               -> ex. 60+
+#      |  +--> MerakiGetOrganizationWirelessDevicesEthernetStatuses	           -> ex. 60+
+#      |  +--> MerakiGetOrganizationCellularGatewayUplinkStatuses              -> ex. 60.
+#      |  +--> MerakiGetOrganizationSwitchPortsStatusesBySwitch                -> ex. 60+
 #      |
 #      +--\ MerakiSectionSerial
 #      |  |  - adds serial as parameter
 #      |  |  - sets cache_interval = 60
 #      |  |
-#      |  |--> MerakiGetDeviceSwitchPortsStatuses 	                           -> default 60+
-#      |  |--> MerakiGetDeviceWirelessStatus	                               -> default 60+
-#      |  |--> MerakiGetDeviceAppliancePerformance
+#      |  +--> MerakiGetDeviceSwitchPortsStatuses 	                           -> default 60+
+#      |  +--> MerakiGetDeviceWirelessStatus	                               -> default 60+
+#      |  +--> MerakiGetDeviceAppliancePerformance
+#      |  +--> MerakiGetDeviceLldpCdp
 #      |
 #      +--\ MerakiSectionNetwork
 #         | - adds network id as parameter
 #         | - sets cache_interval = 60
 #         |
-#         |--> MerakiGetNetworkAppliancePorts
+#         +--> MerakiGetNetworkAppliancePorts
 #
 
 class MerakiSection(DataCache):
@@ -632,6 +634,19 @@ class MerakiGetDeviceWirelessStatus(MerakiSectionSerial):
             return []
 
 
+# class MerakiGetDeviceLldpCdp(MerakiSectionSerial):
+#     @property
+#     def name(self):
+#         return f'getDeviceLldpCdp_{self._serial}'
+#
+#     def get_live_data(self):
+#         try:
+#             return self._config.dashboard.devices.getDeviceLldpCdp(self._serial)
+#         except meraki.exceptions.APIError as e:
+#             LOGGER.debug('Serial: %r: Get LLDP/CDP data: %r', self._serial, e)
+#             return []
+
+
 class MerakiGetOrganizationCellularGatewayUplinkStatuses(MerakiSectionOrg):
     @property
     def name(self):
@@ -692,20 +707,20 @@ class MerakiGetOrganizationSwitchPortsStatusesBySwitch(MerakiSectionOrg):
         return []
 
 
-class MerakiGetNetworkAppliancePorts(MerakiSectionNetwork):
-    @property
-    def name(self):
-        return f'getNetworkAppliancePorts_{self._network_id}'
-
-    def get_live_data(self):
-        try:
-            return self._config.dashboard.appliance.getNetworkAppliancePorts(
-                self._network_id,
-                # total_pages='all',
-            )
-        except meraki.exceptions.APIError as e:
-            LOGGER.debug('Network ID: %r: Get appliance ports: %r', self._network_id, e)
-            return []
+# class MerakiGetNetworkAppliancePorts(MerakiSectionNetwork):
+#     @property
+#     def name(self):
+#         return f'getNetworkAppliancePorts_{self._network_id}'
+#
+#     def get_live_data(self):
+#         try:
+#             return self._config.dashboard.appliance.getNetworkAppliancePorts(
+#                 self._network_id,
+#                 # total_pages='all',
+#             )
+#         except meraki.exceptions.APIError as e:
+#             LOGGER.debug('Network ID: %r: Get appliance ports: %r', self._network_id, e)
+#             return []
 
 
 #
@@ -788,6 +803,21 @@ class MerakiOrganisation:
                 data=device,
                 piggyback=self._get_device_piggyback(device, devices_by_serial)
             )
+            # if SEC_NAME_DEVICE_LLDP_CDP not in self.config.excluded_sections and device.get(
+            #         'productType') not in [
+            #     # 'appliance',  # bad data (inconsistent with switch data)
+            #     'sensor',  # no data
+            #     'camera',  # no data
+            # ]:
+            #     if device_lldp_cdp := MerakiGetDeviceLldpCdp(
+            #         config=self.config,
+            #         serial=str(device['serial']),
+            #     ).get_data(use_cache=self.config.use_cache):
+            #         yield self._make_section(
+            #             name=SEC_NAME_DEVICE_LLDP_CDP,
+            #             data=device_lldp_cdp,
+            #             piggyback=self._get_device_piggyback(device, devices_by_serial)
+            #         )
 
         if SEC_NAME_DEVICE_STATUSES not in self.config.excluded_sections:
             for device_status in MerakiGetOrganizationDevicesStatuses(
@@ -910,60 +940,6 @@ class MerakiOrganisation:
                             piggyback=piggyback,
                             )
 
-            # if _SEC_NAME_APPLIANCE_PORTS not in self.config.excluded_sections and networks:
-            #     for network in networks:
-            #         appliance_ports_by_network = MerakiGetNetworkAppliancePorts(
-            #             config=self.config,
-            #             network_id=network.get('id'),
-            #             cache_interval=30,
-            #         ).get_data(use_cache=self.config.use_cache)
-            #         __ports = [
-            #             {
-            #                 'number': 5,
-            #                 'enabled': True,
-            #                 'type': 'trunk',
-            #                 'dropUntaggedTraffic': True,
-            #                 'allowedVlans': 'all'
-            #             },
-            #             {
-            #                 'number': 6,
-            #                 'enabled': True,
-            #                 'type': 'trunk',
-            #                 'dropUntaggedTraffic': True,
-            #                 'allowedVlans': 'all'
-            #             },
-            #             {
-            #                 'number': 7,
-            #                 'enabled': True,
-            #                 'type': 'trunk',
-            #                 'dropUntaggedTraffic': False,
-            #                 'vlan': 1,
-            #                 'allowedVlans': 'all'},
-            #             {
-            #                 'number': 8,
-            #                 'enabled': True,
-            #                 'type': 'trunk',
-            #                 'dropUntaggedTraffic': True,
-            #                 'allowedVlans': 'all'
-            #             },
-            #             {
-            #                 'number': 9,
-            #                 'enabled': True,
-            #                 'type': 'trunk',
-            #                 'dropUntaggedTraffic': False,
-            #                 'vlan': 10,
-            #                 'allowedVlans': 'all'
-            #             },
-            #             {
-            #                 'number': 10,
-            #                 'enabled': True,
-            #                 'type': 'trunk',
-            #                 'dropUntaggedTraffic': False,
-            #                 'vlan': 10,
-            #                 'allowedVlans': 'all'
-            #             }
-            #         ]
-
         if devices_by_type.get(API_NAME_DEVICE_TYPE_SWITCH):
             if SEC_NAME_SWITCH_PORTS_STATUSES not in self.config.excluded_sections:
                 for switch in devices_by_type[API_NAME_DEVICE_TYPE_SWITCH]:
@@ -1102,7 +1078,7 @@ class MerakiOrganisation:
     def _get_device_piggyback(
         self, device: MerakiAPIData, devices_by_serial: Mapping[str, MerakiAPIData]
     ) -> str | None:
-        LOGGER.critical(device)
+        LOGGER.debug(device)
         prefix = ''
         if self.config.org_id_as_prefix:
             prefix=self.organisation_id +'-'
@@ -1173,7 +1149,6 @@ def write_sections(sections: Iterable[Section]) -> None:
 @dataclass(frozen=True)
 class CachePerSection:
     appliance_performance: int
-    appliance_ports: int
     appliance_uplinks: int
     appliance_uplinks_usage: int
     appliance_vpns: int
@@ -1278,7 +1253,6 @@ def parse_arguments(argv: Sequence[str] | None) -> Args:
         help='List of cache time per section in minutes',
         default=[
             SEC_CACHE_APPLIANCE_PERFORMANCE,
-            SEC_CACHE_APPLIANCE_PORTS,
             SEC_CACHE_APPLIANCE_UPLINKS,
             SEC_CACHE_APPLIANCE_UPLINKS_USAGE,
             SEC_CACHE_APPLIANCE_VPNS,
@@ -1401,3 +1375,6 @@ def agent_cisco_meraki_main(args: Args) -> int:
 
 def main() -> int:
     return special_agent_main(parse_arguments, agent_cisco_meraki_main)
+
+
+
diff --git a/source/cmk_addons_plugins/meraki/lib/utils.py b/source/cmk_addons_plugins/meraki/lib/utils.py
index 941ef4c..201108e 100644
--- a/source/cmk_addons_plugins/meraki/lib/utils.py
+++ b/source/cmk_addons_plugins/meraki/lib/utils.py
@@ -29,7 +29,6 @@ SEC_NAME_NETWORKS: Final = '_networks'  # internal use, runs always, needed for
 SEC_NAME_ORG_API_REQUESTS: Final = 'api-requests-by-organization'  # internal use, runs always
 
 SEC_NAME_APPLIANCE_UPLINKS: Final = 'appliance-uplinks'
-SEC_NAME_APPLIANCE_PORTS: Final = 'appliance-ports'
 SEC_NAME_APPLIANCE_UPLINKS_USAGE: Final = 'appliance-uplinks-usage'
 SEC_NAME_APPLIANCE_VPNS: Final = 'appliance-vpns'
 SEC_NAME_APPLIANCE_PERFORMANCE: Final = 'appliance-performance'
@@ -41,6 +40,7 @@ SEC_NAME_SENSOR_READINGS: Final = 'sensor-readings'
 SEC_NAME_SWITCH_PORTS_STATUSES: Final = 'switch-ports-statuses'
 SEC_NAME_WIRELESS_DEVICE_STATUS: Final = 'wireless-device-status'
 SEC_NAME_WIRELESS_ETHERNET_STATUSES: Final = 'wireless-ethernet-statuses'
+# SEC_NAME_DEVICE_LLDP_CDP: Final[str] = 'device-lldp-cdp'
 
 # api cache defaults per section
 SEC_CACHE_APPLIANCE_PERFORMANCE = 0
@@ -60,7 +60,6 @@ SEC_CACHE_SENSOR_READINGS = 0
 SEC_CACHE_SWITCH_PORTS_STATUSES = 0
 SEC_CACHE_WIRELESS_DEVICE_STATUS = 30
 SEC_CACHE_WIRELESS_ETHERNET_STATUSES = 30
-SEC_CACHE_APPLIANCE_PORTS = 30
 
 # Early Access
 SEC_NAME_ORG_SWITCH_PORTS_STATUSES: Final = 'org-switch-ports-statuses'
diff --git a/source/cmk_addons_plugins/meraki/rulesets/organisations_api.py b/source/cmk_addons_plugins/meraki/rulesets/organisations_api.py
index e76cc02..fdd5cdf 100644
--- a/source/cmk_addons_plugins/meraki/rulesets/organisations_api.py
+++ b/source/cmk_addons_plugins/meraki/rulesets/organisations_api.py
@@ -35,20 +35,15 @@ def _parameter_form() -> Dictionary:
             # params from discovery
             'internal_item_name': DictElement(
                 render_only=True,
-                parameter_form=ServiceState(
+                parameter_form=String(
                     title=Title('Discovery internal item name')
                 )),
             'item_variant': DictElement(
                 render_only=True,
-                parameter_form=ServiceState(
+                parameter_form=String(
                     title=Title('Discovery item variant')
                 ))
         },
-        # ignored_keys=[
-        #     'internal_item_name',
-        #     'old_item_name',
-        #     'item_variant',
-        # ],
     )
 
 
diff --git a/source/packages/cisco_meraki b/source/packages/cisco_meraki
index 9704007..fe2751f 100644
--- a/source/packages/cisco_meraki
+++ b/source/packages/cisco_meraki
@@ -63,7 +63,7 @@
            'web': ['plugins/views/cisco_meraki.py']},
  'name': 'cisco_meraki',
  'title': 'Cisco Meraki special agent',
- 'version': '1.4.2-20250104',
+ 'version': '1.4.4-20250303',
  'version.min_required': '2.3.0b1',
  'version.packaged': 'cmk-mkp-tool 0.2.0',
  'version.usable_until': '2.4.0b1'}
-- 
GitLab