Class: TotalVoice::Sms

Inherits:
Object
  • Object
show all
Defined in:
lib/api/sms.rb

Overview

Inicializa o HTTP client

Constant Summary collapse

ROTA_SMS =
"/sms"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Sms

Returns a new instance of Sms.



10
11
12
# File 'lib/api/sms.rb', line 10

def initialize(client)
  @client = client
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



7
8
9
# File 'lib/api/sms.rb', line 7

def client
  @client
end

Instance Method Details

#buscar(id) ⇒ json

Busca as informações do registro de SMS

Parameters:

  • id (Integer)

Returns:

  • (json)


42
43
44
# File 'lib/api/sms.rb', line 42

def buscar(id)
  @client.get(Route.new([ROTA_SMS, id.to_s]))
end

#enviar(numero_destino, mensagem, resposta_usuario = false, multi_sms = false, data_criacao = nil, tags = nil) ⇒ json

Enviar SMS

Parameters:

  • numero_destino (String)
  • mensagem (String)
  • resposta_usuario (Boolean) (defaults to: false)
  • multi_sms (Boolean) (defaults to: false)
  • data_criacao (DateTime|String) (defaults to: nil)
  • tags (String) (defaults to: nil)

Returns:

  • (json)


25
26
27
28
29
30
31
32
33
34
# File 'lib/api/sms.rb', line 25

def enviar(numero_destino, mensagem, resposta_usuario = false, multi_sms = false, data_criacao = nil, tags = nil)
  @client.post(Route.new([ROTA_SMS]), {
    numero_destino: numero_destino,
    mensagem: mensagem,
    resposta_usuario: resposta_usuario,
    multi_sms: multi_sms,
    data_criacao: data_criacao != nil ? Time.parse(data_criacao.to_s).utc : nil,
    tags: tags
  })
end

#relatorio(data_inicio, data_fim) ⇒ json

Gera relatório de SMS

Parameters:

  • data_inicio (DateTime|String)
  • data_fim (DateTime|String)

Returns:

  • (json)


53
54
55
56
57
58
# File 'lib/api/sms.rb', line 53

def relatorio(data_inicio, data_fim)
  @client.get(
    Route.new([ROTA_SMS, 'relatorio']),
    Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
  )
end