The Interaction Timeline is a feature the Anti-Harassment Tools team is planning to build in late 2017. The goal of the feature is to help administrators understand the sequence of events between two users so they can confidently make a decision about how to best resolve a user conduct dispute.
Description | Title |
---|---|
Live instance | Interaction Timeline |
Project documentation | Community health initiative/Interaction Timeline - Meta |
Project Workboard | InteractionTimeline · Workboard |
Dev access to Toolforge is required.
- Copy
./.env.dist
to./.env
and customize. - You can find
DB_USER
andDB_PASS
inreplica.my.cnf
in your home directory after you ssh into toolforge. - Open an ssh tunnel to toolforge on your machine.
- On Linux, ensure that your tunnel is bound to
0.0.0.0
rather than just localhost:ssh -N yourusername@tools-dev.wmflabs.org -L 0.0.0.0:3306:enwiki.analytics.db.svc.eqiad.wmflabs:3306
- On Linux, ensure that your tunnel is bound to
- Run the Interaction Timeline locally:
docker-compose up
The app should be accessible at http://127.0.0.1:8888 and http://127.0.0.1:8888/api/hello
Interaction Timeline is hosted on Toolforge
ssh login.toolforge.org;
become interaction-timeline;
cd tool;
git pull origin master
Toolforge provides Node.js 0.11 by default, but Node 10 is available via the Kubernetes backend.
webservice --backend=kubernetes --mem 2Gi node10 shell;
cd tool/client;
npm ci --verbose --unsafe-perm;
npm run build;
exit;
webservice --canonical --backend=kubernetes php7.2 start
webservice --backend=kubernetes stop
webservice --canonical --backend=kubernetes restart
/api/{wiki}/interaction?user={username1|username2}&namespace={0|1|2}&start_date={timestamp}&end_date={timestamp}&limit={50}&continue={continue_string}
wiki:
Wiki project we want to check the interactions on. Ex: enwiki, eswiki, testwikiuser:
List of usernames involved in the interactions joined by a|
. No less than 2namespace:
List of namespace ids we want the interactions on joined by a|
start_date:
The start timestamp to return fromend_date:
The end timestamp to return tolimit:
Maximum amount of interactions to list. Default to 50continue:
When more results are available, use the returned continue string to fetch the next page
/api/testwiki/interaction?user=Test-bananas|Test-apples&namespace=0|4|5&start_date=1509508800&end_date=1512104400&limit=10&continue=MzM4NTEy