Chatwoot/db/migrate/20170519091541_add_pic_to_inbox_migration.rb
2019-10-20 14:17:26 +05:30

24 lines
701 B
Ruby

class AddPicToInboxMigration < ActiveRecord::Migration[5.0]
def change
FacebookPage.find_each do |inbox|
begin
url = 'http://graph.facebook.com/' << inbox.page_id << '/picture?type=large'
uri = URI.parse(url)
tries = 3
begin
response = uri.open(redirect: false)
rescue OpenURI::HTTPRedirect => e
uri = e.uri # assigned from the "Location" response header
retry if (tries -= 1) > 0
raise
end
pic_url = response.base_uri.to_s
puts pic_url.inspect
rescue StandardError => e
pic_url = nil
end
inbox.remote_avatar_url = pic_url
inbox.save!
end
end
end