2015-03-02 7 views
21

Ich möchte alle Nachrichten abrufen, die in meinem Team Slack-Domäne gesendet wurden. Obwohl ich bevorzuge, dass die Daten in XML oder JSON empfangen werden, bin ich in der Lage, die Daten in fast jeder Form zu behandeln.Slack: Abrufen aller Nachrichten

Wie kann ich alle diese Nachrichten abrufen? Ist es möglich? Wenn nicht, kann ich alle Nachrichten für einen bestimmten Kanal abrufen?

Antwort

14

Wenn Sie dies dynamisch über die API tun müssen, können Sie channels.list method verwenden, um alle Kanäle in Ihrem Team aufzulisten, und channels.history method, um den Verlauf jedes Kanals abzurufen. Beachten Sie, dass dies keine DMs oder privaten Gruppen enthält.

Wenn Sie dies als eine einmalige Sache zu tun, gehen Sie zu https://my.slack.com/services/export Ihr Team Nachrichtenarchive als Reihe von JSON-Dateien zu exportieren

message archive export screen

9

Für alle, die Direct Message Geschichte Downloads suchen, this Knoten based cli tool ermöglicht es Ihnen, Nachrichten von DMs und IMs sowohl in JSON als auch in CSV herunterzuladen. Ich habe es benutzt, und es funktioniert sehr gut.

+1

Links neigen dazu, sich zu ändern oder zu fehlen, könnten Sie etwas von dem Inhalt erklären oder es hier zitieren? – abarisone

+3

@abarisone Das Tool heißt 'slack-history-export' und kann mit' npm install -g slack-history-export' installiert werden. Siehe Optionen mit 'slack-history-export -h'. – wjagodfrey

8

Das Python-Skript exportiert alles JSON durch einen einfachen Lauf: https://gist.github.com/Chandler/fb7a070f52883849de35

Es Verzeichnisse für Sie erstellt und Sie haben die Möglichkeit, direkte Nachrichten oder Kanäle auszuschließen.

Alles, was Sie installieren müssen, ist das Slacker-Modul, das einfach pip install slacker ist. Führen Sie es dann mit --token='secret-token'. Sie benötigen ein Legacy-Token, das zur Zeit here verfügbar ist.

+0

scheint herauszufinden, wie man ein API-Token erstellt: https://api.slack.com/web –