ActivityWatch / aw-webui

Webapp for visualizing and browsing ActivityWatch data, built with Vue.js.
Mozilla Public License 2.0
110 stars 109 forks source link

Remaining tasks after categorization PR #151

Open ErikBjare opened 5 years ago

ErikBjare commented 5 years ago

These were the leftover tasks from #145

johan-bjareholt commented 4 years ago

Merge web watcher events into window events in the query? (to allow for classifying by url/domain)

I was trying to prototype this but realized that we need a new transform to accomplish this if we want the durations to be correct. I would propose something like "union_events_split".

The reason why a new transform is needed is because we have to intersect the browser events with the window and afk events to make active time correct, but then we need to merge them back into the window event data. For this to be correct we need to union the event data where they intersect and if they don't perfectly align we need so split the events.

An example which should explain it better:

 * |---------|----------------|
 * | events1 |[a     ][b     ]|
 * | events2 |    [c     ]    |
 * | result  |[a ][ac][bc][b ]|
 * |---------|----------------|

There is the union function in aw-server-python but from the documentation I don't fully understand what it does, it seems similar but slightly different.

pierre-lehnen-rc commented 1 year ago

Are there still plans to implement the web/window merge?