ioBroker / AdapterRequests

This Place is used to track the status of new Adapter-Requests.
247 stars 36 forks source link

Nutriu App for Phillips Login over Email #912

Open tommyMX opened 4 months ago

tommyMX commented 4 months ago

What kind of device or service would you like to see an adapter for? Nutriu App from Philips https://apps.apple.com/de/app/nutriu-rezepte-für-airfryer/id1273758728 Device: https://www.philips.de/c-p/HD9285_90/connected-airfryer-xxl-serie-5000

Is the device connected to the internet or only available on a local network? To the Internet connected with email login and passcode

Is an official App or Website available? https://apps.apple.com/de/app/nutriu-rezepte-für-airfryer/id1273758728

Is an official API including documentation available? no, because nothing found

Are other libraries for an integration available? not yet

Is this device already integrated in other Smart Home systems? https://community.home-assistant.io/t/philips-airfryer-nutriu-integration-alexa-only/544333 some people tried

Is this device already integrated in homebridge? Might the ham adapter in combination with the homebridge plugin be sufficient? Some people tried.... but didn't work, but no idea if they tried over coap or something else over the App I m sure it will work

Additional context Over the App more devices can work:

  1. Airfryer
  2. Air Cooker

For the first it would be nice to get some easy features like cooking temp, how long remaining cooking time, start stop and maybe get what is get cooked.

After you create the issue, please vote for yourself in the first post of the issue using the "+1"/"Thumbs up" button

tommyMX commented 4 months ago

I found some information at the HA forum:

Can you elaborate on how you decoded these messages? I am using Wireshark to sniff and I am getting traffic via UDP protocol and as a application/octet-stream. Do you happen to know the proper decoding/formatting?

PUT /di/v1/products/1/airfryer HTTP/1.1
Content-Type:application/octet-stream
Content-Transfer-Encoding:base64
Accept-Encoding:identity
x-di-udp-count:171
Host:192.168.2.16

uPLgY5hzmhYvM3hA243PULoeJUryNtqHD1cYJfs2sDwhaS211WMlso3pC9uaTpIDuaGV3uBp0ZxhN7xUmMbcIboyYMHfrmKfPjGlBZ2EOZImqIiFRqva2gFc/+3dufjE

I have a Philips Airfryer for quite some time now, but sadly don’t have a solution either. While the API is very simple - the authentication is not. You can sniff the traffic with tools like Fiddler and get all the commands and an authorization token. But the problem is, that this token gets invalid after power loss and after also after a day.
I think the app gets the token from [www.backend.ka.philips.com:443 37](http://www.backend.ka.philips.com:443/) but I can’t sniff that traffic.

 Example rest_command to start the Airfryer (not working without fresh token)
airfryer_start:
  url: 'https://192.168.55.88:443/di/v1/products/1/airfryer'
  method: PUT
  verify_ssl: false
  headers:
    Authorization: 'PHILIPS-Condor GggOpz+PvGi0wVhpNTyFTmdr0dGOGKQkLIh7kP2xHIkPSFZKylH2H3Sws9E7l1Xb'
  payload: '{"status":"cooking", "time": 1500, "cur_time": 1500, "temp": 180 }'
The URL seems to be different per product. The first “smart” airfryer uses the URL above. My new one uses /di/v1/products/1/venusaf
TA2k commented 3 months ago

https://forum.iobroker.net/topic/72448/test-adapter-nutriu