-
-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Event merge from different buckets #78
Comments
If you are fine with overlapping events, you could just concatenate the results of
Since it's not well defined which event data should end up in the resulting list of events, we clear it to ensure people don't unexpectedly end up with corrupted data. The docs should probably reflect this. Did this answer your question? May I ask what it is you're trying to do? 🙂 |
I want all overlapping events (from different sources) to be merged into a list of finer granularity and merged data. Using the analogy from the source code, assume synchronous heartbeats and two set of sources, Firefox (F) and window (W), they'll have 2 and 1 events respectively.
Where M is a data merge for all events. It will contain three events: (F- W-), (W-) and (F| W-). Consider the use case when you're using Firefox (aw-watcher-window gives only Regarding:
You create a new list of all events' data :)
I'm trying to get a more holistic view of all my activity. Immediate task is to have a "Productivity" overview of a day and merge info from many devices into Exist.io dashboard. WIP hack pack. |
We don't have any transform function exactly like that currently, but it could be added. How we currently do requests in the webui can be found here: https://github.com/ActivityWatch/aw-webui/blob/master/src/queries.js
The usefulness of the data from such an transform would be questionable as the duration field would be wrong. In aw-webui we intersect the non-afk events with the window events to only get the users active time in an app and then for the browser we intersect the window data where the app is Firefox/Chrome with the aw-watcher-web data to only get the active time where the user is focusing the browser window. We do this because of modularity and because aw-watcher-web simply does not have permissions to access things such as if the window is currently moving, last mouse movement or keypress to know if the user is not afk. However, you could of course also apply these transforms and then use your suggested transform on top of the transformed data to get something useful from it. |
Apologies for the delay. I don't have much time currently to get familiar with That's a separate topic, but in general, running |
I'm guessing this has come up many times, so apologies for not finding related issue. The closest one is in ActivityWatch but it's not exactly that :(
I found code that does the union on events but it has a note
WARNING: This function strips all data from events as it cannot keep it consistent.
Do you know/remember why is that?What I'd like to do is to have a list of events that contain all data from all buckets. Something like:
I need this, so if there's no such functionality, I'm happy to contribute, but maybe you already have one?
The text was updated successfully, but these errors were encountered: