mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2024-11-17 06:35:14 +08:00
25 lines
535 B
Ruby
25 lines
535 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Activities
|
|
class ActivityWebhookService
|
|
def initialize(webhook, activity)
|
|
@webhook = webhook
|
|
@activity = activity
|
|
end
|
|
|
|
def send_webhook
|
|
WebhookService.new(@webhook, activity_payload).send_webhook
|
|
end
|
|
|
|
def activity_payload
|
|
@activity.values.merge(
|
|
type: @activity.type_of,
|
|
created_at: @activity.created_at,
|
|
subject: {
|
|
type: @activity.subject_type,
|
|
id: @activity.subject_id
|
|
}
|
|
)
|
|
end
|
|
end
|
|
end
|