mirror of
https://github.com/simple-login/app.git
synced 2024-09-21 09:21:29 +02:00
3e0b7bb369
* feat: add protocol buffers for events * chore: add EventDispatcher * chore: add WebhookEvent class * chore: emit events * feat: initial version of event listener * chore: emit user plan change with new timestamp * feat: emit metrics + add alias status to create event * chore: add newrelic decorator to functions * fix: event emitter fixes * fix: take null end_time into account * fix: avoid double-commits * chore: move UserDeleted event to User.delete method * db: add index to sync_event created_at and taken_time columns * chore: add index to model
45 lines
790 B
Protocol Buffer
45 lines
790 B
Protocol Buffer
syntax = "proto3";
|
|
|
|
package simplelogin_events;
|
|
|
|
message UserPlanChange {
|
|
uint32 plan_end_time = 1;
|
|
}
|
|
|
|
message UserDeleted {
|
|
}
|
|
|
|
message AliasCreated {
|
|
uint32 alias_id = 1;
|
|
string alias_email = 2;
|
|
string alias_note = 3;
|
|
bool enabled = 4;
|
|
}
|
|
|
|
message AliasStatusChange {
|
|
uint32 alias_id = 1;
|
|
string alias_email = 2;
|
|
bool enabled = 3;
|
|
}
|
|
|
|
message AliasDeleted {
|
|
uint32 alias_id = 1;
|
|
string alias_email = 2;
|
|
}
|
|
|
|
message EventContent {
|
|
oneof content {
|
|
UserPlanChange user_plan_change = 1;
|
|
UserDeleted user_deleted = 2;
|
|
AliasCreated alias_created = 3;
|
|
AliasStatusChange alias_status_change = 4;
|
|
AliasDeleted alias_deleted = 5;
|
|
}
|
|
}
|
|
|
|
message Event {
|
|
uint32 user_id = 1;
|
|
string external_user_id = 2;
|
|
uint32 partner_id = 3;
|
|
EventContent content = 4;
|
|
} |