Ctrl K
ComunidadGuías…

lib/slack_username.rb

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
class SlackUsername
  def self.find_by_uid(uid)
    key = "slack_username_#{uid}"

    cached_name = Rails.cache.fetch(key, expires_in: 1.day) do
      data = Cachet.user(uid)

      data && (data["displayName"].presence || data["realName"].presence)
    end

    Rails.cache.delete(key) unless cached_name.present?

    cached_name
  rescue Cachet::ApiError, HTTP::TimeoutError, HTTP::ConnectionError, JSON::ParserError => e
    Rails.logger.warn("Cachet name lookup failed for #{uid}: #{e.message}")
    nil
  end
end