added a channel_metadata object which stores the aggregate of all user_metadata in that scrape
see new shape of data below for breaking change
improved internal language and comments for better readability
This is a tool that captures Slack channel metadata of all users / bot users in a selected timeframe
If you would like to help improve this package visit the Github repo
No qualitative message data is read or captured - only quantitative metadata identifiable by the user's Slack user ID
Usage
Parameters
Required
<channelID>: Slack channel ID to query for message history
<oAuthToken>: Slack oAuth token issued to your app / bot for the Slack team
you must also allow the permissions scope "channels.history"
Optional
[start]: beginning timestamp to query message history
use most recent metaData.timestamp for this parameter during daily queries (more detail below)
[end]: ending timestamp to query message history - default to current time
[count]: number of messages to return in the query
default / maximum: 1000 messages
Note: if no start / end are passed then the entire message history (up to 1000 messages) will be scanned for metadata
How to use
All you need to supply is an oAuthToken (with the channels.history permission scope set in Slack under oAuth&permissions -> Scopes) from Slack and a valid Slack channel ID of the channel you want to scrape.
Note: the timestamp property is the Slack ts (timestamp) value of the most recent message in the current query
all timestamps are non-inclusive meaning if you pass a starting timestamp you will get metadata for all messages after the message that corresponds to that timestamp
This timestamp can be used for daily scans as a starting time for the next query (to prevent overlap of data)