5
0
Fork 0
mirror of https://0xacab.org/sutty/sutty synced 2024-11-22 17:46:22 +00:00

feat: obtener información de le actore

This commit is contained in:
f 2024-02-24 12:46:55 -03:00
parent f836427979
commit 9e54d6311c
No known key found for this signature in database
2 changed files with 26 additions and 0 deletions

View file

@ -154,6 +154,8 @@ module Api
ActivityPub::InstanceFetchJob.perform_later(site: site, instance: a.instance) ActivityPub::InstanceFetchJob.perform_later(site: site, instance: a.instance)
a.save! a.save!
ActivityPub::ActorFetchJob.perform_later(site: site, actor: a)
end end
end end

View file

@ -0,0 +1,24 @@
# frozen_string_literal: true
# Obtiene o actualiza el contenido de un objeto, usando las credenciales
# del sitio.
#
# XXX: Esto usa las credenciales del sitio para volver el objeto
# disponible para todo el CMS. Asumimos que el objeto devuelto es el
# mismo para todo el mundo y las credenciales solo son para
# autenticación.
class ActivityPub
class ActorFetchJob < ApplicationJob
def perform(site:, actor:)
ActivityPub::Actor.transaction do
response = site.social_inbox.dereferencer.get(uri: actor.uri)
# @todo Fallar cuando la respuesta no funcione?
return unless response.ok?
return if response.miss? && actor.content.present?
actor.update(content: FastJsonparser.parse(response.body))
end
end
end
end