Commit Graph

266 Commits (e501e9ecb2026afa0b97348c98b4fb5caa9974f4)

Author SHA1 Message Date
Erik Johnston db6e26bb8c Don't mutate cached values 9 years ago
David Baker 7065b75bfd Don't crash if a user has no push rule enabled entries 9 years ago
David Baker 52bdd1b834 Overlay the push_rules_enabled map for users, otherwise they won't be able to disable server default rules. 9 years ago
David Baker d552861346 Revert all the bits changing keys of eeverything that used LRUCaches to tuples 9 years ago
David Baker f1f8122120 Change LRUCache to be tree-based so we can delete subtrees. 9 years ago
Erik Johnston 0e07f2e15d Only fetch events for rooms and receipts 9 years ago
Erik Johnston 3a00f13436 Only compute badge count when necessary. 9 years ago
David Baker 930ba003f8 Remove member event rule as per SYN-607 9 years ago
David Baker 3fa344c037 Add storage function to get all receipts for a user. Also add some cache invalidation to the receipts storage because there wasn't any, and remove a method that was unused. 9 years ago
David Baker 7cc047455e Inline membership specifier 9 years ago
David Baker d726597737 Simplify badge updating code by just updating it every time we get woken up and it's not an event 9 years ago
David Baker 746f6e0eb3 'filtered' is a list of zero or 1 9 years ago
David Baker 259d1ecd1d Don't generate push actions for our own events 9 years ago
Erik Johnston fb5d8e58ff Change regex cache size to 5000 9 years ago
Erik Johnston 5a7d1ecffc Add regex cache. Only caculate push actions for users that have sent read receipts, and are on that server 9 years ago
Erik Johnston d056a0a3d8 Handle glob -> regex errors 9 years ago
Erik Johnston 9654ee0848 Return don't break 9 years ago
Erik Johnston 7ecd211163 Except truthy values 9 years ago
Erik Johnston f750a442f7 Update _id 9 years ago
Erik Johnston 003853e702 Preserve truthiness 9 years ago
Erik Johnston a284ad4092 You need to escape backslashes 9 years ago
Erik Johnston 47f82e4408 Fix branch didn't check word_boundary 9 years ago
Erik Johnston 29c353c553 Don't split at word boundaries, actually use regex 9 years ago
Erik Johnston d16dcf642e Drop log levels 9 years ago
Erik Johnston 7dd14e5d1c Add comments and remove dead code 9 years ago
Erik Johnston 866fe27e78 Do for loop once at start 9 years ago
Erik Johnston d1f56f732e Use static for const dicts 9 years ago
Erik Johnston 345ff2196a Don't edit ruleset 9 years ago
Erik Johnston 63485b3029 Re-enable urnead notifications 9 years ago
Erik Johnston f59b564507 Make notifications go quicker 9 years ago
David Baker 12623c99b6 Use the unread notification count to send accurate badge counts in push notifications. 9 years ago
Erik Johnston fcb05b4c82 Temporarily disable notification branch 9 years ago
Mark Haines 9c1f853d58 Rename 'user_name' to 'user_id' in push to make it consistent with the rest of the code 9 years ago
David Baker d9db819e23 Change default pushrules back to notifying for all messages. 9 years ago
David Baker 823b679232 more commas 9 years ago
Matthew Hodgson 6c28ac260c copyrights 9 years ago
David Baker 992928304f Delete notifications for redacted events 9 years ago
David Baker c79f221192 Add is_guest flag to users db to track whether a user is a guest user or not. Use this so we can run _filter_events_for_client when calculating event_push_actions. 9 years ago
David Baker 85ca8cb90c comment typo 9 years ago
David Baker c914d67cda Rename event-actions to event_push_actions as per PR request 9 years ago
David Baker 3051c9d002 Address minor PR issues 9 years ago
David Baker 9b4cd0cd0f pep8 & unused variable 9 years ago
David Baker 5645d9747b Add some comments to areas that could be optimised. 9 years ago
David Baker 4c8f6a7e42 Insert push actions in a single db query rather than one per user/profile_tag 9 years ago
David Baker 65c451cb38 Add bulk push rule evaluator which actually still evaluates rules one by one, but does far fewer db queries to fetch the rules 9 years ago
David Baker f73f154ec2 Only run pushers for users on this hs! 9 years ago
David Baker 42ad49f5b7 still very WIP, but now sends unread_notifications_count in the room object on sync (only actually corrrect in a full sync: hardcoded to 0 in incremental syncs). 9 years ago
David Baker 5e909c73d7 Store nothing instead of ['dont_notify'] for events with no notification required: much as it would be nice to be able to tell between the event not having been processed and there being no notification for it, this isn't worth filling up the table with ['dont_notify'] I think. Consequently treat the empty actions array as dont_notify and filter dont_notify out of the result. 9 years ago
David Baker aa667ee396 Save event actions to the db 9 years ago
David Baker 21f135ba76 Very first cut of calculating actions for events as they come in. Doesn't store them yet. Not very efficient. 9 years ago