20 lines
545 B
Ruby
20 lines
545 B
Ruby
module NostrManager
|
|
class PublishZapReceipt < NostrManagerService
|
|
def initialize(zap:, delayed: true)
|
|
@zap, @delayed = zap, delayed
|
|
end
|
|
|
|
def call
|
|
tags = parse_tags(@zap.request_event.tags)
|
|
|
|
tags[:relays].take(Setting.nostr_zaps_relay_limit).each do |relay_url|
|
|
if @delayed
|
|
NostrPublishEventJob.perform_later(event: @zap.receipt, relay_url: relay_url)
|
|
else
|
|
NostrManager::PublishEvent.call(event: @zap.receipt_event, relay_url: relay_url)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|