Add block.created webhook

This commit is contained in:
CSDUMMI 2024-01-09 17:32:35 +01:00
parent 6c48024a87
commit fd63bc10f4
2 changed files with 13 additions and 1 deletions

View File

@ -23,6 +23,12 @@ class Webhook < ApplicationRecord
report.updated
status.created
status.updated
block.created
block.removed
follow.created
follow.removed
mute.created
mute.removed
).freeze
attr_writer :current_account
@ -62,7 +68,7 @@ class Webhook < ApplicationRecord
:manage_users
when 'report.created', 'report.updated'
:manage_reports
when 'status.created', 'status.updated'
when 'status.created', 'status.updated', 'block.created', 'block.removed', 'follow.created', 'follow.removed', 'mute.created', 'mute.removed' # TODO: find the correct permission
:view_devops
end
end

View File

@ -12,6 +12,8 @@ class BlockService < BaseService
block = account.block!(target_account)
trigger_webhooks block.id
BlockWorker.perform_async(account.id, target_account.id)
create_notification(block) if !target_account.local? && target_account.activitypub?
block
@ -26,4 +28,8 @@ class BlockService < BaseService
def build_json(block)
Oj.dump(serialize_payload(block, ActivityPub::BlockSerializer))
end
def trigger_webhooks(block_id)
TriggerWebhookWorker.perform_async('block.created', 'Block', block_id)
end
end