Class: TotalVoice::Chamada
- Inherits:
-
Object
- Object
- TotalVoice::Chamada
- Defined in:
- lib/api/chamada.rb
Overview
Inicializa o HTTP client
Constant Summary collapse
- ROTA_CHAMADA =
"/chamada"
Instance Attribute Summary collapse
-
#client ⇒ Object
readonly
Returns the value of attribute client.
Instance Method Summary collapse
-
#avaliar(id, nota, comentario = nil) ⇒ json
Avalia uma Chamada com nota de 1 a 5.
-
#buscar(id) ⇒ json
Busca as informações do registro da chamada.
-
#download_gravacao(id) ⇒ json
Busca as informações do registro da chamada.
-
#encerrar(id) ⇒ json
Encerra uma chamada ativa.
-
#escutar(id, numero, modo) ⇒ json
(Beta) Escuta uma chamada ativa.
-
#initialize(client) ⇒ Chamada
constructor
A new instance of Chamada.
-
#ligar(numero_origem, numero_destino, opcoes = {}) ⇒ json
Realiza uma chamada telefônica entre dois números: A e B.
-
#relatorio(data_inicio, data_fim) ⇒ json
Gera relatório de chamadas.
-
#transferir(id, numero, perna) ⇒ json
(Beta) Faz uma transferência da chamada atual.
Constructor Details
#initialize(client) ⇒ Chamada
Returns a new instance of Chamada.
10 11 12 |
# File 'lib/api/chamada.rb', line 10 def initialize(client) @client = client end |
Instance Attribute Details
#client ⇒ Object (readonly)
Returns the value of attribute client.
7 8 9 |
# File 'lib/api/chamada.rb', line 7 def client @client end |
Instance Method Details
#avaliar(id, nota, comentario = nil) ⇒ json
Avalia uma Chamada com nota de 1 a 5
115 116 117 118 119 120 |
# File 'lib/api/chamada.rb', line 115 def avaliar(id, nota, comentario = nil) @client.post(Route.new([ROTA_CHAMADA, id.to_s, 'avaliar']), { nota: nota, comentario: comentario }) end |
#buscar(id) ⇒ json
Busca as informações do registro da chamada
49 50 51 |
# File 'lib/api/chamada.rb', line 49 def buscar(id) @client.get(Route.new([ROTA_CHAMADA, id.to_s])) end |
#download_gravacao(id) ⇒ json
Busca as informações do registro da chamada
59 60 61 |
# File 'lib/api/chamada.rb', line 59 def download_gravacao(id) @client.get(Route.new([ROTA_CHAMADA, id.to_s, 'gravacao'])) end |
#encerrar(id) ⇒ json
Encerra uma chamada ativa
39 40 41 |
# File 'lib/api/chamada.rb', line 39 def encerrar(id) @client.delete(Route.new([ROTA_CHAMADA, id.to_s])) end |
#escutar(id, numero, modo) ⇒ json
(Beta) Escuta uma chamada ativa
85 86 87 88 89 90 |
# File 'lib/api/chamada.rb', line 85 def escutar(id, numero, modo) @client.post(Route.new([ROTA_CHAMADA, id.to_s, 'escuta']), { numero: numero, modo: modo }) end |
#ligar(numero_origem, numero_destino, opcoes = {}) ⇒ json
Realiza uma chamada telefônica entre dois números: A e B
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/api/chamada.rb', line 22 def ligar(numero_origem, numero_destino, opcoes = {}) data = { numero_origem: numero_origem, numero_destino: numero_destino } data.merge!(opcoes) @client.post(Route.new([ROTA_CHAMADA]), data) end |
#relatorio(data_inicio, data_fim) ⇒ json
Gera relatório de chamadas
70 71 72 73 74 75 |
# File 'lib/api/chamada.rb', line 70 def relatorio(data_inicio, data_fim) @client.get( Route.new([ROTA_CHAMADA, 'relatorio']), Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc }) ) end |
#transferir(id, numero, perna) ⇒ json
(Beta) Faz uma transferência da chamada atual
100 101 102 103 104 105 |
# File 'lib/api/chamada.rb', line 100 def transferir(id, numero, perna) @client.post(Route.new([ROTA_CHAMADA, id.to_s, 'transfer']), { numero: numero, perna: perna }) end |