Power User Love to the people!

Når alarmen går så haster det med å få Bombshells til å rykke ut. Derfor benytter vi de kanalene vi kan for å alle så fort som mulig i beredskap. En slik kanal er Teams hvor vi sender adaptive cards til medlemmene.

En event trigges i Azure når en funksjon mottar sensor data blir det gjort ett HTTPS kall som starter en flyt i Power Automate. Flyten oppretter en record med sensor dataene i dataverse.

Når en ny record blir opprettet i dataverse starter dette en flyt nummer to som gjør ett HTTPS kall til en tredje flyt. (pga lisens cross tenant)

Denne flyten sender ett dynamisk kort til en chat i Teams.

På kortet har du mulighet til å sende ut Ninja Turtles for å håndtere trusselen.

Bombshells connecting people

Stakkars Donatello har ikke kommet så langt som de andre medlemmene av Bombshells. Han har et lidenskapelig og nær forhold til sin Nokia 8210. Problemet hans er at den ikke kan kjøre apper av noe slag, og på toppen av det hele kan han bare ha inntil 160 tegn.

Best pris på Nokia 3210 Mobiltelefoner - Sammenlign priser hos Prisjakt

Less is more

Spøk til side. I dagens samfunn så må vi støtte et mylder av telefoner og systemer. Det er derfor viktig at vi klarer å konsentrere riktig informasjon et minimum til de som ikke kan ta imot så mye data, og heller berike data som sender ut til de som kan ta imot.

For å passe på at Donatello får den informasjonen han trenger så har vi implementert en funksjon som stripper ned og filterer ut unødvendig informasjon i meldingene hans, slik at han får beskjed om sted, tid og alvorlighet av hendelsen.

Men hvordan vet vi når vi skal sende ut en begrenset sms og når vi kan legge på mer?

Ved å hente ut brukerne og hvilken device som de er registret med via Office 365 Users-connectoren kan vi fyre av riktig kall fra Power Automate.

Av hensyn til alle med DUS (Digitalt utfordret syndrom) claimer vi Retro-badgen for denne.

Flowbombing Dataverse

Bombshells elsker Dataverse og går mann av huse for å bygge opp kraftfulle datakilder som de kan bruke til å trene opp varslingssytemet sitt. Derfor bruker de Power Automate Flow for å populere dataverse med sensordata.

Ved å kalle en PAF som et restkall bruker vi Dataverse-connectoren til å legge til en ny rad i tabellen.

Input som kommer gjennom kallet blir parset til et JSON-objekt og lastet inn i den nye raden i Dataverse tabellen.

Og da får vi masse deilige data!

Og vi liker masssse data!

Thieving shellbombs

Data er selve oljen. Ettersom Bombshells har samlet inn mer data har de innsett at veien til å forhindre kriminalitet og jobbe prevantivt mot mutantene er å gå på miljøproblematikken og heller fjerne årsaken til at mutantene dukker opp.

Bombshells har derfor valgt å fokusere på å samle inn data om miljøet, samt mulighet til å varsle hvis uheldige hendelser blir avdekket i våre sensorer. De har derfor implmentert en rekke integrasjoner. Vi ønsker å trekker frem følgende:

  1. Sende SMS med varsel:

2. Innhenting av værdata fra https://frost.met.no

3. Hente data om lavvann/ høyvann for en gitt lokasjon

http://api.sehavniva.no

En, to, mange 😉

Skill bombshell heier på Skill powershells

Å ha et motiv betyr å ha en grunn til å gjøre noe. At handlingene våre i en bestemt situasjon er motivert av et eller annet, vil si at vi sikter mot å nå bestemte mål. Det er vanlig å skille mellom indre og ytre motivasjon. Drivkraften ved indre motivasjon er dine egne interesser og nysgjerrighet. Vi støtter de rundt oss med positive ord, men siden vi må fokusere også på egen motivasjon samt at vi er i forskjellige cohorter så har vi valgt å automatisert dette.

En gang i døgnet sender vi en SMS til teamleder av Skill powershells. Dette for å motivere.

Ved behov så kan vi øke frekvensen ytterliger, noe som er nærliggende mot innspurten. Ved behov kan vi også motivere andre lag.

The Bombshells are killing it!

We´ve created a monster! Bombshell koser seg og mekker sensorgalskap! Hver sensorstasjon rundt Oslofjorden er proppet med sensorer som fanger lyd, fuktighet, støvpartikler, UV-lys og masse moro 🙂

Samtidig som vi ikke går av veien for å feire små seiere…

Så fortsetter vi å jobbe utrettelig!

Creating more monsters….

By the way…. Happy Campers are wearing turtle necks 😉

Deploy like a ninja

For å rulle ut kode og infrastruktur tar vi i bruk Devops pipelines og ruller ut løsningen ved hjelp av Bicep. Bicep er et DSL (domain-specific language) hvor man deklarativt kan deploye Azure-ressurser.

Vi bygger kildekoden i azure devops ved hjelp av en yaml fil som etter fullført og vellykket bygg utfører en deploy av en azure function og opprettet tilhørende infrastruktur.

Følgende infrastruktur blir opprettet

  • APIM
  • Key Vault
  • Azure Function
  • Storage

På denne måten sørger vi for at ved hver innsjekking av kode, som for eksempel en azure function, vil koden valideres, bygges og løsmningen deployes trygt.

Vi claimer ACDC Craftsman og Hipster (på grunn av at vi bruker Bicep som er forholdsvis nytt 😉 )

Skumle lyder

Ved å bruke Microbit sound sensor, makecode-rammeverket Microsoft MakeCode for micro:bit (microbit.org) og Azure functions registerer vi lyder fra mutanter som romsterer rundt i fjæra.

Vi snakker med Azure functions gjennom Microbit-rammeverket via Wifi

Lydsensor koblet mot Microbit

Vi kobler sammen hovedkort og IoT-modulen til Microbit. I tillegg har vi koblet på lydsensoren for å registrere lyder innenfor et bestemt lydnivå.

Inne i makecode konfigurerer vi IoT-modulen til å snakke med Wifi. Dette gir oss mulighet til å snakke med skyen.

Videre viser vi også lokalt på tilkoblet led-skjerm på Microbitmodulen indikasjon på registrert lyd for å verifisere at vi tar i mot data lokalt.

Ved å sende lyddata fra sensoren til Azure function så registerer vi dataene i Dataverse.

Vil claimer Thieving Bastards og Nasty Hacker for denne

Kill the mutant rIoT

https://vimeo.com/675691343/faef3a2a41

Skill Bobmshells are growing tired of fighting criminal mutants after they have caused trouble and are now moving to use IoT and cloud to predict and prevent trouble. Using i wide range of sensors they will be monitoring the Oslofjord to find signs of trouble and patrol areas based on alerts from these sensors.

Arcitecture

Microbit sensors

Using Microbit sensors we will detect polution around the fjord.

Sensors detecting insidents registers data using Azure, storing the data in Dataverse.

[11:32] Noah Tjelle

All reccords are listed in a PowerApp alerting the Bombshells calling them to action.

Teenage Mutant Ninja Turtles | TV Guide

#earlydelivery

Skill sin Vipps-integrasjon på Arctic Cloud Developer Challenge 2021

Vipps er en av samarbeidspartnerne til Arctic Cloud Developer Challenge 2021, og en av utfordringene vi har fått dere er å integrere mot Vipps sine APIer.

Skill har jobbet med en løsning for betaling for småoppgaver i hjemmet og ukepenger, og har jobbet med følgende deler av Vipps-APIet

  • Sende betalinger
  • Sjekke betalingsstatus
  • Rapportering på Vipps-data med PowerBI
  • Recurring payments (ukepenger)

Vi har implementert all logikk mot Vipps i Power Automate Cloud Flows som er et grafisk verktøy for lage arbeidsflyter

Vi har benyttes Vipps sitt eCoommerce API https://github.com/vippsas/vipps-ecom-api

Autentisering

Alle våre flyter starter med et autentiseringssteg der vi henter access token som vi benytter i videre steg. Vi har valgt å ikke spare på token mellom de forskjellige operasjonene, for hver flyt så henter vi et nytt access token.

Sende betaling

Vi sender betaling med å bruke

Sjekke betalinger

Vi har flyter som går hver time og sjekker betalingsstatus på de ordrene vi har sendt fra systemet slik at vi til en hver tid har oversikt over hvilke betalinger som står åpne, har blitt avbrutt, eller blitt refundert. Disse statusene blir oppdatert tilbake til Dataverse-tabellen som holder på ordrene slik at man kan se oppdatert betalingsstatus der.

Rapporterings-API og PowerBI

Vi har lagd vårt eget rapporterings-API som er bygd på toppen av ordre i Dataverse og Vipps sitt ecommerce API

Her henter vi ut alle ordre fra dataverse og sammenstiller disse med trasaksjoner

Rapportering blir gjort i PowerBI, her har vi laget rapporter som knytter transaksjoner i Vipps opp mot ordrer sendt fra Power Platform slik at man kan får oversikt over faktisk betalingsstatus, om betalinger er refundert etc.

Her har vi også benyttet Power Automate Cloud Flows for å lage et veldig enkelt mellomlag for dette

Hadde dette vært et produksjonssystem kunne vi nok ikke gjort det på denne måten da vi faktisk spør API-et til Vipps “live” for hver forespørsel fra rapporteringsløsnignen, men måtte heller hentet ut dataene til f.eks en Data Lake i Azure.

Vi har lagd vårt eget enkle JSON-schema for rapportering på transaksjonshistorikk.

Dette API-et har vi benyttet videre inn i PowerBI slik at vi der også kan bruke data fra Vipps som en kilde

This image has an empty alt attribute; its file name is Skjermbilde-2021-02-06-kl.-13.37.39-1024x575.png

Vi har gått enda mer i detalj i følgende bloggposter: