Don't forget to lycansubscribe

added option for using Jetstream

Changed files
+16 -3
app
+16 -3
app/firehose_client.rb
··· 13 13 14 14 def initialize 15 15 @env = (ENV['APP_ENV'] || ENV['RACK_ENV'] || :development).to_sym 16 - @service = DEFAULT_RELAY 16 + 17 + if ENV['RELAY_HOST'] 18 + @service = ENV['RELAY_HOST'] 19 + elsif ENV['JETSTREAM_HOST'] 20 + @service = ENV['JETSTREAM_HOST'] 21 + @jetstream = true 22 + else 23 + @service = DEFAULT_RELAY 24 + end 17 25 end 18 26 19 27 def start ··· 26 34 last_cursor = load_or_init_cursor 27 35 cursor = @start_cursor || last_cursor 28 36 29 - @sky = Skyfall::Firehose.new(@service, :subscribe_repos, cursor) 30 - @sky.user_agent = "Lycan (https://tangled.sh/@mackuba.eu/lycan) #{@sky.version_string}" 37 + @sky = if @jetstream 38 + Skyfall::Jetstream.new(@service, { cursor: cursor, wanted_collections: [:bsky_post, :bsky_like, :bsky_repost] }) 39 + else 40 + Skyfall::Firehose.new(@service, :subscribe_repos, cursor) 41 + end 42 + 43 + @sky.user_agent = (ENV['FIREHOSE_USER_AGENT'] || "Lycan (https://tangled.sh/@mackuba.eu/lycan)") + ' ' + @sky.version_string 31 44 @sky.check_heartbeat = true 32 45 33 46 @sky.on_message do |m|