{"_id":"@costantino03/node-red-contrib-estrazione-temperatura","_rev":"3-9ad74d71e947ef8902b4f3ddda479285","name":"@costantino03/node-red-contrib-estrazione-temperatura","dist-tags":{"latest":"0.0.4"},"versions":{"0.0.2":{"name":"@costantino03/node-red-contrib-estrazione-temperatura","version":"0.0.2","keywords":["node-red","node-red-contrib","homeassistant","climate","temperature","estrazione","thermostat"],"author":{"name":"costantino03"},"license":"MIT","_id":"@costantino03/node-red-contrib-estrazione-temperatura@0.0.2","maintainers":[{"name":"costantino03","email":"chiariellodino@gmail.com"}],"homepage":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura#readme","bugs":{"url":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura/issues"},"dist":{"shasum":"1546d82a7878a0c83b28d270f580c0325704ea48","tarball":"https://registry.npmjs.org/@costantino03/node-red-contrib-estrazione-temperatura/-/node-red-contrib-estrazione-temperatura-0.0.2.tgz","fileCount":8,"integrity":"sha512-p6ag/w38h7r2vBM86CA5HrWcpYmpHqHyML9gN4PoAbpwRPMxsfyalkGYWqEbHCjtRLm0jOn0/nTQHxvhSt3JWA==","signatures":[{"sig":"MEUCIFnR1eI+ni7ItUe73m1e4Vzh9yB2snTtX4gnb2cepESXAiEA3R+mnWf9mZSrUB14bhq8kp59J09vbB+KL7BYyFkAvTA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13318},"main":"nodes/extract-temperature.js","engines":{"node":">=14.0.0"},"gitHead":"23fbce9338f8d5b615f8e40be4d9f130df6e4bb5","_npmUser":{"name":"costantino03","email":"chiariellodino@gmail.com"},"node-red":{"nodes":{"extract-event-state":"nodes/extract-event-state.js","extract-temperature":"nodes/extract-temperature.js"}},"repository":{"url":"git+ssh://git@github.com/costantino03/node-red-contrib-estrazione-temperatura.git","type":"git"},"_npmVersion":"10.8.2","description":"Node-RED nodes per estrarre stato e temperature da eventi/entità climate di Home Assistant.","directories":{},"_nodeVersion":"18.20.8","dependencies":{},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-estrazione-temperatura_0.0.2_1761742893924_0.7274507136589157","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@costantino03/node-red-contrib-estrazione-temperatura","version":"0.0.3","keywords":["node-red","node-red-contrib","homeassistant","climate","temperature","estrazione","thermostat"],"author":{"name":"costantino03"},"license":"MIT","_id":"@costantino03/node-red-contrib-estrazione-temperatura@0.0.3","maintainers":[{"name":"costantino03","email":"chiariellodino@gmail.com"}],"homepage":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura#readme","bugs":{"url":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura/issues"},"dist":{"shasum":"352c279bb411e42c34e42a6e56e473b6d5eb1c5f","tarball":"https://registry.npmjs.org/@costantino03/node-red-contrib-estrazione-temperatura/-/node-red-contrib-estrazione-temperatura-0.0.3.tgz","fileCount":8,"integrity":"sha512-CvzTWD0g6mdM4r62rGg4pw3OnvNm4OzNeK7o1jfHYa2Qo/rR/kcU3vhCx4bf5dtkDCG9Bc/BQ81K1H9p1GqpfA==","signatures":[{"sig":"MEUCIQDhe3rEI79tEXx3caR/GYuCjzIp/8VzJmKnhRDVKRtZNwIgLiYCSkBfJWufKk1Dpv5duSr6P33kPjaXiitNyUyCEYg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14420},"main":"nodes/extract-temperature.js","engines":{"node":">=14.0.0"},"gitHead":"bdec3811dfda60493d4f4dbb4d0acb79b6a9821b","_npmUser":{"name":"costantino03","email":"chiariellodino@gmail.com"},"node-red":{"nodes":{"extract-event-state":"nodes/extract-event-state.js","extract-temperature":"nodes/extract-temperature.js"}},"repository":{"url":"git+ssh://git@github.com/costantino03/node-red-contrib-estrazione-temperatura.git","type":"git"},"_npmVersion":"10.8.2","description":"Node-RED nodes per estrarre stato e temperature da eventi/entità climate di Home Assistant.","directories":{},"_nodeVersion":"18.20.8","dependencies":{},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/node-red-contrib-estrazione-temperatura_0.0.3_1761745629607_0.5208017866890988","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@costantino03/node-red-contrib-estrazione-temperatura","version":"0.0.4","description":"Node-RED nodes per estrarre stato e temperature da eventi/entità climate di Home Assistant.","main":"nodes/extract-temperature.js","keywords":["node-red","node-red-contrib","homeassistant","climate","temperature","estrazione","thermostat"],"author":{"name":"costantino03"},"license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/costantino03/node-red-contrib-estrazione-temperatura.git"},"engines":{"node":">=14.0.0"},"node-red":{"nodes":{"extract-temperature":"nodes/extract-temperature.js","extract-event-state":"nodes/extract-event-state.js"}},"dependencies":{},"_id":"@costantino03/node-red-contrib-estrazione-temperatura@0.0.4","gitHead":"8d51c758fa2f952b4a637d35efa965f89f700ff3","bugs":{"url":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura/issues"},"homepage":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura#readme","_nodeVersion":"18.20.8","_npmVersion":"10.8.2","dist":{"integrity":"sha512-r/pJQ/TrO7Z0wKn9m0i99VW3ANE7WCXzA49CsaQ8YG5fnURbyaq0pzPyRSe7L3iZqmoRaDZLM4YJNvdQWcNBgQ==","shasum":"c05e01bf240ccb37abd8b37fb716f742bef40df5","tarball":"https://registry.npmjs.org/@costantino03/node-red-contrib-estrazione-temperatura/-/node-red-contrib-estrazione-temperatura-0.0.4.tgz","fileCount":8,"unpackedSize":17537,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD5FwgU+J2TlCOdhX73GWXw1xNDwNr/ALY6lyj3ODIn+gIgEh2mQr+zPPY4H5cdLRPpBV9oYUgQ9hLisAKrkrOi46Q="}]},"_npmUser":{"name":"costantino03","email":"chiariellodino@gmail.com"},"directories":{},"maintainers":[{"name":"costantino03","email":"chiariellodino@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/node-red-contrib-estrazione-temperatura_0.0.4_1761746668272_0.07549825263442456"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-29T13:01:33.789Z","modified":"2025-10-29T14:04:28.651Z","0.0.2":"2025-10-29T13:01:34.140Z","0.0.3":"2025-10-29T13:47:09.790Z","0.0.4":"2025-10-29T14:04:28.467Z"},"bugs":{"url":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura/issues"},"author":{"name":"costantino03"},"license":"MIT","homepage":"https://github.com/costantino03/node-red-contrib-estrazione-temperatura#readme","keywords":["node-red","node-red-contrib","homeassistant","climate","temperature","estrazione","thermostat"],"repository":{"type":"git","url":"git+ssh://git@github.com/costantino03/node-red-contrib-estrazione-temperatura.git"},"description":"Node-RED nodes per estrarre stato e temperature da eventi/entità climate di Home Assistant.","maintainers":[{"name":"costantino03","email":"chiariellodino@gmail.com"}],"readme":"```markdown\n# node-red-contrib-estrazione-temperatura\n\nPiccola libreria Node-RED per gestire ed estrarre dati da entità di tipo \"climate\" (Home Assistant).\n\n## Contenuto\nLa libreria fornisce due nodi semplici e mirati:\n\n- `extract-event-state`  \n  - Scopo: riceve un evento (es. payload degli eventi di Home Assistant), estrae `new_state` (se presente) o usa il payload direttamente e lo mette in `msg.data` e `msg.payload`.  \n  - Uscite:  \n    - Uscita 1: stato estratto (in payload).  \n    - Uscita 2: messaggio originale (opzionale, attivabile tramite la proprietà `passThrough`).\n\n- `extract-temperature`  \n  - Scopo: riceve un oggetto stato (o il wrapper evento) e estrae i campi `attributes.current_temperature` (uscita 1) e `attributes.temperature` (setpoint, uscita 2). Se i valori non sono presenti, vengono comunque inviati messaggi con `payload: null`.  \n  - Uscite:  \n    - Uscita 1: `current_temperature` (payload)  \n    - Uscita 2: `temperature` (setpoint, payload)\n\nQuesti nodi sono pensati per normalizzare gli eventi/stati delle entità `climate` prima di ulteriori elaborazioni (logica, storage, dashboard, ecc.).\n\n## Installazione locale (per test)\n1. Scarica o copia la cartella del pacchetto in una posizione sulla tua macchina, ad esempio `~/projects/node-red-contrib-estrazione-temperatura`.\n2. Dal folder principale di Node-RED (di solito `~/.node-red`) esegui:\n   - npm install /percorso/alla/cartella/node-red-contrib-estrazione-temperatura\n   - oppure installa direttamente dallo zip del branch:\n     npm install https://github.com/costantino03/node-red-contrib-estrazione-temperatura/archive/refs/heads/feat/estrazione-temperatura.zip\n3. Riavvia Node-RED.\n\nPer pubblicare su npm: aggiorna `package.json` con il campo `repository` e usa `npm publish` (assicurati che il nome del pacchetto sia disponibile e che tu abbia eseguito l'accesso con il tuo account npm).\n\n## Esempio rapido di test\n1. Crea un nodo Inject (tipo JSON) con questo payload:\n```json\n{\n  \"data\": {\n    \"new_state\": {\n      \"attributes\": {\n        \"current_temperature\": 21.5,\n        \"temperature\": 22\n      }\n    }\n  }\n}\n```\n2. Collega l'Inject a `extract-event-state` (imposta `passThrough: true` se vuoi vedere anche il messaggio originale).\n3. Collega l'uscita 1 di `extract-event-state` a `extract-temperature`.\n4. Collega due Debug ai due output di `extract-temperature`:\n   - Vedrai `payload: 21.5` (current_temperature) e `payload: 22` (setpoint).\n\n## Configurazione nodi\n- `extract-event-state`\n  - passThrough: boolean — se true, invia il messaggio originale sulla seconda uscita.\n- `extract-temperature`\n  - source: `auto` | `msg.data` | `msg.payload` — determina dove cercare i dati (default `auto`).\n\nNota: i nodi sono volutamente minimal; se vuoi opzioni aggiuntive (nome campo attributes personalizzabile, parsing di stringhe numeriche, gestione unità), posso aggiungerle.\n\n## Troubleshooting\n- Se non vedi i nodi in Node-RED dopo l'installazione, verifica di aver riavviato Node-RED e che non ci siano errori nel log (controlla `~/.node-red/logs` o i log del servizio).\n- Se i valori non compaiono, controlla la struttura del payload in ingresso (usa un nodo Debug completo per ispezionare `msg`).\n\n## Licenza\nMIT — vedi il file `LICENSE` nel repository.\n\n## Autore\ncostantino03\n```\n","readmeFilename":"README.md"}