Toot toooooooot (Bluesky-Mastodon cross-poster)

tweaked logging

Changed files
+13 -6
app
+11 -6
app/tootify.rb
··· 60 60 next unless repo == @bluesky.did && collection == 'app.bsky.feed.post' 61 61 62 62 if post = Post.find_by(bluesky_rkey: rkey) 63 - puts "Post #{rkey} was already cross-posted, skipping" 63 + log "Post #{rkey} was already cross-posted, skipping" 64 64 @bluesky.delete_record_at(like_uri) 65 65 next 66 66 end ··· 68 68 begin 69 69 record = @bluesky.fetch_record(repo, collection, rkey) 70 70 rescue Minisky::ClientErrorResponse => e 71 - puts "Record not found: #{post_uri}" 71 + log "Record not found: #{post_uri}" 72 72 @bluesky.delete_record_at(like_uri) 73 73 next 74 74 end ··· 78 78 prepo = parent_uri.split('/')[2] 79 79 80 80 if prepo != @bluesky.did 81 - puts "Skipping reply to someone else" 81 + log "Skipping reply to someone else" 82 82 @bluesky.delete_record_at(like_uri) 83 83 next 84 84 else ··· 99 99 if parent_post = Post.find_by(bluesky_rkey: parent_rkey) 100 100 mastodon_parent_id = parent_post.mastodon_id 101 101 else 102 - puts "Skipping reply to a post that wasn't cross-posted" 102 + log "Skipping reply to a post that wasn't cross-posted" 103 103 @bluesky.delete_record_at(like_uri) 104 104 next 105 105 end 106 106 end 107 107 108 108 response = post_to_mastodon(record, mastodon_parent_id) 109 - p response 109 + log(response) 110 110 111 111 Post.create!(bluesky_rkey: rkey, mastodon_id: response['id']) 112 112 ··· 122 122 end 123 123 124 124 def post_to_mastodon(record, mastodon_parent_id = nil) 125 - p record 125 + log(record) 126 126 127 127 text = expand_facets(record) 128 128 ··· 309 309 310 310 def bsky_post_link(repo, rkey) 311 311 "https://bsky.app/profile/#{repo}/post/#{rkey}" 312 + end 313 + 314 + def log(obj) 315 + text = obj.is_a?(String) ? obj : obj.inspect 316 + puts "[#{Time.now}] #{text}" 312 317 end 313 318 end
+2
tootify
··· 4 4 require_relative 'app/tootify' 5 5 6 6 def run(argv) 7 + $stdout.sync = true 8 + 7 9 options, args = argv.partition { |x| x.start_with?('-') } 8 10 9 11 app = Tootify.new