Toot toooooooot (Bluesky-Mastodon cross-poster)

tweaked logging

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