# Slack-Eggberg Detta är ELAB:s Slack-app som för närvarande används till att göra "affiliate links" av de Banggood-länkar som postas i ELAB:s Slack-workspace. När någon postar en Banggood-länk i Slack går ett meddelande till detta skript, därifrån igenkommande som en "unfurl", vilken talar om för Slack hur länken ska presenteras med bild, rubrik och en modifierad länk som gör att ELAB får en slant när den används. ![Bildexempel](screenshot.png) ## Installation av app på ett workspace Denna procedur är aktuell endast om ELAB skulle skaffa ett nytt Slack-workspace. Länkarna i detta stycker är specifika för ELAB:s nuvarande workspace och app, och måste alltså modifieras för att gälla ett framtida workspace med tillhörande app när sådana har skapats. 0. [Var inloggad](https://slack.com/signin) på rätt workspace. 0. [Skapa ny app](https://api.slack.com/apps?new_app=1) kallad "Eggberg". 0. [Lägg till permission scope](https://api.slack.com/apps/AN6HH95ML/oauth) `links:read` och `links:write` och tryck på "Install App to Workspace". 0. Lägg ["OAuth Access Token"](https://api.slack.com/apps/AN6HH95ML/oauth) i miljövariabeln `SLACK_TOKEN`, lägg ["Signing Secret"](https://api.slack.com/apps/AN6HH95ML/general) i miljövariabeln `SLACK_SIGNING_SECRET` och kör Eggberg (`eggberg.py`). 0. [Slå på event subscriptions.](https://api.slack.com/apps/AN6HH95ML/event-subscriptions) 1. Lägg in, som "Request URL", den adress där Slack kan nå Eggberg, till exempel . För tester kan en tillfällig HTTPS-port fås medelst `ngrok http 8000`. 0. Prenumerera på workspace event `link_shared`. 0. Lägg till `banggood.com` som unfurl domain. 0. Tryck på ["Reinstall App"](https://api.slack.com/apps/AN6HH95ML/oauth). ## Idrifttagning av app på server Om en ny server ska köra appen, eller den befintliga har tappat sina hemliga nycklar, är det "OAuth Access Token" och "Signing Secret" som behöver hämtas ut igen, enligt instruktionen ovan, och läggas i sina respektive miljövariabler innan appen startas.