Broadcast activities to followers
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
use diesel::PgConnection;
|
||||
use rocket::http::Status;
|
||||
use rocket::response::{Response, Responder};
|
||||
use rocket::request::Request;
|
||||
@@ -5,6 +6,8 @@ use serde_json;
|
||||
|
||||
use activity_pub::{activity_pub, ActivityPub, context};
|
||||
use activity_pub::activity::Activity;
|
||||
use activity_pub::actor::Actor;
|
||||
use models::users::User;
|
||||
|
||||
pub struct Outbox {
|
||||
id: String,
|
||||
@@ -36,3 +39,9 @@ impl<'r> Responder<'r> for Outbox {
|
||||
self.serialize().respond_to(request)
|
||||
}
|
||||
}
|
||||
|
||||
pub fn broadcast(conn: &PgConnection, act: Activity, to: Vec<User>) {
|
||||
for user in to {
|
||||
user.send_to_inbox(conn, act.clone()); // TODO: run it in Sidekiq or something like that
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user