androa / helsesjekk-bot

NAV Helsesjekk slack bot

Home Page:https://helsesjekk-bot.nav.no/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Helsesjekk Bot 🤖

Er du NAV ansatt?

Jeg vil bruke den!

Så bra! Gå til ditt team sin private team kanal (ikke den store, åpne kanalen som alle har tilgang til), også legger du til botten som en integrasjon.

image

Søk opp integrasjonen, den heter "Helsesjekk":

image

Det siste du må gjøre er å skrive /helsesjekk i kanalen, da får du tilgang til å gi teamet ditt et navn, samt fortelle botten når du vil at helsesjekken skal postes!

image

image

Jeg fant noe feil!

Ta kontakt på #helsesjekk-bot på NAV-IT slacken!

Utenfor NAV

Botten er hostet som en intern app på NAV sin IT-plattform. Selve bot-brukeren er en intern slack-app.

Dersom du ønsker å bruke botten, kan du ta sette opp din egen bot-bruker på din Slack ved å bruke slack-manifest.yml som utgangspunkt.

Når det kommer til selve botten, så kan du gjøre følgende:

  1. Fork dette Github-repoet
  2. Fjern filene:
    1. nais.yml og nais-dev.yaml
  3. Konfigurer opp en egen CI/CD-løsning for å deploye botten i deploy.yaml
  4. Konfigurer opp env.ts med miljøvariablene din platform trenger
  5. Tweak authentication.ts og ms-graph.ts til å fungere med deres env løsning.

Det er sikkert andre ting som må justeres på også.

Jeg vil utvikle på den!

Utvikle selve botten:

  1. Først så trenger du ditt helt eget slack workspace du har admin tilgang til.
  2. Deretter kan du opprette en ny bot i Slack, bruk slack-manifest.yml i dette repoet til å kickstarte alle permissions du trenger.
  3. Opprett en .env-fil på rot i repoet, og legg til følgende:
    NAIS_DATABASE_HELSESJEKK_BOT_HELSESJEKK_BOT_URL="postgresql://postgres:postgres@localhost:5432/postgres"
    SLACK_SIGNING_SECRET=<secret>
    SLACK_BOT_TOKEN=<secret>
    SLACK_APP_TOKEN=<secret>
  4. Start opp en lokal postgres-database:
    yarn dev:db
  5. Kjør prisma-migreringene mot databasen:
    npx prisma migrate dev
  6. Endelig kan vi starte development-serveren:
    yarn dev
  7. Gjør en curl request mot /api/internal/is_ready for å starte slack-integrasjonen.
    curl -X POST http://localhost:3000/api/internal/is_ready

Utviklingsflyten vil være å interaktere med slack botten gjennom ditt private slack workspace. F.eks. ved å legge botten til som en integrasjon på en testkanal, kjøre /helsesjekk i den kanalen, og fylle ut helsesjekken.

Det er noen verktøy i ./src/commands/commands-handler.ts som kan være nyttige for å teste ut funksjonalitet. F.eks. kan du kjøre /helsesjekk test for triggre ting som eller ser cron-basert.

Utvikle Dashboardet

Dette er litt enklere å jobbe med.

  1. Opprett en .env-fil på rot i repoet, og legg til følgende:
    NAIS_DATABASE_HELSESJEKK_BOT_HELSESJEKK_BOT_URL="postgresql://postgres:postgres@localhost:5432/postgres"
  2. Start opp en lokal postgres-database:
    yarn dev:db
  3. Kjør prisma-migreringene mot databasen:
    yarn prisma:migrate-dev
  4. Seed databasen:
    yarn prisma:seed
  5. Kjør opp nextjs dev server:
    yarn dev

Besøk localhost:3000 for å se dashboardet.

Ikke nøl med å ta kontakt på #helsesjekk-bot på NAV-IT slacken om du trenger hjelp!

About

NAV Helsesjekk slack bot

https://helsesjekk-bot.nav.no/

License:MIT License


Languages

Language:TypeScript 99.1%Language:JavaScript 0.4%Language:Dockerfile 0.4%Language:CSS 0.0%Language:Shell 0.0%