iobroker.panasonic-comfort-cloud 2.0.4 → 2.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/main.ts"],
4
+ "sourcesContent": ["/*\n * Created with @iobroker/create-adapter v1.16.0\n */\n\n// The adapter-core module gives you access to the core ioBroker functions\n// you need to create an adapter\nimport * as utils from '@iobroker/adapter-core'\n\nimport {\n Device,\n Group,\n ComfortCloudClient,\n Parameters,\n Power,\n AirSwingLR,\n AirSwingUD,\n FanAutoMode,\n EcoMode,\n OperationMode,\n FanSpeed,\n TokenExpiredError,\n ServiceError,\n NanoeMode\n} from 'panasonic-comfort-cloud-client'\n\nimport * as _ from 'lodash'\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace ioBroker {\n interface AdapterConfig {\n // Define the shape of your options here (recommended)\n username: string;\n password: string;\n refreshInterval: number;\n\n // Or use a catch-all approach\n [key: string]: any;\n }\n }\n}\n\nconst REFRESH_INTERVAL_IN_MINUTES_DEFAULT = 5\n\nconst comfortCloudClient = new ComfortCloudClient()\n\nclass PanasonicComfortCloud extends utils.Adapter {\n private refreshTimeout: NodeJS.Timeout | undefined\n private refreshIntervalInMinutes = REFRESH_INTERVAL_IN_MINUTES_DEFAULT\n\n private readonlyStateNames: string[] = [] \n\n public constructor(options: Partial<utils.AdapterOptions> = {}) {\n super({\n ...options,\n name: 'panasonic-comfort-cloud',\n })\n\n this.on('ready', this.onReady.bind(this))\n this.on('objectChange', this.onObjectChange.bind(this))\n this.on('stateChange', this.onStateChange.bind(this))\n // this.on('message', this.onMessage.bind(this));\n this.on('unload', this.onUnload.bind(this))\n }\n\n /**\n * Is called when databases are connected and adapter received configuration.\n */\n private async onReady(): Promise<void> {\n this.refreshIntervalInMinutes = this.config?.refreshInterval ?? REFRESH_INTERVAL_IN_MINUTES_DEFAULT\n this.subscribeStates('*')\n\n this.setState('info.connection', false, true);\n if(!this.config?.username || !this.config?.password) {\n this.log.error('Can not start without username or password. Please open config.')\n } else {\n try {\n this.log.debug(`Try to login with username ${this.config.username}.`)\n await comfortCloudClient.login(\n this.config.username,\n this.config.password\n )\n this.log.info('Login successful.')\n this.setState('info.connection', true, true)\n this.log.debug('Create devices.')\n const groups = await comfortCloudClient.getGroups()\n await this.createDevices(groups)\n\n this.setupRefreshTimeout()\n } catch (error) {\n await this.handleClientError(error)\n }\n }\n \n }\n\n private async refreshDeviceStates(device: Device): Promise<void> {\n this.log.debug(`Refresh device ${device.name} (${device.guid}).`)\n this.log.debug(`${device.name}: guid => ${device.guid}.`)\n \n this.log.debug(`${device.name}: operate => ${device.operate}.`)\n await this.setStateChangedAsync(\n `${device.name}.operate`,\n device.operate,\n true\n )\n this.log.debug(`${device.name}: temperatureSet => ${device.temperatureSet}.`)\n await this.setStateChangedAsync(\n `${device.name}.temperatureSet`,\n device.temperatureSet,\n true\n )\n this.log.debug(`${device.name}: insideTemperature => ${device.insideTemperature}.`)\n await this.setStateChangedAsync(\n `${device.name}.insideTemperature`,\n device.insideTemperature,\n true\n )\n this.log.debug(`${device.name}: outTemperature => ${device.outTemperature}.`)\n await this.setStateChangedAsync(\n `${device.name}.outTemperature`,\n device.outTemperature,\n true\n )\n this.log.debug(`${device.name}: airSwingLR => ${device.airSwingLR}.`)\n await this.setStateChangedAsync(\n `${device.name}.airSwingLR`,\n device.airSwingLR,\n true\n )\n this.log.debug(`${device.name}: airSwingUD => ${device.airSwingUD}.`)\n await this.setStateChangedAsync(\n `${device.name}.airSwingUD`,\n device.airSwingUD,\n true\n )\n this.log.debug(`${device.name}: fanAutoMode => ${device.fanAutoMode}.`)\n await this.setStateChangedAsync(\n `${device.name}.fanAutoMode`,\n device.fanAutoMode,\n true\n )\n this.log.debug(`${device.name}: ecoMode => ${device.ecoMode}.`)\n await this.setStateChangedAsync(\n `${device.name}.ecoMode`,\n device.ecoMode,\n true\n )\n this.log.debug(`${device.name}: operationMode => ${device.operationMode}.`)\n await this.setStateChangedAsync(\n `${device.name}.operationMode`,\n device.operationMode,\n true\n )\n this.log.debug(`${device.name}: fanSpeed => ${device.fanSpeed}.`)\n await this.setStateChangedAsync(\n `${device.name}.fanSpeed`,\n device.fanSpeed,\n true\n )\n this.log.debug(`${device.name}: actualNanoe => ${device.actualNanoe}.`)\n await this.setStateChangedAsync(\n `${device.name}.actualNanoe`,\n device.actualNanoe,\n true\n )\n this.log.debug(`Refresh device ${device.name} finished.`)\n }\n\n private async refreshDevice(guid: string, deviceName: string): Promise<void> {\n try {\n const device = await comfortCloudClient.getDevice(guid)\n if (!device) {\n return\n }\n if (!device.name) {\n device.name = deviceName\n }\n await this.refreshDeviceStates(device)\n } catch (error) {\n await this.handleClientError(error)\n }\n }\n\n private async refreshDevices(): Promise<void> {\n try {\n this.log.debug('Refresh all devices.')\n const groups = await comfortCloudClient.getGroups()\n this.setState('info.connection', true, true);\n const devices = _.flatMap(groups, g => g.devices)\n const deviceInfos = _.map(devices, d => { return{guid: d.guid, name: d.name}})\n await Promise.all(deviceInfos.map(async (deviceInfo) => {\n const device = await comfortCloudClient.getDevice(deviceInfo.guid)\n if(device != null) {\n device.name = deviceInfo.name\n device.guid = deviceInfo.guid\n await this.refreshDeviceStates(device)\n }\n }));\n } catch (error) {\n await this.handleClientError(error)\n }\n }\n\n private async createDevices(groups: Array<Group>): Promise<void> {\n const devices = await this.getDevicesAsync()\n const names = _.map(devices, (value) => {\n return value.common.name\n })\n const devicesFromService = _.flatMap(groups, g => g.devices)\n const deviceInfos = _.map(devicesFromService, d => { return {guid: d.guid, name: d.name}})\n await Promise.all(deviceInfos.map(async (deviceInfo) => {\n this.log.debug(`Device info from group ${deviceInfo.guid}, ${deviceInfo.name}.`)\n let device: Device | null = null\n try {\n device = await comfortCloudClient.getDevice(deviceInfo.guid)\n } catch(error) {\n await this.handleClientError(error)\n }\n \n if(device != null) {\n if (_.includes(names, deviceInfo.name)) {\n return\n }\n this.createDevice(deviceInfo.name)\n this.createState(\n deviceInfo.name,\n '',\n 'guid',\n { role: 'info.address', write: false, def: deviceInfo.guid, type: 'string' },\n undefined\n )\n this.readonlyStateNames.push('guid')\n\n this.createState(\n deviceInfo.name,\n '',\n 'operate',\n {\n role: 'switch.power',\n states: { 0: Power[0], 1: Power[1] },\n write: true,\n def: device.operate,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'temperatureSet',\n {\n role: 'level.temperature',\n write: true,\n def: device.temperatureSet,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'insideTemperature',\n {\n role: 'level.temperature',\n write: false,\n def: device.insideTemperature,\n type: 'number',\n },\n undefined\n )\n this.readonlyStateNames.push('insideTemperature')\n\n this.createState(\n deviceInfo.name,\n '',\n 'outTemperature',\n {\n role: 'level.temperature',\n write: false,\n def: device.outTemperature,\n type: 'number',\n },\n undefined\n )\n this.readonlyStateNames.push('outTemperature')\n\n this.createState(\n deviceInfo.name,\n '',\n 'airSwingLR',\n {\n role: 'state',\n states: {\n 0: AirSwingLR[0],\n 1: AirSwingLR[1],\n 2: AirSwingLR[2],\n 3: AirSwingLR[3],\n 4: AirSwingLR[4],\n },\n write: true,\n def: device.airSwingLR,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'airSwingUD',\n {\n role: 'state',\n states: {\n 0: AirSwingUD[0],\n 1: AirSwingUD[1],\n 2: AirSwingUD[2],\n 3: AirSwingUD[3],\n 4: AirSwingUD[4],\n },\n write: true,\n def: device.airSwingUD,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'fanAutoMode',\n {\n role: 'state',\n states: {\n 0: FanAutoMode[0],\n 1: FanAutoMode[1],\n 2: FanAutoMode[2],\n 3: FanAutoMode[3],\n },\n write: true,\n def: device.fanAutoMode,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'ecoMode',\n {\n role: 'state',\n states: { 0: EcoMode[0], 1: EcoMode[1], 2: EcoMode[2] },\n write: true,\n def: device.ecoMode,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'operationMode',\n {\n role: 'state',\n states: {\n 0: OperationMode[0],\n 1: OperationMode[1],\n 2: OperationMode[2],\n 3: OperationMode[3],\n 4: OperationMode[4],\n },\n write: true,\n def: device.operationMode,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'fanSpeed',\n {\n role: 'state',\n states: {\n 0: FanSpeed[0],\n 1: FanSpeed[1],\n 2: FanSpeed[2],\n 3: FanSpeed[3],\n 4: FanSpeed[4],\n 5: FanSpeed[5],\n },\n write: true,\n def: device.fanSpeed,\n type: 'number',\n },\n undefined\n )\n this.createState(\n deviceInfo.name,\n '',\n 'actualNanoe',\n {\n role: 'state',\n states: {\n 0: NanoeMode[0],\n 1: NanoeMode[1],\n 2: NanoeMode[2],\n 3: NanoeMode[3],\n 4: NanoeMode[4],\n },\n write: true,\n def: device.actualNanoe,\n type: 'number',\n },\n undefined\n )\n\n this.log.info(`Device ${deviceInfo.name} created.`)\n }\n }));\n this.log.debug('Device creation completed.')\n }\n\n private async updateDevice(\n deviceName: string,\n stateName: string,\n state: ioBroker.State\n ): Promise<void> {\n if(this.readonlyStateNames.includes(stateName)) {\n return\n }\n if (!state.ack) {\n const stateObj = await this.getObjectAsync(`${deviceName}.${stateName}`)\n const stateCommon = stateObj?.common as ioBroker.StateCommon\n if(stateCommon?.write == false) {\n return\n }\n\n const guidState = await this.getStateAsync(`${deviceName}.guid`)\n \n this.log.debug(\n `Update device guid=${guidState?.val} state=${stateName}`\n )\n const parameters: Parameters = {}\n parameters[stateName] = state.val\n if (!guidState?.val) {\n return\n }\n try {\n this.log.debug(`Set device parameter ${JSON.stringify(parameters)} for device ${guidState?.val}`)\n await comfortCloudClient.setParameters(\n guidState?.val as string,\n parameters\n )\n this.log.debug(`Refresh device ${deviceName}`)\n await this.refreshDevice(guidState?.val as string, deviceName)\n } catch (error) {\n await this.handleClientError(error)\n }\n }\n }\n\n /**\n * Is called when adapter shuts down - callback has to be called under any circumstances!\n */\n private onUnload(callback: () => void): void {\n try {\n if(this.refreshTimeout)\n clearTimeout(this.refreshTimeout)\n\n this.log.info('cleaned everything up...')\n callback()\n } catch (e) {\n callback()\n }\n }\n\n /**\n * Is called if a subscribed object changes\n */\n private onObjectChange(\n id: string,\n obj: ioBroker.Object | null | undefined\n ): void {\n if (obj) {\n // The object was changed\n this.log.info(`object ${id} changed: ${JSON.stringify(obj)}`)\n } else {\n // The object was deleted\n this.log.info(`object ${id} deleted`)\n }\n }\n\n /**\n * Is called if a subscribed state changes\n */\n private async onStateChange(\n id: string,\n state: ioBroker.State | null | undefined\n ): Promise<void> {\n if (state) {\n const elements = id.split('.')\n const deviceName = elements[elements.length - 2]\n const stateName = elements[elements.length - 1]\n try {\n await this.updateDevice(deviceName, stateName, state) \n } catch (error) {\n await this.handleClientError(error)\n }\n \n // The state was changed\n this.log.info(\n `state ${id} changed: ${state.val} (ack = ${state.ack})`\n )\n } else {\n // The state was deleted\n this.log.info(`state ${id} deleted`)\n }\n }\n\n private async handleClientError(error: unknown): Promise<void> {\n this.log.debug('Try to handle error.')\n \n if (error instanceof TokenExpiredError) {\n this.log.info(\n `Token of comfort cloud client expired. Trying to login again. Code=${error.code}. Stack: ${error.stack}`\n )\n this.setState('info.connection', false, true);\n await comfortCloudClient.login(\n this.config.username,\n this.config.password\n )\n this.setState('info.connection', true, true);\n this.log.info('Login successful.')\n } else if (error instanceof ServiceError) {\n this.setState('info.connection', false, true);\n this.log.error(\n `Service error: ${error.message}. Code=${error.code}. Stack: ${error.stack}`\n )\n } else if (error instanceof Error){\n this.log.error(`Unknown error: ${error}. Stack: ${error.stack}`)\n }\n }\n\n private setupRefreshTimeout(): void {\n this.log.debug('setupRefreshTimeout')\n const refreshIntervalInMilliseconds = this.refreshIntervalInMinutes * 60 * 1000\n this.log.debug(`refreshIntervalInMilliseconds=${refreshIntervalInMilliseconds}`)\n this.refreshTimeout = setTimeout(this.refreshTimeoutFunc.bind(this), refreshIntervalInMilliseconds);\n }\n\n private async refreshTimeoutFunc(): Promise<void> {\n this.log.debug(`refreshTimeoutFunc started.`)\n try {\n await this.refreshDevices()\n this.setupRefreshTimeout()\n } catch (error) {\n await this.handleClientError(error)\n }\n \n }\n\n}\n\nif (module.parent) {\n // Export the constructor in compact mode\n module.exports = (options: Partial<utils.AdapterOptions> | undefined) =>\n new PanasonicComfortCloud(options)\n} else {\n // otherwise start the instance directly\n (() => new PanasonicComfortCloud())()\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
package/io-package.json CHANGED
@@ -1,98 +1,93 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "panasonic-comfort-cloud",
4
- "version": "2.0.4",
4
+ "version": "2.0.6",
5
5
  "news": {
6
+ "2.0.6": {
7
+ "en": "panasonic-comfort-cloud-client updated to new version. (appVersion changed again)",
8
+ "de": "panasonic-comfort-cloud-client auf neue version aktualisiert. (appVersion erneut geändert)",
9
+ "ru": "Panasonic-comfort-cloud-client обновлен до новой версии. (версия приложения снова изменилась)",
10
+ "pt": "panasonic-comfort-cloud-client atualizado para a nova versão. (appVersion alterado novamente)",
11
+ "nl": "panasonic-comfort-cloud-client bijgewerkt naar nieuwe versie. (appVersie opnieuw gewijzigd)",
12
+ "fr": "panasonic-comfort-cloud-client mis à jour vers la nouvelle version. (appVersion changé à nouveau)",
13
+ "it": "panasonic-comfort-cloud-client aggiornato alla nuova versione. (appVersion cambiata di nuovo)",
14
+ "es": "panasonic-comfort-cloud-client actualizado a la nueva versión. (appVersion cambió de nuevo)",
15
+ "pl": "panasonic-comfort-cloud-client zaktualizowany do nowej wersji. (ponowna zmiana wersji aplikacji)",
16
+ "zh-cn": "panasonic-comfort-cloud-client 更新到新版本。 (appVersion又变了)"
17
+ },
18
+ "2.0.5": {
19
+ "en": "Translation for news added.",
20
+ "de": "Übersetzung für Nachrichten hinzugefügt.",
21
+ "ru": "Добавлен перевод новостей.",
22
+ "pt": "Tradução para notícias adicionada.",
23
+ "nl": "Vertaling voor nieuws toegevoegd.",
24
+ "fr": "Traduction pour les nouvelles ajoutée.",
25
+ "it": "Aggiunta la traduzione per le notizie.",
26
+ "es": "Traducción para noticias añadidas.",
27
+ "pl": "Dodano tłumaczenie wiadomości.",
28
+ "zh-cn": "添加了新闻翻译。"
29
+ },
6
30
  "2.0.4": {
7
31
  "en": "New version of dependencies installed.",
8
- "de": "Neue Version von Abhängigkeiten installiert."
32
+ "de": "Neue Version von Abhängigkeiten installiert.",
33
+ "ru": "Установлена ​​новая версия зависимостей.",
34
+ "pt": "Nova versão das dependências instaladas.",
35
+ "nl": "Nieuwe versie van afhankelijkheden geïnstalleerd.",
36
+ "fr": "Nouvelle version des dépendances installées.",
37
+ "it": "Nuova versione delle dipendenze installata.",
38
+ "es": "Nueva versión de dependencias instalada.",
39
+ "pl": "Zainstalowano nową wersję zależności.",
40
+ "zh-cn": "安装了新版本的依赖项。"
9
41
  },
10
42
  "2.0.3": {
11
43
  "en": "panasonic-comfort-cloud-client updated to new version. (appVersion changed again)",
12
- "de": "panasonic-comfort-cloud-client auf die neue Version aktualisiert. (appVersion wurde wieder geändert)"
44
+ "de": "panasonic-comfort-cloud-client auf die neue Version aktualisiert. (appVersion wurde wieder geändert)",
45
+ "ru": "Panasonic-comfort-cloud-client обновлен до новой версии. (версия приложения снова изменилась)",
46
+ "pt": "panasonic-comfort-cloud-client atualizado para a nova versão. (appVersion alterado novamente)",
47
+ "nl": "panasonic-comfort-cloud-client bijgewerkt naar nieuwe versie. (appVersie opnieuw gewijzigd)",
48
+ "fr": "panasonic-comfort-cloud-client mis à jour vers la nouvelle version. (appVersion changé à nouveau)",
49
+ "it": "panasonic-comfort-cloud-client aggiornato alla nuova versione. (appVersion cambiata di nuovo)",
50
+ "es": "panasonic-comfort-cloud-client actualizado a la nueva versión. (appVersion cambió de nuevo)",
51
+ "pl": "panasonic-comfort-cloud-client zaktualizowany do nowej wersji. (ponowna zmiana wersji aplikacji)",
52
+ "zh-cn": "panasonic-comfort-cloud-client 更新到新版本。 (appVersion又变了)"
13
53
  },
14
54
  "2.0.2": {
15
55
  "en": "panasonic-comfort-cloud-client updated to new version.",
16
- "de": "panasonic-comfort-cloud-client auf die neue Version aktualisiert."
56
+ "de": "panasonic-comfort-cloud-client auf die neue Version aktualisiert.",
57
+ "ru": "Panasonic-comfort-cloud-client обновлен до новой версии.",
58
+ "pt": "panasonic-comfort-cloud-client atualizado para a nova versão.",
59
+ "nl": "panasonic-comfort-cloud-client bijgewerkt naar nieuwe versie.",
60
+ "fr": "panasonic-comfort-cloud-client mis à jour vers la nouvelle version.",
61
+ "it": "panasonic-comfort-cloud-client aggiornato alla nuova versione.",
62
+ "es": "panasonic-comfort-cloud-client actualizado a la nueva versión.",
63
+ "pl": "panasonic-comfort-cloud-client zaktualizowany do nowej wersji.",
64
+ "zh-cn": "panasonic-comfort-cloud-client 更新到新版本。"
17
65
  },
18
66
  "2.0.1": {
19
67
  "en": "Changed the type of some states from string to number.",
20
- "de": "Den Typ von einigen States von string zu number geändert."
68
+ "de": "Den Typ von einigen States von string zu number geändert.",
69
+ "ru": "Изменен тип некоторых состояний со строки на число.",
70
+ "pt": "Alterado o tipo de alguns estados de string para número.",
71
+ "nl": "Het type van sommige toestanden gewijzigd van tekenreeks in nummer.",
72
+ "fr": "Changement du type de certains états de chaîne en nombre.",
73
+ "it": "Modificato il tipo di alcuni stati da stringa a numero.",
74
+ "es": "Cambió el tipo de algunos estados de cadena a número.",
75
+ "pl": "Zmieniono typ niektórych stanów z ciągu na numer.",
76
+ "zh-cn": "将某些状态的类型从字符串更改为数字。"
21
77
  },
22
78
  "2.0.0": {
23
79
  "en": "Added js-controller 3 dependency.\nAdded username and password to protectedNative and password to encryptedNative.\nAdded connection info.\nChanged schdule to timeout for refresh.\nFixes for async await pattern.",
24
- "de": "js-controller 3 als Abhängigkeit eingefügt.\nusername und password zu protectedNative und password zu encryptedNative hinzugefügt.\nconnection info als Status eingefügt.\nSchudle durch timeout für die Geräteaktualisierung erstezt.\nAsync und await überall korrekt berücksichtig."
25
- },
26
- "1.2.9": {
27
- "en": "Error handling for get device added.",
28
- "de": "Fehlerbehandlung beim Abrufen des Geräts hinzugefügt."
29
- },
30
- "1.2.8": {
31
- "en": "Fixed bug in Comfort Cloud client.",
32
- "de": "Fehler in Comfort Cloud client behoben."
33
- },
34
- "1.2.7": {
35
- "en": "Comfort Cloud client updated.",
36
- "de": "Comfort Cloud client aktualisiert."
37
- },
38
- "1.2.6": {
39
- "en": "Fixed bug that guid is null in device creation.",
40
- "de": "Fehler behoben, dass die GUID bei der Geräteerstellung null ist."
41
- },
42
- "1.2.5": {
43
- "en": "Comfort Cloud client updated.",
44
- "de": "Comfort Cloud client aktualisiert."
45
- },
46
- "1.2.4": {
47
- "en": "Fixed bug with undefined guid. Log messages added.",
48
- "de": "Problem mit undefinierter guid behoben. Log Ausgaben hinzugefügt."
49
- },
50
- "1.2.3": {
51
- "en": "Set parameters only for writable states.",
52
- "de": "Parameter werden nur noch für beschreibbare States übertragen."
53
- },
54
- "1.2.2": {
55
- "en": "Fixed error handling and added stack info.",
56
- "de": "Fehlerbehandlung repariert und Stack Informationen in Meldung eingefügt."
57
- },
58
- "1.2.1": {
59
- "en": "Fixed bug in refesh device method.",
60
- "de": "Fehler in der Methode zum Aktualisieren des Gerätes behoben."
61
- },
62
- "1.2.0": {
63
- "en": "States insideTemperature, outTemperature and Nanoe added.",
64
- "de": "States für Innentemperatur, Außentemperatur und Nanoe hinzugefügt."
65
- },
66
- "1.1.3": {
67
- "en": "Fixed problem with login of comfort cloud again.",
68
- "de": "Problem beim Anmelden an der Comfort Cloud wieder behoben."
69
- },
70
- "1.1.2": {
71
- "en": "Fixed problem with login of comfort cloud.",
72
- "de": "Problem beim Anmelden an der Comfort Cloud behoben."
73
- },
74
- "1.1.1": {
75
- "en": "Device refresh bug fixed.",
76
- "de": "Bug in der Geräteaktualisierung behoben."
77
- },
78
- "1.1.0": {
79
- "en": "Fan speed state added",
80
- "de": "State für die Lüftergeschwindigkeit eingefügt"
81
- },
82
- "0.0.4": {
83
- "en": "initial release",
84
- "de": "Erstveröffentlichung",
85
- "ru": "Начальная версия",
86
- "pt": "lançamento inicial",
87
- "nl": "Eerste uitgave",
88
- "fr": "Première version",
89
- "it": "Versione iniziale",
90
- "es": "Versión inicial",
91
- "pl": "Pierwsze wydanie",
92
- "zh-cn": "首次出版"
80
+ "de": "js-controller 3 als Abhängigkeit eingefügt.\nusername und password zu protectedNative und password zu encryptedNative hinzugefügt.\nconnection info als Status eingefügt.\nSchudle durch timeout für die Geräteaktualisierung erstezt.\nAsync und await überall korrekt berücksichtig.",
81
+ "ru": "Добавлена ​​зависимость js-controller 3.\nДобавлены имя пользователя и пароль для protectedNative и пароль для protectedNative.\nДобавлена ​​информация о подключении.\nИзменено расписание на тайм-аут для обновления.\nИсправления для асинхронного шаблона ожидания.",
82
+ "pt": "Adicionada dependência do js-controller 3.\nAdicionado nome de usuário e senha para protectedNative e senha paracryptedNative.\nAdicionadas informações de conexão.\nAlterado o schdule para o tempo limite para atualização.\nCorreções para o padrão de espera assíncrono.",
83
+ "nl": "Js-controller 3 afhankelijkheid toegevoegd.\nGebruikersnaam en wachtwoord toegevoegd aan protectedNative en wachtwoord aan versleuteldNative.\nVerbindingsinformatie toegevoegd.\nSchema gewijzigd in time-out voor vernieuwen.\nOplossingen voor async wachten op patroon.",
84
+ "fr": "Ajout de la dépendance js-controller 3.\nNom d'utilisateur et mot de passe ajoutés à protectedNative et mot de passe à protectedNative.\nAjout d'informations de connexion.\nModification de la planification du délai d'attente pour l'actualisation.\nCorrectifs pour le modèle d'attente asynchrone.",
85
+ "it": "Aggiunta la dipendenza js-controller 3.\nAggiunti nome utente e password a protectedNative e password acryptNative.\nAggiunte informazioni di connessione.\nProgrammazione modificata in timeout per l'aggiornamento.\nCorrezioni per il modello di attesa asincrono.",
86
+ "es": "Se agregó la dependencia js-controller 3.\nSe agregaron nombre de usuario y contraseña a protectedNative y contraseña a encryptedNative.\nSe agregó información de conexión.\nSe cambió la programación a tiempo de espera para actualizar.\nCorrecciones para el patrón de espera asíncrono.",
87
+ "pl": "Dodano zależność js-controller 3.\nDodano nazwę użytkownika i hasło do protectedNative i hasło do protectedNative.\nDodano informacje o połączeniu.\nZmieniono harmonogram na limit czasu na odświeżenie.\nPoprawki dla wzorca asynchronicznego oczekiwania.",
88
+ "zh-cn": "添加了 js-controller 3 依赖项。\n在 protectedNative 中添加了用户名和密码,在 encryptedNative 中添加了密码。\n添加了连接信息。\n将 schdule 更改为超时以进行刷新。\n修复了异步等待模式。"
93
89
  }
94
90
  },
95
- "title": "Panasonic Comfort Cloud",
96
91
  "titleLang": {
97
92
  "en": "Panasonic Comfort Cloud",
98
93
  "de": "Panasonic Comfort Cloud",
@@ -117,8 +112,12 @@
117
112
  "pl": "Adapter do chmury Panasonic Comfort Cloud",
118
113
  "zh-cn": "松下舒适云适配器"
119
114
  },
120
- "authors": ["marc <marc@lammers.dev>"],
121
- "keywords": ["air condition"],
115
+ "authors": [
116
+ "marc <marc@lammers.dev>"
117
+ ],
118
+ "keywords": [
119
+ "air condition"
120
+ ],
122
121
  "license": "MIT",
123
122
  "platform": "Javascript/Node.js",
124
123
  "connectionType": "cloud",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.panasonic-comfort-cloud",
3
- "version": "2.0.4",
3
+ "version": "2.0.6",
4
4
  "description": "Adapter for Panasonic Comfort Cloud",
5
5
  "author": {
6
6
  "name": "marc",
@@ -19,10 +19,11 @@
19
19
  "@iobroker/adapter-core": "^2.5.1",
20
20
  "@types/lodash": "^4.14.149",
21
21
  "lodash": "^4.17.15",
22
- "panasonic-comfort-cloud-client": "^1.1.6",
22
+ "panasonic-comfort-cloud-client": "^1.1.7",
23
23
  "ts-enum-util": "^4.0.1"
24
24
  },
25
25
  "devDependencies": {
26
+ "@iobroker/adapter-dev": "^1.1.0",
26
27
  "@iobroker/testing": "^2.5.4",
27
28
  "@types/chai": "^4.2.4",
28
29
  "@types/chai-as-promised": "^7.1.2",
@@ -50,9 +51,10 @@
50
51
  },
51
52
  "main": "build/main.js",
52
53
  "scripts": {
54
+ "translate": "translate-adapter",
53
55
  "prebuild": "rimraf ./build",
54
56
  "build:ts": "tsc -p tsconfig.build.json",
55
- "build": "npm run build:ts",
57
+ "build": "build-adapter ts",
56
58
  "watch:ts": "tsc -p tsconfig.build.json --watch",
57
59
  "watch": "npm run watch:ts",
58
60
  "test:ts": "mocha --opts test/mocha.custom.opts",