Tips & Tricks & Utvikling

NRKbetas nye resepsjonist-robot


Vi er veldig dårlige til å holde rede på hvor kollega Christoffer er til enhver tid, så vi laget en resepsjonist-robot.

Vi i NRKbeta har en kollega – Christoffer – som er vesentlig mer populær enn oss andre. Det er alltid noen som kommer for å spørre ham om et eller annet.

Vi sitter innerst i en bygningsmessig blindvei, så de som vil treffe ham har vært nødt til å ta turen gjennom en lang gang, runde hjørnet i Beta-kroken og se den tomme plassen hans før de har sjansen til å bli skuffet. Mye av tiden er han nemlig ikke på plassen sin.

Men når folk først har gått så langt kommer gjerne en samtale som forløper omtrent slik:

– Så… Christoffer er ikke her?

– Nei, han ville nok sittet på plassen sin (peker) om han var her.

– Vet du hvor han er?

– Høyt og lavt som vanlig. Han pleier ikke si hvor han skal.

– Når så du ham sist?

– Tja, si det. Jeg satt og jobbet, så jeg glemte å sjekke klokken.

– Vet du når han er tilbake?

– Nei, det er ikke godt å si.

– Vel, da får jeg bare komme tilbake.

Rinse & repeat inntil Christoffer manifesterer seg.

Dette MÅ da kunne automatiseres?

Vi fant ut at vi kunne spare inn mye arbeidstid både for oss selv og kolleger ved å lage en “Nei, Christoffer er ikke her”-maskin som håndterte samtalen like godt som oss manuelle mennesker. Eller for den del gjerne bedre.

You never change things by fighting the existing reality. To change something, build a new model that makes the existing model obsolete.

Richard Buckminster Fuller

En automatisert løsning er nødvendigvis privatliv-invaderende. Det er helt klart noen etiske spørsmål om overvåking på arbeidsplassen her. Christoffer (som også er avdelingens verneombud) synes det var greit at vi testet dette, så med hans samtykke gikk vi videre … for nå.

Konseptet ble omtrent slik:

Er Christoffer her?

Hvis Christoffer er på plassen sin, registrerer en datamaskin dette og viser et grønt bilde på en skjerm som forteller at Christoffer er på plassen sin. Denne skjermen er synlig tvers gjennom hele bygningen.

Om Christoffer forlater plassen, viser skjermen rødt. Den viser attpåtil hvor lenge det er siden han sist ble observert, så dermed er skjermen faktisk et hakk bedre enn det vi pleide å kunne tilby.

Rød skjerm: Christoffer er et annet sted
Rød skjerm: Christoffer er et annet sted

Den tekniske løsningen er basert på en liten datamaskin til rundt 500 kroner og en eldre skjerm som ikke var i bruk.

Kollega Henrik brukte etpar timer på å lage programmet som ligger bak, og det hele fungerer slik:

Dette er den lille Raspberry Pi-maskinen som holder rede på Christoffer for oss
Dette er den lille Raspberry Pi-maskinen som holder rede på Christoffer for oss

En Raspberry Pi-datamaskin med innebygget Bluetooth og skjermkort sjekker* hvert 30. sekund om den klarer å få Bluetooth-kontakt med Christoffers mobiltelefon.

Klarer den å opprette kontakt, viser den grønn skjerm og sier at Christoffer er på plassen sin.

Klarer den ikke å opprette kontakt, blir skjermen rød, og den begynner å telle hvor lenge det er siden sist den hadde kontakt.

Foreløpig er det kun kontakt mellom maskinen og omverdenen gjennom skjermen.

Men vi har lurt på om vi skulle gjøre skjermbildet tilgjengelig på intranettet også slik at folk slipper å reise seg.

På den annen side: For oss med stillesittende jobber er det sunt å reise seg fra plassen og gå rundt litt av og til. At folk må sjekke en fysisk skjerm manuelt og få igang blodsirkulasjonen gjør det kanskje forsvarbart at vi er litt late med videreutviklingen…

FullSizeRender-3

* EDIT
Henrik forklarer litt mer om hvordan det er gjort:
Dette er ordentlig strikk&binders! Kjører l2ping -c1 [mac-adresse] i en løkke via et Python-script som skriver et timestamp til fil hvis l2ping får svar fra telefonen. HTML-siden spør om denne filen via XMLHTTPRequest og sjekker om timestampet er relativt nylig (siste 30 sekunder). Isåfall er han her. Hvis ikke, er han borte.

40 kommentarer

    • Absolutt!

      Vi var litt frem og tilbake på hva som var beste sensor, og tenkte også på RFID som en løsning (men da måtte vi hatt en annen antenne/chip-løsning enn den som ligger inni Arduino-kitet vi fikk til jul).

      Grunnen til at vi til slutt falt ned på Bluetooth, er at med IR må Christoffer være VELDIG på plassen sin; er han en meter unna fordi han holder på med noe, så slår den ikke ut. Bluetooth ga oss en passelig løs «nå er han rett i nærheten».

      Svar på denne kommentaren

  1. Godt jobba! Men hva om Christoffer ikke vil bli forstyrret? Jeg foreslår en mikrofon. Så kan Christoffer syng «ølbriller» av Erik og Kris hele tiden. Da kan han være stille når han ikke vil ha besøk og hvis han får besøk blir det en slags kø løsning for neste man. Kan hende dere andre også setter mer pris på hans besøk😀😀

    Svar på denne kommentaren

  2. Nesten så man kunne lagd en nettside på dette, så alle kan følge med på om Cristoffer er her eller ikke. Er jo betydelig mer spennende enn «harmannenfaltned.no»

    Dette er jo en idé for store selskaper, så slipper man å lete etter ansatte.

    Man trenger ikke ha et kart, men en ja/nei liste på hvem som er på plassen sin eller ikke.

    Svar på denne kommentaren

  3. Tord Ivel Bugge

    Nå skal ikke jeg skue hunden på hårene her, men om man ser på bildet av Christoffer på «han er her»-skjermen så er det jo helt tydelig at dette påståtte verneombudet egentlig er en fordekt langer som etter populariteten å dømme må være det viktigste forsyningsleddet for NRKs samlede forbruk av jazztobakk, hurrapulver og smurfedrops.

    Hadde det ikke vært enklere om dere hacket sammen et «dark intraweb» hvor han kunne gjøre sine ærender, og så vært ute et par ganger om dagen og sendt «innspillene» sine med internposten istedenfor personlig oppmøte? Minimalt med forstyrrelser for dere andre og Christoffer og vennene hans hadde kanskje hatt tid til å faktisk sitte på plassen sin og jobbe.

    Jeg tenker bare på hva lisenskronene mine går til her.

    Svar på denne kommentaren

    • Ola Nordbryhn (NRK) (svar til Tord Ivel Bugge)

      Christoffer er på sett og vis en langer, men av langt mer ordinære ting. Han sitter på et lager av adaptere, batterier, verktøy og softwarelisenser.

      For en avdeling som jobber med teknologi og utvikling har han dermed en uvurdelig viktig rolle. Dette forklarer også grunnen til at man gjerne ønsker å oppsøke ham i person, i motsetning til de fleste andre i avdelingen som man gjerne kontakter på Slack, et møte med Christoffer ender ofte med at man får med seg en fysisk gjenstand.

      Svar på denne kommentaren

  4. Det er derfor vi andre bruker en eller annen form for chat med presence. Da ser vi på skjermen om en kollega er tilgjengelig. Kanskje til og med at han/hun ikke vil forstyrres. Noen av oss plugger inn en rød/grønn USB-lampe for de som kommer gående.

    Men det er jo ikke noe gøy, skjønner det… 🙂

    Svar på denne kommentaren

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *