From 2b08c688d3fab77fc1becb6646eb038040e5cf0a Mon Sep 17 00:00:00 2001 From: Nerivec <62446222+Nerivec@users.noreply.github.com> Date: Fri, 13 Dec 2024 20:50:48 +0100 Subject: [PATCH] fix: Proper extended PAN ID from `getNetworkParameters` (#25174) Co-authored-by: Koen Kanters --- lib/types/api.ts | 3 ++- test/extensions/bridge.test.ts | 2 +- test/mocks/zigbeeHerdsman.ts | 4 +++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/types/api.ts b/lib/types/api.ts index b429dd7160..2eaad7a007 100644 --- a/lib/types/api.ts +++ b/lib/types/api.ts @@ -165,7 +165,8 @@ export interface Zigbee2MQTTAPI { }; network: { pan_id: number; - extended_pan_id: number; + /** `0x${string}` 8-len */ + extended_pan_id: string; channel: number; }; log_level: 'debug' | 'info' | 'warning' | 'error'; diff --git a/test/extensions/bridge.test.ts b/test/extensions/bridge.test.ts index 58ceece850..84b0692359 100644 --- a/test/extensions/bridge.test.ts +++ b/test/extensions/bridge.test.ts @@ -220,7 +220,7 @@ describe('Extension: Bridge', () => { config_schema: settings.schemaJson, coordinator: {ieee_address: '0x00124b00120144ae', meta: {revision: 20190425, version: 1}, type: 'z-Stack'}, log_level: 'info', - network: {channel: 15, extended_pan_id: 0x001122, pan_id: 5674}, + network: {channel: 15, extended_pan_id: '0x64c5fd698daf0c00', pan_id: 5674}, permit_join: false, permit_join_end: undefined, restart_required: false, diff --git a/test/mocks/zigbeeHerdsman.ts b/test/mocks/zigbeeHerdsman.ts index 9728c8bc56..0135172f84 100644 --- a/test/mocks/zigbeeHerdsman.ts +++ b/test/mocks/zigbeeHerdsman.ts @@ -1098,7 +1098,9 @@ export const mockController = { backup: jest.fn(), coordinatorCheck: jest.fn(), getCoordinatorVersion: jest.fn((): Promise => Promise.resolve({type: 'z-Stack', meta: {version: 1, revision: 20190425}})), - getNetworkParameters: jest.fn((): Promise => Promise.resolve({panID: 0x162a, extendedPanID: 0x001122, channel: 15})), + getNetworkParameters: jest.fn( + (): Promise => Promise.resolve({panID: 0x162a, extendedPanID: '0x64c5fd698daf0c00', channel: 15}), + ), getDevices: jest.fn((): Device[] => []), getDevicesIterator: jest.fn(function* (predicate?: (value: Device) => boolean): Generator { for (const key in devices) {