Altinn / Altinn/info.altinn.no

Importere innhold fra Enoniq (Brreg) til Infoportalen

Open
#340 5 comments 0 reactions 0 assignees View on GitHub
feature-request/ØNSKE
Dominant language
TypeScript
Stars
1
Forks
2
Avg merge
20h 21m
Merged PRs (30d)
32

Description

## Beskrivelse

Brønnøysundregistrene har hentet ut alt innholdet fra Starte og drive bedrift, delt det opp i informasjonsatomer som er lagt inn i deres egen headless Enoniq XP-CMS-løsning. Derfor må Narvik-redaksjonen nå oppdatere innholdet på to steder.

Innholdet fra Enoniq benytttes også i Brreg sin nye Altinn Studio-app, Starte og drive bedrift. Denne er produksjonssatt (men ikke offentlig lansert ennå.)

For å slippe dobbelt vedlikehold av innholdet, ønsker Brreg at Informasjonsportalen skal importere innholdet til Starte og drive bedrift direkte fra Enoniq. En annen løsning kan være å bygge starte og drive i Infoportalen som et headless-hode som henter innholdet direkte fra Enoniq (men da vil ikke redaktøren i Infoportalen ha mulighet til å gjøre noen endringer på disse sidene...).

**Forventet resultat**
Unngå dobbeltpublisering

**Hvordan skal det fungere?**
På heldagsworkshop med utviklere fra Knowit, Optimizely Norge og Brreg den 28. mai, ble det skissert en løsning basert på at Enoniq dytter innhold over i Optimizely Graph og at det derfra hentes inn i Optimizely CMS for publisering, se skisse:

![image](https://github.com/Altinn/info.altinn.no/assets/64840623/cb744c5d-4051-47d8-98ed-b42d8ab3491b)

## Teknisk løsningsbeskrivelse
### Kortversjon
En jobb i Optimizely CMS henter oppdatert innhold fra Enonic GraphQL API en gang i døgnet og oppdaterer innhold i Optimizely. Kjøringen må også kunne startes manuelt ved behov.

### Langversjon
Atomer, artikler og kategorier er tilgjengelig for uthenting ved hjelp av GraphQL API mot Enonic XP CMS, som brukes i «starte og drive»-appen. Vi har testet ut endepunkter for Enonic i test-, qa- og prod-miljø.

Optimizely Graph kan ikke legge inn eller oppdatere innhold i Optimizely CMS og er derfor ikke en del av denne integrasjonen.

Optimizely har god støtte for «planlagte jobber», det vil si en mekanisme for å kjøre et lite program f.eks. en gang i døgnet. Jobber kan også kjøre manuelt ved å trykke på en knapp i redaktørgrensesnittet. Redaktører kan se status for tidligere kjøringer.

Programkode for en planlagt jobb skrives i C# og kan bruke Optimizelys kodebiblioteker for å manipulere innhold i Optimizely.

Atomene som importeres er merket / kategorisert på en rekke måter. Vi ønsker å importere disse kategoriene og få samme merking av atomene i vår løsning. Det må lages egne innholdstyper for atomer og artikler da de eksisterende ikke passer.

Jobben oppdaterer Optimizely steg-vis pga. avhengigheter mellom innhold:

1) Nye og oppdaterte atomer (inkl. refererte bilder og video)
2) Nye og oppdaterte artikler
3) Slettede artikler
4) Slettede atomer

Utenfor scope:
- Løsning for Beta-Norge
- Utvikling av sidemaler

Contributor guide

No contributing guide indexed for this repository

Research direction

No repository files or tests are named. Start by reviewing the Optimizely CMS scheduled-job entry point and the Enonic XP GraphQL API environments described in the issue, then confirm the content types, categories, media references, and deletion order. Done means a manually runnable and daily job imports and updates atoms and articles without double publishing.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, graphql
Domain
backend, content, data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.