Slim­me deur­slo­ten aan­stu­ren met Tas­ker

Smart­locks met Tas­ker aan­stu­ren en in je smartho­me in­te­gre­ren

C’t Magazine - - Inhoud 9/2018 - Ste­fan Por­teck

Elek­tro­ni­sche slo­ten kun­nen een nut­ti­ge aan­vul­ling zijn om je smartho­me uit te brei­den. De apps die bij de slo­ten wor­den mee­ge­le­verd heb­ben ech­ter na­de­len: ze log­gen je open­ en sluit­mo­men­ten in de cloud of bie­den geen in­te­gra­tie met de rest van je smartho­me. We la­ten je zien hoe je de slo­ten in je smartho­me kunt aan­stu­ren en in­te­gre­ren zon­der de app van de fa­bri­kant te ge­brui­ken.

De mees­te smart­locks wor­den via blue­tooth met een app op je smartphone be­diend. Als je niet ge­luk­kig wordt van de ge­bo­den func­ties of de be­die­ning via een app niet pret­tig vindt, dan is een aan­tal mo­del­len ook via een an­de­re rou­te aan te stu­ren. Dat scheelt weer een app op je te­le­foon en het biedt ook veel meer en uit­ge­brei­de­re op­ties in ei­gen au­to­ma­tis­men voor het ope­nen of slui­ten van je deur.

Bij de in de vo­ri­ge c't (7-8/2018, pa­gi­na 74) ge­tes­te smart­locks kun je de­ze truc bij­voor­beeld toe­pas­sen op het Nu­ki-slot en de Da­na­lock V3. We la­ten je aan de hand van voor­beel­den zien hoe je een Nu­ki-slot met be­hulp van de An­droid-app Tas­ker au­to­ma­tisch laat ope­nen als je thuis­komt en hoe je het slot met openHAB in de rest van je smartho­me in­te­greert. De be­no­dig­de aan­pas­sin­gen voor de Da­na­lock staan aan het eind van het ar­ti­kel be­schre­ven.

Al­tijd be­reik­baar

De op­ti­o­neel ver­krijg­ba­re wi­fi­brid­ge van Nu­ki ont­vangt sim­pe­le HTTP-com­man­do's. Die stuurt hij dan via blue­tooth weer door naar het slot. De brid­ge moet con­ti­nu op een stop­con­tact aan­ge­slo­ten zijn op min­der dan vijf me­ter van de be­tref­fen­de deur.

Na­dat je de Brid­ge in de Nu­ki-app aan het slot hebt ge­kop­peld, kun je via de brow­ser de HTTP-toe­gang in­stel­len. De Brid­ge stuurt daar zijn lo­ka­le ip-adres en de Nu­ki-ID van het slot voor rich­ting de Nu­ki-ser­ver, zo­dat de ge­ge­vens uit het lo­ka­le net­werk via het adres htt­ps://api. nu­ki.io/dis­co­ver/brid­ges in de brow­ser op te roe­pen zijn. Om het slot aan te kun­nen roe­pen, is ook nog een vei­lig­heid­sto­ken no­dig waar­mee je als ge­brui­ker vol­doen­de rech­ten krijgt. Dat wordt aan­ge­maakt met het com­man­do http://<Nu­ki-Brid­ge-

IP>:8080/auth. Om mis­bruik te voor­ko­men, moet je op de Brid­ge een knop in­druk­ken om die aan­vraag te be­ves­ti­gen.

Daar­na kun je met be­hulp van de Nu­ki-ID en het Nu­ki-to­ken de aan­stu­ring van het slot via HTTP-toe­gang in je lo­ka­le net­werk in gang zet­ten. De aan­roep http://<Nu­ki-Brid­ge- IP>:8080/ lockAc­ti­on?nu­kiId=<Nu­ki-ID>&ac­ti­on= 1&to­ken=<Nu­ki-To­ken> ont­gren­delt je deur. Om hem te slui­ten of ex­tra aan te trek­ken, ver­an­der je het ge­tal ach­ter ac­ti­on naar 2 res­pec­tie­ve­lijk 3. Een vol­le­dig over­zicht van al­le com­man­do's staat bij de link aan het eind van dit ar­ti­kel.

De Nu­ki-brid­ge ge­bruikt geen HTT­PS, dus zorg dat je wi­fi met een vei­lig wacht­woord af­ge­schermd is en dat je je gas­ten via een apart gas­ten­net­werk toe­gang tot in­ter­net geeft. An­ders loop je het ri­si­co dat ie­mand het to­ken af­vangt en daar­mee con­tro­le over je elek­tro­ni­sche deur­slot krijgt.

Thuis­ko­men

Met de tools die je nu be­schik­baar hebt, kun je het au­to­ma­tisch un­loc­ken van het slot aan Tas­ker over­la­ten. De app is het Zwit­ser­se zak­mes on­der de au­to­ma­ti­se­rings-apps. Je kunt hem via de Goog­le Play Sto­re krij­gen voor 3 eu­ro. Met Tas­ker kun je zelfs com­plexe pro­ces­sen re­ge­len zon­der daar iets voor te hoe­ven pro­gram­me­ren. Je kiest de ge­wens­te ta­ken in de in­ter­fa­ce gro­ten­deels door er al­leen maar op te tik­ken. Een voor­deel is dat Tas­ker je smartphone-ac­cu nau­we­lijks be­last. In te­gen­stel­ling tot de 'of­fi­ci­ë­le' re­mo­te toe­gang van Nu­ki of IFTTT heeft Tas­ker geen cloud­ver­bin­ding no­dig en wordt al­les ge­woon lo­kaal ge­re­geld.

Tas­ker werkt vol­gens het if-then-prin­ci­pe: zo­dra aan één of meer si­tu­a­ties wordt vol­daan, start Tas­ker een of meer­de­re ta­ken op. Die ac­ties wor­den als Tas­ks ge­zien. Tas­ker voegt de voor­waar­den sa­men in pro­fie­len. We gaan aan de hand van een voor­beeld uit­leg­gen hoe we het au­to­ma­ti­sche ont­gren­de­len in­ge­steld heb­ben.

Net als bij de app van de fa­bri­kant zelf hoef je niet el­ke keer een ope­nen­com­man­do te stu­ren zo­dra je smartphone en slot el­kaar via blue­tooth kun­nen zien. Je smartphone heeft er geen idee van of je het slot van bin­nen of bui­ten je wo­ning be­na­dert. Daar­door kan er per abuis een ont­gren­de­ling plaats­vin­den ter­wijl je door je huis aan het wan­de­len bent.

Om dat te voor­ko­men, moet Tas­ker het com­man­do om de deur te ope­nen slechts één keer stu­ren als je van huis bent en de op­rij­laan komt op­rij­den. Tas­ker moet daar re­gel­ma­tig je lo­ca­tie voor be­pa­len. Ver­ge­le­ken met de of­fi­ci­ë­le app heeft Tas­ker het voor­deel daar niet de ener­gie­vre­ten­de GPS-ont­van­gers voor te ge­brui­ken, maar hij be­paalt je lo­ca­tie aan de hand van mo­bie­le zend­mas­ten.

Sche­ma­tisch ge­zien heeft de DIY­set-up met Tas­ker de vol­gen­de work­flow: Tas­ker houdt in de ga­ten of je van huis bent weg­ge­gaan en stelt dan een sta­tus­va­ri­a­be­le in. Zo­dra je smartphone met je ei­gen draad­lo­ze net­werk ver­bin­ding maakt, wordt een twee­de va­ri­a­be­le ge­zet en houdt Tas­ker in de ga­ten of het slot bin­nen blue­toot­hran­ge is. Zo ja, dan con­tro­leert Tas­ker bei­de va­ri­a­be­len en stuurt dan een HTTP-com­man­do om het slot te ont­gren­de­len.

Door de twee va­ri­a­be­len weet je ze­ker dat er al­leen maar tot ont­gren­de­len wordt over­ge­gaan als het huis eer­der ver­la­ten werd door het zet­ten van de eer­ste va­ri­a­be­le. Met slechts één en­ke­le va­ri­a­be­le kan Tas­ker niet be­pa­len of de smartphone en zijn ge­brui­ker echt van huis weg zijn of dat de te­le­foon op­nieuw ver­bin­ding maakt met een zend­mast, bij­voor­beeld om­dat je hem her­start hebt. Zo wordt de kans dat het slot per abuis wordt ont­gren­deld zo veel mo­ge­lijk voor­ko­men.

Re­gels op­stel­len

Om die the­o­rie in de prak­tijk uit te voe­ren, heeft Tas­ker de ta­ken no­dig die bij het weg­gaan en weer ar­ri­ve­ren de bij­be­ho­ren­de va­ri­a­be­len in­stel­len. Die zijn via de plus­knop in het on­der­deel Tas­ks aan te ma­ken en noe­men we in dit voor­beeld 'T-Thuis­ko­men' en 'T-Van huis'. Daar­na voeg je we­der­om via de plus­knop de bij­be­ho­ren­de ac­ties toe. De 'T-Van huis'-taak stelt de va­ri­a­be­le %AR­RI­VE­REN op 0 en %WEG­GAAN op 1. De Thuis­ko­men-taak stelt de va­ri­a­be­le %AR­RI­VE­REN in op 1.

De der­de taak is al­leen maar be­doeld voor de com­mu­ni­ca­tie met het slot en krijg de naam 'T-Ont­gren­de­len'. Die taak be­staat uit meer­de­re ac­ties. De eer­ste is een if-sta­te­ment dat con­tro­leert of de va­ri­a­be­le %WEG­GAAN de waar­de 1 heeft. Is dat niet het ge­val, dan is de smartphone toe­val­lig bin­nen de huis­mu­ren bin­nen het be­reik van het slot ge­ko­men en wordt de taak niet ver­der af­ge­werkt. Als de va­ri­a­be­le de juis­te waar­de heeft, laat de vol­gen­de ac­tie je smartphone kort pie­pen: een ex­tra con­tro­le om een even­tu­e­le on­ge­wens­te ont­gren­de­ling van het slot op te kun­nen mer­ken.

Daar­na zet Tas­ker die va­ri­a­be­len weer te­rug op 0, wat een nieu­we ont­gren­de­ling zon­der dat je weg­gaat moet voor­ko­men. De laat­ste ac­tie is het ver­gren­de­len via een HTTP-get met de eer­der be­schre­ven http:// <Nu­ki-Brid­ge-IP>:8080/lockAc­ti­on?nu­kiId= <Nu­ki-ID>&ac­ti­on=3&to­ken=<Nu­ki-To­ken> in het tekst­veld voor de ser­ver. Om er­voor te zor­gen dat Tas­ker geen fout­mel­ding toont, moet de ti­me-out een waar­de heb­ben van meer dan 20 se­con­den.

Voor het au­to­ma­tisch ont­gren­de­len moe­ten ook de pas­sen­de trig­gers wor­den in­ge­steld, of­te­wel de pro­fie­len die de ta­ken star­ten moe­ten wor­den ge­maakt. Daar­voor moet je in de me­nu­balk kie­zen voor Pro­fi­les en een pro­fiel aan­ma­ken met als naam 'P-Thuis­ko­men'. In het dia­loog­ven­ster dat na het tik­ken op de plus ver­schijnt, kies je eerst voor Sta­te, daar­na Pho­ne, en daar­na 'Cell Near'. Na het ge­ven van toe­stem­ming om de lo­ca­tie te ope­nen en een tik op Scan, slaat Tas­ker de ID's van de zend­mas­ten in de buurt op. Om er­voor te zor­gen dat de her­ken­ning goed werkt, moet de scan een paar mi­nu­ten du­ren en wan­del je on­der­tus­sen door je wo­ning. Na een paar mi­nu­ten heeft Tas­ker al­le thuis ge­bruik­te zend­mas­ten op­ge­spoord. Mocht je geen re­sul­ta­ten krij­gen, kun je 'Use New Cell API' aan­vin­ken bij 'Pre­fe­ren­ces / Mo­ni­tor' in Tas­ker. Na het af­ron­den van de scan en het te­rug­gaan naar het pro­fiel­over­zicht vraagt Tas­ker wel­ke taak bij het vol­doen aan de ge­beur­te­nis moet wor­den ge­start. Kies uit de lijst de taak 'T-Thuis­ko­men' die een van de bei­de va­ri­a­be­len in­stelt.

De vol­gen­de stap is het pro­fiel 'P-Van huis'. Die ge­bruikt ook zend­mas­ten als trig­ger. Een nieu­we scan is niet no­dig, ko­pi­eer

de mas­ten uit het vo­ri­ge pro­fiel. Om er­voor te zor­gen dat de trig­ger wordt ge­trig­gerd als die zend­mas­ten niet bin­nen be­reik val­len, plaats je een vin­kje bij 'In­vert'. Om het pro­fiel nog wat ver­der te fi­ne­tu­nen, voeg je bij de twee­de trig­ger­voor­waar­de via de plus­knop en daar­na Sta­te, Net en 'Wi­fi Con­nec­ted' je ei­gen wi­fi­net­werk toe en zet je weer een vin­kje bij In­vert. Als taak die moet wor­den uit­ge­voerd, wordt 'T-Van huis' ge­ko­zen – die de an­de­re va­ri­a­be­le in­stelt.

Dan ont­breekt al­leen nog het der­de pro­fiel, dat Tas­ker aan­spoort om de taak om te ont­gren­de­len uit te voe­ren. Die noe­men we 'Nu­ki bin­nen be­reik' en heeft drie pa­ra­me­ters als trig­ger: de va­ri­a­be­le %AR­RI­VE­REN moet op 1 staan. Die con­di­tie wordt via 'Sta­te / Va­ria­bles' toe­ge­voegd. Je smartphone moet met je ei­gen draad­lo­ze net­werk ver­bon­den zijn ('Sta­te / Net / Wi­fi Con­nec­ted') en het slot moet bin­nen be­reik zijn ('Sta­te / Net / BT Near').

Om er­voor te zor­gen dat 'BT Near' zijn werk als trig­ger doet, heeft Tas­ker het MACadres van het slot no­dig. Dat is met de gra­tis app 'Blue­tooth LE Scan­ner' te ach­ter­ha­len. Na­dat je het adres in het tekst­veld van Tas­ker hebt ge­zet, moet je nog een vin­kje plaat­sen ach­ter 'Low-Ener­gy (LE) De­vi­ces' en 'Un­pai­red De­vi­ces'. Als taak stel je 'T-ont­gren­de­len' in. Van­af dat mo­ment zorgt Tas­ker er­voor dat de deur au­to­ma­tisch wordt ont­gren­deld als je thuis­komt.

Als je de ta­ken en pro­fie­len niet zelf wilt in­stel­len, maar het script bij de link aan het eind van dit ar­ti­kel wilt ge­brui­ken, moet je de zend­mas­ten, de naam van je wi­fi­net­werk en het MAC-adres van het slot aan­pas­sen. Het is aan te ra­den om bij de Pre­fe­ren­ces van Tas­ker de 'Be­gin­ner Mo­de' uit te scha­ke­len.

Tas­ker slaat de va­ri­a­be­len lo­kaal op je smartphone op. Daar­door werkt het ook mak­ke­lijk op de smartpho­nes van je ge­zins­le­den of huis­ge­no­ten. Als je het slot hand­ma­tig met een tik van je vin­ger wilt ope­nen, maak je een ex­tra taak aan met al­leen het HTTP-com­man­do en zet je die als wid­get op je ho­me­screen.

Ver­ge­le­ken met de of­fi­ci­ë­le app van Nu­ki, die nog wel eens wat te­gen­werk­te, werk­te het au­to­ma­tisch ope­nen van het slot tij­dens on­ze tests erg be­trouw­baar. Dat had geen merk­baar gro­te in­vloed op de ac­cu­duur van de smartphone. Maar te­gen de bij An­droid 6 in­ge­voer­de ener­gie­be­spa­ren­de func­ties kan ook Tas­ker wei­nig in­bren­gen. Als je scherm uit­staat, ont­zegt het be­stu­rings­sys­teem de op de ach­ter­grond draai­en­de apps toe­gang tot in­ter­fa­ces. Mocht het au­to­ma­tisch ont­gren­de­len niet wer­ken zo­als het moet, dan helpt het door even kort op de po­werknop van je te­le­foon te druk­ken. Dat is de aan te ra­den om­weg in plaats van het ope­nen met een sleu­tel, an­ders krijg je la­ter pro­ble­men met ope­nen als je smartphone thuis weer wordt ge­ac­ti­veerd.

Op slot met openHAB

Het be­die­nen met HTTP-re­quests is niet al­leen han­dig in com­bi­na­tie met Tas­ker, maar ook met een smartho­me-cen­tra­le. Zo kun je bij­voor­beeld re­ge­len dat het slot au­to­ma­tisch weer op slot wordt ge­draaid zo­dra je de deur dicht­trekt. We gaan nu in op het wer­ken met openHAB, om­dat je daar­mee met wei­nig (pro­gram­meer)werk zeer ge­de­tail­leer­de au­to­ma­ti­se­rings­re­gels kunt aan­ma­ken.

Voor het ge­bruik van openHAB heb je slechts een re­cen­te Rasp­ber­ry Pi no­dig. Daar zijn al kant-en-kla­re sd-kaart-ima­ges voor be­schik­baar. He­laas her­kent Nu­ki niet of een deur zelf open of dicht is. Als je het voor­beeld na wilt ma­ken, heb je ook naast openHAB ook een Z-Wa­ve-usb-stick en een Z-Wa­ve-deur­con­tact no­dig. Die zijn voor een paar tien­tjes te koop.

De openHAB-re­gel die je no­dig hebt is als volgt op­ge­bouwd:

ru­le "af­slui­ten" when

Item deur­sen­sor chan­ged to CLO­SED then

Th­read::sleep(10000) if(deur­sen­sor.sta­te == CLO­SED) { sendHtt­pGetRe­quest( "http://<Nu­ki-Brid­ge-IP>:8080/

lockAc­ti­on?nu­kiId=<Nu­ki-ID> &ac­ti­on=2&to­ken=<Nu­ki-To­ken>",20000) } end

De re­gel wordt ge­trig­gerd zo­dra openHAB via het con­tact­plaat­je de mel­ding krijgt dat de deur ge­slo­ten is. Dan wacht de re­gel tien se­con­den en con­tro­leert dan of de deur nog steeds dicht zit. Daar­mee voor­kom je dat de deur per abuis wordt af­ge­slo­ten als de deur tus­sen­door op­nieuw wordt open­ge­trok­ken.

Zit de deur na tien se­con­den nog steeds dicht, dan stuurt openHAB het sluit­com­man­do rich­ting Nu­ki Brid­ge, die bij de eer­der ge­noem­de aan­stu­ring via Tas­ker ge­bruikt werd. Het eni­ge ver­schil is de ti­me-out van twin­tig se­con­den. Dat voor­komt dat openHAB een fout­mel­ding geeft aan­ge­zien het slui­ten en het be­ves­ti­gen via de Brid­ge wat tijd no­dig heeft. Door de flexi­bi­li­teit van openHAB is de re­gel he­le­maal aan je ei­gen wen­sen en si­tu­a­tie aan te pas­sen. Het if-sta­te­ment in het com­man­do kan weer ex­tra pa­ra­me­ters aan­roe­pen, bij­voor­beeld of het dag of nacht is voor het ge­val er al­leen 's nachts af­ge­slo­ten moet wor­den.

Als openHAB via je lo­ka­le draad­lo­ze net­werk aan­we­zig­heids­her­ken­ning ge­bruikt voor al­le smartpho­nes, is dat als ba­sis of uit­brei­ding van de deur­con­tact­trig­ger te ge­brui­ken. Pas zo­dra er nie­mand meer thuis is, wordt de dicht­ge­duw­de deur af­ge­slo­ten, an­ders niet. Dit scheelt weer wat bat­te­rij­ca­pa­ci­teit.

In de ge­noem­de voor­beel­den neemt openHAB het aan­stu­ren van de Nu­ki over, maar het slot is niet he­le­maal ge­ïn­te­greerd. Als je de sta­tus van het slot in een smartphone-in­ter­fa­ce wilt zien en het slot op die ma­nier hand­ma­tig wilt ope­nen of slui­ten, moet je de bij­be­ho­ren­de plug-in in­stal­le­ren. Die is bij de openHAB-in­stel­lin­gen te down­lo­a­den. Er zijn bij­voor­beeld ook re­gels mo­ge­lijk die au­to­ma­tisch waar­schu­wen zo­dra de bat­te­rij­en bij­na leeg zijn of waar­mee je tijd­slots kunt in­stel­len.

En nog meer

Wat we hier be­schre­ven heb­ben werkt niet al­leen met de Nu­ki, maar ook met de Da­na­lock V3. Die is in ver­schil­len­de ver­sies te koop, on­der meer met on­der­steu­ning voor Z-Wa­ve en Zig­bee. Zo is hij mak­ke­lijk aan je smartho­me-cen­tra­le te kop­pe­len. Te­gen de tijd dat je dit leest, moet er ook een wi­fi­brid­ge uit­ge­ko­men zijn.

Na­dat het ge­lukt is om een Z-Wa­ve­ver­bin­ding te ma­ken, is de Da­na­lock recht­streeks via door openHAB be­schik­ba­re ge­stel­de HTTP-re­quests te be­na­de­ren. Daar­mee kun je de re­quests in Tas­ker aan­pas­sen. Als je de Da­na­lock in openHAB 'Da­na­lock' hebt ge­noemd, heeft het com­man­do de vol­gen­de op­bouw: http://<openHAB-ser­ver-IP>:8080/ba­si­cui/ CMD?Da­na­lock=<slot­ac­tie>. Voor het aan­stu­ren via openHAB-re­gels heb je geen HTTP­com­man­do's no­dig. Je kunt daar de in­ter­ne openHAB-com­man­do's voor ge­brui­ken vol­gens de op­bouw sendCom­mand(Da­na­lock, <slot­ac­tie>).

Op die ma­nier kun je de apps van de smart­lock­fa­bri­kan­ten van je smartphone ver­wij­de­ren. Als je graag pri­va­cy­be­wust be­zig bent, kun je de Brid­ge van Nu­ki via je rou­ter toe­gang tot in­ter­net ont­zeg­gen. Via de lo­ka­le slot­com­man­do's kun je al­les im­mers be­die­nen zo­als je wilt. (avs)

Met drie in­ge­stel­de se­ries voor­waar­den her­kent Tas­ker wan­neer je voor­deur net­jes af­ge­slo­ten moet wor­den.

Newspapers in Dutch

Newspapers from Netherlands

© PressReader. All rights reserved.