iobroker.ipp 0.0.1 → 0.0.2
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.
- package/README.md +9 -6
- package/build/io-package.json +14 -1
- package/io-package.json +14 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -4,18 +4,13 @@
|
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/iobroker.ipp)
|
|
6
6
|
[](https://www.npmjs.com/package/iobroker.ipp)
|
|
7
|
-

|
|
8
|
-

|
|
9
7
|
|
|
10
|
-
[](https://nodei.co/npm/iobroker.ipp/)
|
|
11
|
-
|
|
12
|
-
**Tests:** 
|
|
13
8
|
|
|
14
9
|
## ioBroker Internet Printing Protocol Adapter
|
|
15
10
|
|
|
16
11
|
The adapter polls configured network printers using the Internet Printing Protocol (IPP) and publishes read-only availability, printer state, toner or ink levels, and supported page counters. It uses `Get-Printer-Attributes` over IPP/2.0; device and firmware support varies, so optional attributes may not be reported by every printer. Compatibility depends on each printer’s IPP implementation; no particular device has been verified against this implementation.
|
|
17
12
|
|
|
18
|
-
Node.js
|
|
13
|
+
Node.js 22 or newer, Admin 8.2.0 or newer, and js-controller 7.2.2 or newer are required.
|
|
19
14
|
|
|
20
15
|
## Configuration
|
|
21
16
|
|
|
@@ -43,6 +38,8 @@ When a printer is switched off or temporarily unreachable, the adapter marks it
|
|
|
43
38
|
|
|
44
39
|
Each configured printer gets a device with `status`, `supplies`, `counters`, and `details` channels. Supplementary IPP attributes are created directly under `details` (for example, `details.printer_location`); attributes already represented by the canonical status, model, and counter states are not duplicated. The adapter requests all IPP attributes and creates states for returned values except explicitly excluded capabilities, verbose attribute families, and raw marker values; selected capability/default attributes are retained. Arrays and structured values are stored as JSON strings; scalar values keep their boolean, number, or string type. Unknown, non-excluded attributes are added automatically under `details`. `status.online` is always present; `status.model`, `status.message`, and numeric `status.state` are published when supported. The state value is `0` (`off`) while the printer is unreachable, and returns to the reported IPP state when it reconnects. Previously read measurements remain available while offline. IPP marker levels are normalized to percentages using the reported low/high bounds and rounded to two decimal places. `pages_completed`, `impressions_completed`, and `media_sheets_completed` are created only when the printer reports them. Missing values are cleared rather than replaced with zero during successful polls. Request details are not logged.
|
|
45
40
|
|
|
41
|
+
For supply reporting, the adapter combines `marker-names` with the corresponding entries in `marker-levels`, `marker-low-levels`, and `marker-high-levels`; `marker-types` is used when supplied. A supply is skipped if its name or any required numeric level/bound is missing, invalid, or out of range. Counters map from `pages-completed`, `impressions-completed`, and `media-sheets-completed` to `pages_completed`, `impressions_completed`, and `media_sheets_completed`. When reporting missing values, include the printer model and firmware, which of these IPP attributes the printer returns, and the raw values or state IDs that are absent.
|
|
42
|
+
|
|
46
43
|
[](https://www.paypal.com/donate/?hosted_button_id=3RJQGSJNRSHUJ)
|
|
47
44
|
|
|
48
45
|
## Changelog
|
|
@@ -50,10 +47,16 @@ Each configured printer gets a device with `status`, `supplies`, `counters`, and
|
|
|
50
47
|
Placeholder for the next version (at the beginning of the line):
|
|
51
48
|
### **WORK IN PROGRESS**
|
|
52
49
|
-->
|
|
50
|
+
### 0.0.2 (2026-10-28)
|
|
51
|
+
|
|
52
|
+
- (Voodoo2man) Added Node.js 22 support and documented printer supply and counter attributes.
|
|
53
|
+
|
|
53
54
|
### 0.0.1 (2026-10-27)
|
|
54
55
|
|
|
55
56
|
- (Voodoo2man) initial release
|
|
56
57
|
|
|
58
|
+
Older release notes are available in [CHANGELOG_OLD.md](CHANGELOG_OLD.md).
|
|
59
|
+
|
|
57
60
|
## License
|
|
58
61
|
MIT License
|
|
59
62
|
|
package/build/io-package.json
CHANGED
|
@@ -2,8 +2,21 @@
|
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "ipp",
|
|
4
4
|
"nogit": true,
|
|
5
|
-
"version": "0.0.
|
|
5
|
+
"version": "0.0.2",
|
|
6
6
|
"news": {
|
|
7
|
+
"0.0.2": {
|
|
8
|
+
"en": "Added Node.js 22 support and documented printer supply and counter attributes.",
|
|
9
|
+
"de": "Support für Node.js 22 hinzugefügt und Druckerbedarf und Zähler dokumentiert.",
|
|
10
|
+
"ru": "Добавлена поддержка Node.js 22 и документированные атрибуты расходных материалов и счетчиков принтеров.",
|
|
11
|
+
"pt": "Foi adicionado o suporte ao Node.js 22 e documentou a fonte e o contador.",
|
|
12
|
+
"nl": "Ondersteuning voor Node.js 22 toegevoegd en de printerbenodigdheden en tellerkenmerken gedocumenteerd.",
|
|
13
|
+
"fr": "Ajout du support de Node.js 22 et des attributs d'imprimante et de compteur documentés.",
|
|
14
|
+
"it": "Aggiunto il supporto per Node.js 22 e attributi di stampa e contatore.",
|
|
15
|
+
"es": "Se ha añadido Node.js 22 y ha documentado los atributos de suministro y contador.",
|
|
16
|
+
"pl": "Dodano obsługę Node.js 22 i udokumentowane atrybuty zasilania drukarki i licznika.",
|
|
17
|
+
"uk": "Додана підтримка Node.js 22 і задокументована подача принтера і атрибути лічильника.",
|
|
18
|
+
"zh-cn": "添加了 Node.js 22 支持,并记录了打印机供应和计数器属性。"
|
|
19
|
+
},
|
|
7
20
|
"0.0.1": {
|
|
8
21
|
"en": "initial release",
|
|
9
22
|
"de": "Erstveröffentlichung",
|
package/io-package.json
CHANGED
|
@@ -2,8 +2,21 @@
|
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "ipp",
|
|
4
4
|
"nogit": true,
|
|
5
|
-
"version": "0.0.
|
|
5
|
+
"version": "0.0.2",
|
|
6
6
|
"news": {
|
|
7
|
+
"0.0.2": {
|
|
8
|
+
"en": "Added Node.js 22 support and documented printer supply and counter attributes.",
|
|
9
|
+
"de": "Support für Node.js 22 hinzugefügt und Druckerbedarf und Zähler dokumentiert.",
|
|
10
|
+
"ru": "Добавлена поддержка Node.js 22 и документированные атрибуты расходных материалов и счетчиков принтеров.",
|
|
11
|
+
"pt": "Foi adicionado o suporte ao Node.js 22 e documentou a fonte e o contador.",
|
|
12
|
+
"nl": "Ondersteuning voor Node.js 22 toegevoegd en de printerbenodigdheden en tellerkenmerken gedocumenteerd.",
|
|
13
|
+
"fr": "Ajout du support de Node.js 22 et des attributs d'imprimante et de compteur documentés.",
|
|
14
|
+
"it": "Aggiunto il supporto per Node.js 22 e attributi di stampa e contatore.",
|
|
15
|
+
"es": "Se ha añadido Node.js 22 y ha documentado los atributos de suministro y contador.",
|
|
16
|
+
"pl": "Dodano obsługę Node.js 22 i udokumentowane atrybuty zasilania drukarki i licznika.",
|
|
17
|
+
"uk": "Додана підтримка Node.js 22 і задокументована подача принтера і атрибути лічильника.",
|
|
18
|
+
"zh-cn": "添加了 Node.js 22 支持,并记录了打印机供应和计数器属性。"
|
|
19
|
+
},
|
|
7
20
|
"0.0.1": {
|
|
8
21
|
"en": "initial release",
|
|
9
22
|
"de": "Erstveröffentlichung",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.ipp",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.2",
|
|
4
4
|
"description": "Read-only network printer monitoring over Internet Printing Protocol (IPP)",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Voodoo2man",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"url": "https://github.com/Voodoo2man/ioBroker.ipp.git"
|
|
23
23
|
},
|
|
24
24
|
"engines": {
|
|
25
|
-
"node": ">=
|
|
25
|
+
"node": ">= 22"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@iobroker/adapter-core": "^3.4.3",
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
"@iobroker/adapter-dev": "^1.5.0",
|
|
37
37
|
"@iobroker/eslint-config": "^2.3.4",
|
|
38
38
|
"@iobroker/testing": "^6.3.1",
|
|
39
|
-
"@tsconfig/
|
|
39
|
+
"@tsconfig/node22": "^22.0.6",
|
|
40
40
|
"@types/iobroker": "npm:@iobroker/types@^7.2.5",
|
|
41
|
-
"@types/node": "^
|
|
41
|
+
"@types/node": "^22.20.5",
|
|
42
42
|
"typescript": "~5.9.3"
|
|
43
43
|
},
|
|
44
44
|
"main": "build/main.js",
|