Bryt ut dokumentation till egen fil.

master
Jonas Olson 5 years ago
parent 26e336b796
commit e5d741fbc5

@ -0,0 +1,23 @@
# 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.
## 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)
0. Lägg in, som "Request URL", den adress där Slack kan nå Eggberg, till exempel <https://elab.kth.se/slack-eggberg/events>. 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.

@ -4,11 +4,6 @@ Detta är ELAB:s Slack-app.
Den har för närvarande i uppgift att göra "affiliate links" av Banggood-länkar. Den har för närvarande i uppgift att göra "affiliate links" av Banggood-länkar.
""" """
# Detta skript ska sitta bakom HTTPS och lyssna på anrop från Slack. (Kör
# "ngrok http 8000" för att få en tillfällig proxy för testning.) Lägg till
# "/slack/events" till den resulterande HTTPS-URL:en och använd som Request URL
# på <https://api.slack.com/apps/AN6HH95ML/event-subscriptions>.
from slackeventsapi import SlackEventAdapter from slackeventsapi import SlackEventAdapter
from slackclient import SlackClient from slackclient import SlackClient
import os import os
@ -104,5 +99,5 @@ def link_shared(event_data):
# Sätt locale (för att få komma som decimaltecken). # Sätt locale (för att få komma som decimaltecken).
locale.setlocale(locale.LC_ALL, '') locale.setlocale(locale.LC_ALL, '')
# Starta en server med endpointen `/slack/events`. # Börja lyssna.
slack_events_adapter.start(port=8000) slack_events_adapter.start(port=8000)

Loading…
Cancel
Save