[linux] Nefit Easy WAS: detective spelen?

paai j.j.paijmans op gmail.com
Wo Nov 8 09:17:18 CET 2017



On 08-11-17 08:43, Geert Stappers wrote:
> On Tue, Nov 07, 2017 at 06:00:18PM +0100, paai wrote:
>> On 07-11-17 16:37, Micha Kersloot wrote:
>>> Hoi,
>>>
>>> misschien eens connecten met een browser?
>>>
>>> Zo te zien ziet nmap dat het een embedded device type is en dat
>>> kan natuurlijk prima kloppen.
>> Het is inderdaad de Nefit thermostaat: de 'device name' in de
>> connected devices list van de router is een lang nummer, waarin het
>> serienummer van de nefit verstopt zit...
> Die "connected devices" is dat een lijst van de DHCP-server?
>   [ja/nee/weet niet/weet niet zeker]
>
>> Intussen https://github.com/robertklep/nefit-easy-core gevonden,
>> waarmee je de Nefit vanuit Linux kunt bedienen.
> Uit de README van die URL
>
>    Nefit Easy(TM) core
>
>    Core functionality to implementation communications
>    with Nefit/Bosch backend.
>
>    Unless you're implementing a client yourself,
>    this library is probably not what you're looking for.
>
>
> Nog kort naar https://github.com/topics/nefit-easy gekeken.
> Volgens mij staat er tussen de regels zo iets als
>   
>    * Je hebt een Nefit Easy
>    * Je hebt dus ook documentatie over de Nefit Easy
>    * In die documentatie kun je lezen hoe de Nefit Easy aan te spreken
>    * Er is software geschreven die dat doet
>    * Die software heb je gevonden
>    * Voor mij werkt het
>
>
> De volgende stap is het nabouwen van een werkende situatie.
>
> Heb niet de verwachting dat het vooraf "easy" is.
> Achteraf vastwel. Neem dan de tijd om het te beschrijven.
>
Tot mijn chagrijn levert Nefit de bediening van de thermostaat alleen op 
Android of iPhone devices en is er geen normale browser toegang zoals de 
meeste printers, cameras en weet-ik-veel wel hebben. Het loont dus de 
moeite om te kijken of je zelf iets kunt knutselen.

Eerste probleempje was het feit dat na de installatie van node.js nog 
met de hand een symlink node.js->node moest worden gemaakt. Daarna 
liepen de programmas van meneer Klep, hoewel ze niet altijd contact met 
de thermostaat wisten te maken. En omdat er werd gesuggereerd dat de 
Easy geblokkeerd kon worden door teveel '(ab)use' van de command line 
interface, deed ik het ook heel voorzichtig aan. Communicatie via de 
http-server zou dat abuse-probleem trouwens ondervangen.

Ik zit dus met twee commando sets, met van ieder een of twee 
verschillende voorbeelden. De CLI snap ik zo'n beetje, maar die zou dus 
wat riskant zijn. De http-server wordt op de Linuxbak gestart en 
aangestuurd met curl, waar ik dus helemaal niets van snap.


Tweede probleem: er werden twee of drie voorbeelden gegeven en verder 
een lijst met een paar dozijn weinig zeggende 'endpoints'. Sommige 
endpoints kun je in de browser openen en die geven dan informatie.

Intussen ben ik erin geslaagd de gewenste temperatuur te wijzigen met

|curl -XPOST 
http://127.0.0.1:3000/bridge/heatingCircuits/hc1/temperatureRoomManual 
-d '{"value":20}' -H 'Content-Type: application/json'|

|c.q.
||
easy set temperature '20'

waarbij de laatste natuurlijk de gemakkelijkste is, maar met de caveat 
hem niet meer dan om de paar minuten te gebruiken. Dat curl commmando is 
dus voor mij onbegrijpelijk.
|||
------------- volgend deel ------------
Een HTML-bijlage is gescrubt...
URL: <https://lists.nllgg.nl/pipermail/linux/attachments/20171108/14edfaa8/attachment.html>


Meer informatie over de Linux maillijst