robertklep / bosch-xmpp

Protocol implementation for Bosch XMPP protocols
MIT License
47 stars 7 forks source link

bosch-xmpp ivt get / fails with HTTP 404 #46

Open TimmvonderMehden opened 10 months ago

TimmvonderMehden commented 10 months ago

getting endpoints /gateway , /system /heatingCircuits works like a charm, but getting the root fails with:

Error: HTTP_NOT_FOUND at /usr/lib/node_modules/bosch-xmpp/lib/base-client.js:213:25 at tryCatcher (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/util.js:16:23) at Promise._settlePromiseFromHandler (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/promise.js:547:31) at Promise._settlePromise (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/promise.js:604:18) at Promise._settlePromise0 (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/promise.js:649:10) at Promise._settlePromises (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/promise.js:729:18) at _drainQueueStep (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/async.js:93:12) at _drainQueue (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/async.js:86:9) at Async._drainQueues (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/async.js:102:5) at Async.drainQueues [as _onImmediate] (/usr/lib/node_modules/bosch-xmpp/node_modules/bluebird/js/release/async.js:15:14) at process.processImmediate (node:internal/timers:476:21) { response: { protocolVersion: 'HTTP/1.0', statusCode: '404', statusMessage: 'Not Found', headers: {}, body: '\r\n' } }

I am not sure if it is an issue with bosch-xmpp or the interface in the cloud at bosch or the hardware

I have a Junkers MBLAN 2 connected to CW400 controller. (KUBC29

Unfortunately i can only guess the endpoints and found just three of them (all sub end points are accessibe as well):

/gateway /system /heatingCircuits

I cannot detect warm water device or the energy log (which is most interesting)

some more infos:

{"id":"/system/brand","type":"stringValue","writeable":0,"recordable":0,"value":"Junkers"...} {"id":"/system/systemType","type":"stringValue","writeable":0,"recordable":0,"value":"NSC_ICOM_GATEWAY"...} {"id":"/system/bus","type":"stringValue","writeable":0,"recordable":0,"value":"EMS2_0",...} {"id":"/gateway/versionFirmware","type":"stringValue","writeable":0,"recordable":0,"value":"04.08.02"} {"id":"/gateway/versionHardware","type":"stringValue","writeable":0,"recordable":0,"value":"iCom_Low_NSC_v1"}

robertklep commented 10 months ago

The hardware may just not support requests to "/".

What's the (Android/iOS) app that you would use to communicate with the device? It might be possible to download and decompile it to find out which endpoints it accesses.