Dubbelriktade och kodfria integrationer med Rest-API-baserade system ger flexibla kunddesignade meddelandeformat
Under hösten 2024 påbörjade Erik Ström ett uppdrag hos Easit som utvecklare av deras ärendehanteringssystem Easit GO. Arbetet med höstens release hade just inletts, och huvudfokus för denna release var en förbättrad meddelandefunktion. Systemet hade redan ett inbyggt stöd för att kommunicera med kunder utifrån kundärenden via e-post, och vissa kunder hade uttryckt behov av att kunna sköta denna kommunikation via Rest-API:er istället för via SMTP-protokollet. Syftet var att kunna hämta information från ärendet och handläggaren i ett mer strukturerat format (JSON) än vad som medges av vanliga e-postmeddelanden (SMTP).
Kundernas förväntan på den nya meddelandefunktionen var att de själva skulle kunna utveckla integrationsbryggor som kunde ta emot JSON-data från Easit GO och översätta till ett format som passade deras behov, vilket exempelvis kunde vara att skicka meddelanden vidare till ett internt stödsystem som lagrar informationen och skickar vidare till kunden via en säkrad kanal, t.ex. Kivra. Detta skulle i så fall krävas att man implementerade olika bryggor för varje system man ville kommunicera med på detta sätt, en stor utmaning.
Styrkan med agilt förhållningssätt
Utvecklingsprocessen på Easit är agil och i arbetet med den nya meddelandefunktionen visade utvecklingsteamet styrkan i det agila tankesättet. I en mer traditionell vattenfallsprocess hade lösningarna riskerat att stanna vid att endast implementera den funktion kunderna hade önskat, den som fanns nedtecknat som user story enligt beskrivningen ovan. Tack vare ett kreativt arbetsklimat, öppna dialoger och en kultur där fritt tänkande uppmuntras, började vi tidigt tänka tillsammans utanför ramarna och insåg att den nya meddelandefunktionen kunde bli betydligt mer kraftfull och värdeskapande än den var tänkt från början. Men det skulle krävas planering och genomförande av en mer komplex lösning.
Som så ofta i en kreativ miljö började tankar att flöda, under en fikarast kläcktes idén nästan på skämt om möjligheten att kunderna själva skulle kunna bestämma formatet på meddelanden som skickades ut – då kanske man inte behövde bygga några bryggor alls? Den första spontana reaktionen var att det antagligen inte var realistiskt möjligt med tanke på hur många system som finns, och att alla har sina olika egenheter vad gäller dataformat. Men drömmen var svår att släppa med tanke på hur otroligt mycket tid och krångel som skulle undvikas om man inte behövde koda översättningslogik för varje integration man ville göra! Med fortsatta samtal i teamet, bollande med AI-chattar som spännande verktyg för att lösa omöjliga utmaningar, började teamets dröm om kodfria integrationer sakta men säkert ta form i det som vi nu kallar JSON-mallar med Javascript-stöd.
Utvecklat önskemål – Flexibelt meddelandeformat
Meddelandefunktionen utvecklades till slut helt utifrån kundens önskemål, men med tillägget att man kan koppla in ett JSON-dokument till varje meddelandefunktion. I JSON-dokumentet kan man ta information från ärendet och handläggaren och med Javascript-kod forma om till vilket format man vill innan det skickas ut. Svaret från det andra systemet kan också omvandlas till valfritt format och kopieras in på ärendet. Med detta, till synes enkla, tillägg möjliggörs därmed dubbelriktade och kodfria integrationer med i princip alla system som har ett Rest-API. Exempel på hur vi själva testade att använda funktionen var att synka ärenden i Easit GO med tickets i Jira, samt skicka och ta emot SMS via en sms-tjänst. Endast fantasin sätter gränser, och de kunder som nu har börjat använda de flexibla meddelandefunktionerna är lyriska.
Det är otroligt inspirerande och roligt att få tänka fritt i ett agilt klimat och utveckla ny funktionalitet.
Erik Ström, Masarin Consulting Group
Vad har varit dina största personliga vinster?
För mig som utvecklare känns det otroligt inspirerande och roligt att få utveckla nya funktioner på detta sätt, med en kombination av kundkrav och möjlighet att tänka fritt i ett agilt klimat. Nöjda och glada kunder ger mig arbetsglädje och en känsla av mening, och de lyriska kunder jag fått arbeta med under hösten har verkligen gett mig mersmak för att fortsätta att förbättra Easit GO.

