2016-06-07 32 views
5

Próbuję uzyskać listę wszystkich "grup" w moim zespole Slack. Jednak nawet z uprawnieniami administratora, groups.list dostarcza tylko te grupy, do których należy konto właściciela tokena.Uzyskaj listę wszystkich prywatnych kanałów z API Slack

Najbliższe rozwiązanie, jakie widziałem w moich badaniach, polega na tym, że dostaję bota na kanał. Członkostwo bota pozwala mu raportować na kanale, ale pojawia się problem logistyczny, polegający na tym, że dostaję bota do każdego kanału prywatnego, mimo że nie możemy ich programować programistycznie.

Kod Użyłem wykopać prywatnych ofert channel:

import requests 
import json 

token = '...' 

r = requests.post('https://slack.com/api/groups.list', data={'token': token, 'exclude_archived': 1}) 
if r.ok: 
    privatechannels = { c['id']: c['name'] for c in json.loads(r.text)['groups'] } 
    print(privatechannels) 
+0

Witamy na przepełnienie stosu. Twoje pytanie jest przedwczesne w przypadku przepełnienia stosu. Spodziewamy się, że zbadaliśmy to niezależnie, a następnie spróbowaliśmy kodowania, a następnie, gdy ten kod się zepsuje, zapytaj o to. Przeczytaj "[pytanie]". Jeśli przeszukałeś i przeszukałeś i przeszukałeś więcej, a wciąż nic nie znalazłeś, musisz nam pokazać, gdzie szukałeś, wyjaśnić, dlaczego to nie pomogło, a potem możemy wkroczyć. –

+1

Być może nie jest to jasne, ale Próbowałem. Jest tak wiele do zrobienia dzięki pojedynczemu wywołaniu API do usługi zewnętrznej. Przeszukałem dokumentację, napisałem program, który wykopał informacje (patrz niżej) i przeszukałem SO i Internet. –

+0

edytuj: nie można uzyskać formatowania kodu wielowierszowego wchodząc tutaj, wstawiając w to pytanie –

Odpowiedz

2

spodnie privacy policy nie obsługuje tej funkcji.

Najbardziej podstawową zasadą prywatności kierujemy jest to, że domyślnie cokolwiek pisać do Slack jest prywatny do swojego zespołu. Oznacza to, że wyświetlanie wiadomości i plików udostępnionych w określonym zespole wymaga uwierzytelnienia jako członka tego zespołu.

firmy zbliżający zapłacił Plan Plus będzie zawierać opcjonalną funkcją zwane Exports przestrzegania przepisów, które pozwolą administratorom dostęp do komunikacji za ich zespół, obejmujący wiadomości publicznej i prywatnych.

która jest najbliższa rzecz do uzyskania dostępu do prywatnych kanałów, z których nie należą, ale wymagać będzie napisany list ... here for more details

+2

Dziękuję za potwierdzenie moich podejrzeń. Zgodziliśmy się na eksport zgodności i przez to wszystko przeszliśmy. Jednak firma prawnicza chce, aby dział IT posiadał ciągły rejestr tego, kto jest w danym kanale, co nie jest oferowane przez eksport zgodności. Próbowałem załatać tę dziurę za pomocą skryptów API. Wygląda na to, że będziemy musieli umieścić bota w każdym kanale, jeśli tak się stanie. –

+0

więc ... w jaki sposób dostałeś bota w każdym kanale, jeśli nie możesz wyświetlić wszystkich kanałów na pierwszym miejscu, aby wiedzieć, jakie kanały JEST, że potrzebujesz botów w? Mam też ten problem :-( – Hicsy