akkounts/app/services/nostr_manager/publish_zap_receipt.rb
Râu Cao 48041630ca
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Limit number of relays to publish zap receipts to
2024-05-10 13:57:25 +02:00

20 lines
537 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: relay_url)
else
NostrManager::PublishEvent.call(event: @zap.receipt_event, relay: relay_url)
end
end
end
end
end