Quantcast
Channel: NRKbeta
Viewing all articles
Browse latest Browse all 1578

NRKbetas nye resepsjonist-robot

$
0
0

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.


Viewing all articles
Browse latest Browse all 1578


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>