Adição da função de configuração de email e whatts
This commit is contained in:
26
app/services/notificacao/cliente_twilio.rb
Normal file
26
app/services/notificacao/cliente_twilio.rb
Normal file
@@ -0,0 +1,26 @@
|
||||
# app/services/notificacao/cliente_twilio.rb
|
||||
#
|
||||
# Monta o Twilio::REST::Client com timeout. Sem timeout, uma saída de internet
|
||||
# bloqueada no servidor pendura o worker Puma até o proxy cortar a requisição —
|
||||
# e o botão "enviar teste" da tela ficaria girando sem resposta.
|
||||
#
|
||||
# O construtor com http_client é posicional na twilio-ruby 7.x
|
||||
# (username, password, account_sid, region, http_client). Se a assinatura mudar
|
||||
# numa atualização da gem, cai no construtor simples em vez de quebrar o envio.
|
||||
module Notificacao
|
||||
module ClienteTwilio
|
||||
TIMEOUT = 15
|
||||
|
||||
def self.montar(sid, token)
|
||||
require 'twilio-ruby'
|
||||
|
||||
begin
|
||||
http = Twilio::HTTP::Client.new(timeout: TIMEOUT)
|
||||
Twilio::REST::Client.new(sid, token, nil, nil, http)
|
||||
rescue ArgumentError, NameError => e
|
||||
Rails.logger.warn("[ClienteTwilio] sem timeout customizado (#{e.class}: #{e.message})")
|
||||
Twilio::REST::Client.new(sid, token)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user