totalvoice-ruby 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -1
- data/README.md +15 -12
- data/exemplos/envio-audio.rb +5 -0
- data/lib/api/audio.rb +4 -2
- data/lib/api/composto.rb +4 -2
- data/lib/api/conferencia.rb +29 -0
- data/lib/api/conta.rb +5 -5
- data/lib/api/did.rb +17 -1
- data/lib/api/fila.rb +64 -0
- data/lib/api/ramal.rb +16 -1
- data/lib/api/sms.rb +4 -2
- data/lib/api/ura.rb +25 -0
- data/lib/api/valida_numero.rb +52 -0
- data/lib/api/verificacao.rb +47 -0
- data/lib/api/webphone.rb +2 -1
- data/lib/client.rb +11 -0
- data/lib/totalvoice/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55c3656d49c672a46fa3e122546b4df33f9bb43b
|
4
|
+
data.tar.gz: 67c3ce991c9cbb368e997934cf545bdf8ddcb4c3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3468fd10aeec31b134fc1dc05e875e8469600c8711ca5101568ff687bd4d18024fa907847aac43b978c5cbf11db2184715f8763241083846e83d918817b9d152
|
7
|
+
data.tar.gz: cd32579e980786e2d85ddb7066fd6a052a13208cf05921f316aa51cc05984cc5bd06d50136e50a0338059af8f0ead246751fa4ba4a9918159bf71fbe96474a37
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -7,10 +7,13 @@ Client em Ruby para a API da TotalVoice
|
|
7
7
|
- [X] Consulta e envio de SMS
|
8
8
|
- [X] Consulta e envio de TTS
|
9
9
|
- [X] Consulta e envio de Audio
|
10
|
+
- [X] Consulta e envio de Composto
|
10
11
|
- [X] Gerenciamento da Conta
|
11
12
|
- [X] Gerenciamento de Ramais
|
12
13
|
- [X] URL do Webphone
|
13
14
|
- [X] Gerenciamento de DID
|
15
|
+
- [X] Validação de Número
|
16
|
+
- [X] Verificação[Two Dactor Authentication]
|
14
17
|
|
15
18
|
> ### Requisitos
|
16
19
|
|
@@ -41,7 +44,7 @@ A seguir exemplos de como utilizar esta biblioteca.
|
|
41
44
|
require 'totalvoice-ruby'
|
42
45
|
include TotalVoice
|
43
46
|
|
44
|
-
@client = TotalVoice::API.new("
|
47
|
+
@client = TotalVoice::API.new("access-token")
|
45
48
|
puts @client.chamada.ligar("NUMERO-A", "NUMERO-B")
|
46
49
|
```
|
47
50
|
|
@@ -51,7 +54,7 @@ puts @client.chamada.ligar("NUMERO-A", "NUMERO-B")
|
|
51
54
|
require 'totalvoice-ruby'
|
52
55
|
include TotalVoice
|
53
56
|
|
54
|
-
@client = TotalVoice::API.new("
|
57
|
+
@client = TotalVoice::API.new("access-token")
|
55
58
|
puts @client.chamada.buscar(123456)
|
56
59
|
```
|
57
60
|
|
@@ -61,7 +64,7 @@ puts @client.chamada.buscar(123456)
|
|
61
64
|
require 'totalvoice-ruby'
|
62
65
|
include TotalVoice
|
63
66
|
|
64
|
-
@client = TotalVoice::API.new("
|
67
|
+
@client = TotalVoice::API.new("access-token")
|
65
68
|
puts @client.chamada.encerrar(123456)
|
66
69
|
```
|
67
70
|
|
@@ -71,7 +74,7 @@ puts @client.chamada.encerrar(123456)
|
|
71
74
|
require 'totalvoice-ruby'
|
72
75
|
include TotalVoice
|
73
76
|
|
74
|
-
@client = TotalVoice::API.new("
|
77
|
+
@client = TotalVoice::API.new("access-token")
|
75
78
|
puts @client.sms.enviar("NUMERO-DESTINO", "MENSAGEM")
|
76
79
|
```
|
77
80
|
|
@@ -81,7 +84,7 @@ puts @client.sms.enviar("NUMERO-DESTINO", "MENSAGEM")
|
|
81
84
|
require 'totalvoice-ruby'
|
82
85
|
include TotalVoice
|
83
86
|
|
84
|
-
@client = TotalVoice::API.new("
|
87
|
+
@client = TotalVoice::API.new("access-token")
|
85
88
|
puts @client.tts.enviar("NUMERO-DESTINO", "MENSAGEM")
|
86
89
|
```
|
87
90
|
|
@@ -91,7 +94,7 @@ puts @client.tts.enviar("NUMERO-DESTINO", "MENSAGEM")
|
|
91
94
|
require 'totalvoice-ruby'
|
92
95
|
include TotalVoice
|
93
96
|
|
94
|
-
@client = TotalVoice::API.new("
|
97
|
+
@client = TotalVoice::API.new("access-token")
|
95
98
|
puts @client.audio.enviar("NUMERO-DESTINO", "URL-AUDIO")
|
96
99
|
```
|
97
100
|
|
@@ -101,7 +104,7 @@ puts @client.audio.enviar("NUMERO-DESTINO", "URL-AUDIO")
|
|
101
104
|
require 'totalvoice-ruby'
|
102
105
|
include TotalVoice
|
103
106
|
|
104
|
-
@client = TotalVoice::API.new("
|
107
|
+
@client = TotalVoice::API.new("access-token")
|
105
108
|
puts @client.ramal.buscar(123)
|
106
109
|
```
|
107
110
|
|
@@ -111,7 +114,7 @@ puts @client.ramal.buscar(123)
|
|
111
114
|
require 'totalvoice-ruby'
|
112
115
|
include TotalVoice
|
113
116
|
|
114
|
-
@client = TotalVoice::API.new("
|
117
|
+
@client = TotalVoice::API.new("access-token")
|
115
118
|
puts @client.conta.buscar(123)
|
116
119
|
```
|
117
120
|
|
@@ -121,7 +124,7 @@ puts @client.conta.buscar(123)
|
|
121
124
|
require 'totalvoice-ruby'
|
122
125
|
include TotalVoice
|
123
126
|
|
124
|
-
@client = TotalVoice::API.new("
|
127
|
+
@client = TotalVoice::API.new("access-token")
|
125
128
|
puts @client.perfil.consulta_saldo()
|
126
129
|
```
|
127
130
|
|
@@ -131,7 +134,7 @@ puts @client.perfil.consulta_saldo()
|
|
131
134
|
require 'totalvoice-ruby'
|
132
135
|
include TotalVoice
|
133
136
|
|
134
|
-
@client = TotalVoice::API.new("
|
137
|
+
@client = TotalVoice::API.new("access-token", "https://meuhost.com.br")
|
135
138
|
puts @client.perfil.consulta_saldo()
|
136
139
|
```
|
137
140
|
|
@@ -141,7 +144,7 @@ puts @client.perfil.consulta_saldo()
|
|
141
144
|
require 'totalvoice-ruby'
|
142
145
|
include TotalVoice
|
143
146
|
|
144
|
-
@client = TotalVoice::API.new("
|
147
|
+
@client = TotalVoice::API.new("access-token")
|
145
148
|
puts @client.did.adquirir()
|
146
149
|
```
|
147
150
|
|
@@ -151,7 +154,7 @@ puts @client.did.adquirir()
|
|
151
154
|
require 'totalvoice-ruby'
|
152
155
|
include TotalVoice
|
153
156
|
|
154
|
-
@client = TotalVoice::API.new("
|
157
|
+
@client = TotalVoice::API.new("access-token")
|
155
158
|
puts @client.did.listar()
|
156
159
|
```
|
157
160
|
|
data/lib/api/audio.rb
CHANGED
@@ -21,15 +21,17 @@ module TotalVoice
|
|
21
21
|
# @param [Boolean] resposta_usuario
|
22
22
|
# @param [String] bina
|
23
23
|
# @param [Boolean] gravar_audio
|
24
|
+
# @param [Boolean] detecta_caixa
|
24
25
|
# @return [json]
|
25
26
|
#
|
26
|
-
def enviar(numero_destino, url_audio, resposta_usuario = false, bina = nil, gravar_audio = false)
|
27
|
+
def enviar(numero_destino, url_audio, resposta_usuario = false, bina = nil, gravar_audio = false, detecta_caixa = false)
|
27
28
|
@client.post(Route.new([ROTA_AUDIO]), {
|
28
29
|
numero_destino: numero_destino,
|
29
30
|
url_audio: url_audio,
|
30
31
|
resposta_usuario: resposta_usuario,
|
31
32
|
bina: bina,
|
32
|
-
gravar_audio: gravar_audio
|
33
|
+
gravar_audio: gravar_audio,
|
34
|
+
detecta_caixa: detecta_caixa
|
33
35
|
})
|
34
36
|
end
|
35
37
|
|
data/lib/api/composto.rb
CHANGED
@@ -19,15 +19,17 @@ module TotalVoice
|
|
19
19
|
# @param [String] bina
|
20
20
|
# @param [String] tags
|
21
21
|
# @param [Boolean] gravar_audio
|
22
|
+
# @param [Boolean] detecta_caixa
|
22
23
|
# @return [json]
|
23
24
|
#
|
24
|
-
def enviar(numero_destino, dados, bina = nil, tags = nil, gravar_audio = false)
|
25
|
+
def enviar(numero_destino, dados, bina = nil, tags = nil, gravar_audio = false, detecta_caixa = false)
|
25
26
|
@client.post(Route.new([ROTA_COMPOSTO]), {
|
26
27
|
numero_destino: numero_destino,
|
27
28
|
bina: bina,
|
28
29
|
tags: tags,
|
29
30
|
gravar_audio: gravar_audio,
|
30
|
-
dados: dados
|
31
|
+
dados: dados,
|
32
|
+
detecta_caixa: detecta_caixa
|
31
33
|
})
|
32
34
|
end
|
33
35
|
|
data/lib/api/conferencia.rb
CHANGED
@@ -55,5 +55,34 @@ module TotalVoice
|
|
55
55
|
def excluir(id)
|
56
56
|
@client.delete(Route.new([ROTA_CONFERENCIA, id.to_s]))
|
57
57
|
end
|
58
|
+
|
59
|
+
##
|
60
|
+
# Gera um relatorio de conferencias
|
61
|
+
#
|
62
|
+
# @param [DateTime|String] data_inicio
|
63
|
+
# @param [DateTime|String] data_fim
|
64
|
+
# @return [json]
|
65
|
+
#
|
66
|
+
def relatorio(data_inicio, data_fim)
|
67
|
+
@client.get(
|
68
|
+
Route.new([ROTA_CONFERENCIA, 'relatorio']),
|
69
|
+
Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
70
|
+
)
|
71
|
+
end
|
72
|
+
|
73
|
+
##
|
74
|
+
# Gera um relatorio de chamadas de conferencias
|
75
|
+
#
|
76
|
+
# @param [DateTime|String] data_inicio
|
77
|
+
# @param [DateTime|String] data_fim
|
78
|
+
# @return [json]
|
79
|
+
#
|
80
|
+
def relatorio_chamadas_conferencias(data_inicio, data_fim)
|
81
|
+
@client.get(
|
82
|
+
Route.new([ROTA_CONFERENCIA, 'chamadas/relatorio']),
|
83
|
+
Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
84
|
+
)
|
85
|
+
end
|
86
|
+
|
58
87
|
end
|
59
88
|
end
|
data/lib/api/conta.rb
CHANGED
@@ -11,7 +11,7 @@ module TotalVoice
|
|
11
11
|
end
|
12
12
|
|
13
13
|
##
|
14
|
-
# Cria uma
|
14
|
+
# Cria uma conta abaixo da sua - Subconta
|
15
15
|
#
|
16
16
|
# @param [Hash] data
|
17
17
|
# @return [json]
|
@@ -21,7 +21,7 @@ module TotalVoice
|
|
21
21
|
end
|
22
22
|
|
23
23
|
##
|
24
|
-
# Atualiza os dados da
|
24
|
+
# Atualiza os dados da Subconta
|
25
25
|
#
|
26
26
|
# @param [Integer] id
|
27
27
|
# @param [Hash] data
|
@@ -32,7 +32,7 @@ module TotalVoice
|
|
32
32
|
end
|
33
33
|
|
34
34
|
##
|
35
|
-
# Busca os dados da
|
35
|
+
# Busca os dados da Subconta
|
36
36
|
#
|
37
37
|
# @param [Integer] id
|
38
38
|
# @return [json]
|
@@ -42,7 +42,7 @@ module TotalVoice
|
|
42
42
|
end
|
43
43
|
|
44
44
|
##
|
45
|
-
# Remove uma
|
45
|
+
# Remove uma Subconta
|
46
46
|
#
|
47
47
|
# @param [Integer] id
|
48
48
|
# @return [json]
|
@@ -52,7 +52,7 @@ module TotalVoice
|
|
52
52
|
end
|
53
53
|
|
54
54
|
##
|
55
|
-
# Lista
|
55
|
+
# Lista todas as subconta criadas por mim
|
56
56
|
# @return [json]
|
57
57
|
#
|
58
58
|
def relatorio()
|
data/lib/api/did.rb
CHANGED
@@ -76,7 +76,7 @@ module TotalVoice
|
|
76
76
|
end
|
77
77
|
|
78
78
|
##
|
79
|
-
# Gera relatório de chamadas recebidas
|
79
|
+
# Gera relatório de chamadas recebidas de todos os DIDs
|
80
80
|
#
|
81
81
|
# @param [DateTime|String] data_inicio
|
82
82
|
# @param [DateTime|String] data_fim
|
@@ -88,5 +88,21 @@ module TotalVoice
|
|
88
88
|
Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
89
89
|
)
|
90
90
|
end
|
91
|
+
|
92
|
+
##
|
93
|
+
# Gera relatório de chamadas recebidas por um unico DID
|
94
|
+
#
|
95
|
+
# @param [Integer] id
|
96
|
+
# @param [DateTime|String] data_inicio
|
97
|
+
# @param [DateTime|String] data_fim
|
98
|
+
# @return [json]
|
99
|
+
#
|
100
|
+
def relatorio_did(id,data_inicio, data_fim)
|
101
|
+
@client.get(
|
102
|
+
Route.new([ROTA_DID, id.to_s, 'relatorio']),
|
103
|
+
Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
104
|
+
)
|
105
|
+
end
|
106
|
+
|
91
107
|
end
|
92
108
|
end
|
data/lib/api/fila.rb
CHANGED
@@ -19,5 +19,69 @@ module TotalVoice
|
|
19
19
|
def buscar(id)
|
20
20
|
@client.get(Route.new([ROTA_FILA, id.to_s]))
|
21
21
|
end
|
22
|
+
|
23
|
+
##
|
24
|
+
# Criar fila
|
25
|
+
#
|
26
|
+
# @param [String] nome
|
27
|
+
# @param [String] estrategia_ring
|
28
|
+
# @param [String] timeout_ring
|
29
|
+
# @return [json]
|
30
|
+
#
|
31
|
+
def criar(nome, estrategia_ring, timeout_ring = nil)
|
32
|
+
data = {
|
33
|
+
nome: nome,
|
34
|
+
estrategia_ring: estrategia_ring,
|
35
|
+
timeout_ring: timeout_ring
|
36
|
+
}
|
37
|
+
@client.post(Route.new([ROTA_FILA]), data)
|
38
|
+
end
|
39
|
+
|
40
|
+
##
|
41
|
+
# Adiciona um ramal na fila
|
42
|
+
#
|
43
|
+
# @param [String] nome
|
44
|
+
# @param [String] estrategia_ring
|
45
|
+
# @param [String] timeout_ring
|
46
|
+
# @return [json]
|
47
|
+
#
|
48
|
+
def adiciona_ramal(id, ramal_id)
|
49
|
+
data = {
|
50
|
+
ramal_id: ramal_id
|
51
|
+
}
|
52
|
+
@client.post(Route.new([ROTA_FILA, id.to_s]), data)
|
53
|
+
end
|
54
|
+
|
55
|
+
##
|
56
|
+
# Busca as informações de um ramal da Fila de Atendimento
|
57
|
+
#
|
58
|
+
# @param [Integer] id
|
59
|
+
# @return [json]
|
60
|
+
#
|
61
|
+
def buscar_ramal(id, ramal_id)
|
62
|
+
@client.get(Route.new([ROTA_FILA, id.to_s, ramal_id.to_s]))
|
63
|
+
end
|
64
|
+
|
65
|
+
##
|
66
|
+
# Atualiza as informações da fila
|
67
|
+
#
|
68
|
+
# @param [Integer] id
|
69
|
+
# @param [Hash] data
|
70
|
+
# @return [json]
|
71
|
+
#
|
72
|
+
def atualizar(id, data)
|
73
|
+
@client.put(Route.new([ROTA_FILA, id.to_s]), data)
|
74
|
+
end
|
75
|
+
|
76
|
+
##
|
77
|
+
# Remove um ramal da fila
|
78
|
+
#
|
79
|
+
# @param [Integer] id
|
80
|
+
# @param [Integer] ramal_id
|
81
|
+
# @return [json]
|
82
|
+
#
|
83
|
+
def excluir_ramal(id, ramal_id)
|
84
|
+
@client.delete(Route.new([ROTA_RAMAL, id.to_s, ramal_id.to_s]))
|
85
|
+
end
|
22
86
|
end
|
23
87
|
end
|
data/lib/api/ramal.rb
CHANGED
@@ -65,5 +65,20 @@ module TotalVoice
|
|
65
65
|
Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
66
66
|
)
|
67
67
|
end
|
68
|
+
|
69
|
+
##
|
70
|
+
# Gera relatório de pausas de um ramal
|
71
|
+
#
|
72
|
+
# @param [Integer] id
|
73
|
+
# @param [DateTime|String] data_inicio
|
74
|
+
# @param [DateTime|String] data_fim
|
75
|
+
# @return [json]
|
76
|
+
#
|
77
|
+
def relatorio_pausa_ramal(id, data_inicio, data_fim)
|
78
|
+
@client.get(
|
79
|
+
Route.new([ROTA_RAMAL,id.to_s, 'pausas']),
|
80
|
+
Query.new({'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
81
|
+
)
|
82
|
+
end
|
68
83
|
end
|
69
|
-
end
|
84
|
+
end
|
data/lib/api/sms.rb
CHANGED
@@ -19,15 +19,17 @@ module TotalVoice
|
|
19
19
|
# @param [Boolean] resposta_usuario
|
20
20
|
# @param [Boolean] multi_sms
|
21
21
|
# @param [DateTime|String] data_criacao
|
22
|
+
# @param [String] tags
|
22
23
|
# @return [json]
|
23
24
|
#
|
24
|
-
def enviar(numero_destino, mensagem, resposta_usuario = false, multi_sms = false, data_criacao = nil)
|
25
|
+
def enviar(numero_destino, mensagem, resposta_usuario = false, multi_sms = false, data_criacao = nil, tags = nil)
|
25
26
|
@client.post(Route.new([ROTA_SMS]), {
|
26
27
|
numero_destino: numero_destino,
|
27
28
|
mensagem: mensagem,
|
28
29
|
resposta_usuario: resposta_usuario,
|
29
30
|
multi_sms: multi_sms,
|
30
|
-
data_criacao: data_criacao != nil ? Time.parse(data_criacao.to_s).utc : nil
|
31
|
+
data_criacao: data_criacao != nil ? Time.parse(data_criacao.to_s).utc : nil,
|
32
|
+
tags: tags
|
31
33
|
})
|
32
34
|
end
|
33
35
|
|
data/lib/api/ura.rb
CHANGED
@@ -35,6 +35,16 @@ module TotalVoice
|
|
35
35
|
@client.delete(Route.new([ROTA_URA, id.to_s]))
|
36
36
|
end
|
37
37
|
|
38
|
+
##
|
39
|
+
# Busca uam URA pelo seu ID
|
40
|
+
#
|
41
|
+
# @param [Integer] id
|
42
|
+
# @return [json]
|
43
|
+
#
|
44
|
+
def buscar(id)
|
45
|
+
@client.get(Route.new([ROTA_URA, id.to_s]))
|
46
|
+
end
|
47
|
+
|
38
48
|
##
|
39
49
|
# Atualiza uma ura
|
40
50
|
#
|
@@ -45,5 +55,20 @@ module TotalVoice
|
|
45
55
|
def atualizar(id, data)
|
46
56
|
@client.put(Route.new([ROTA_URA, id.to_s]), data)
|
47
57
|
end
|
58
|
+
|
59
|
+
##
|
60
|
+
# Gera relatório de todas as URAs da conta
|
61
|
+
#
|
62
|
+
# @param [DateTime|String] data_inicio
|
63
|
+
# @param [DateTime|String] data_fim
|
64
|
+
# @return [json]
|
65
|
+
#
|
66
|
+
def relatorio(data_inicio, data_fim)
|
67
|
+
@client.get(
|
68
|
+
Route.new([ROTA_URA, 'relatorio']),
|
69
|
+
Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
70
|
+
)
|
71
|
+
end
|
72
|
+
|
48
73
|
end
|
49
74
|
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
require 'date'
|
2
|
+
|
3
|
+
require_relative '../route'
|
4
|
+
require_relative '../query'
|
5
|
+
|
6
|
+
module TotalVoice
|
7
|
+
# Inicializa o HTTP client
|
8
|
+
class ValidaNumero
|
9
|
+
attr_reader :client
|
10
|
+
ROTA_VALIDA_NUMERO = "/valida_numero"
|
11
|
+
|
12
|
+
def initialize(client)
|
13
|
+
@client = client
|
14
|
+
end
|
15
|
+
|
16
|
+
##
|
17
|
+
# Envia um Numeoro para verificação
|
18
|
+
#
|
19
|
+
# @param [String] numero_destino
|
20
|
+
# @return [json]
|
21
|
+
#
|
22
|
+
def enviar(numero_destino)
|
23
|
+
@client.post(Route.new([ROTA_VALIDA_NUMERO]), {
|
24
|
+
numero_destino: numero_destino
|
25
|
+
})
|
26
|
+
end
|
27
|
+
|
28
|
+
##
|
29
|
+
# Busca as informações de um número validado
|
30
|
+
#
|
31
|
+
# @param [Integer] id
|
32
|
+
# @return [json]
|
33
|
+
#
|
34
|
+
def buscar(id)
|
35
|
+
@client.get(Route.new([ROTA_VALIDA_NUMERO, id.to_s]))
|
36
|
+
end
|
37
|
+
|
38
|
+
##
|
39
|
+
# Gera relatório de números validados
|
40
|
+
#
|
41
|
+
# @param [DateTime|String] data_inicio
|
42
|
+
# @param [DateTime|String] data_fim
|
43
|
+
# @return [json]
|
44
|
+
#
|
45
|
+
def relatorio(data_inicio, data_fim)
|
46
|
+
@client.get(
|
47
|
+
Route.new([ROTA_VALIDA_NUMERO, 'relatorio']),
|
48
|
+
Query.new({ 'data_inicio': Time.parse(data_inicio.to_s).utc, 'data_fim': Time.parse(data_fim.to_s).utc })
|
49
|
+
)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'date'
|
2
|
+
|
3
|
+
require_relative '../route'
|
4
|
+
require_relative '../query'
|
5
|
+
|
6
|
+
module TotalVoice
|
7
|
+
# Inicializa o HTTP client
|
8
|
+
class Verificacao
|
9
|
+
attr_reader :client
|
10
|
+
ROTA_VERIFICACAO = "/verificacao"
|
11
|
+
|
12
|
+
def initialize(client)
|
13
|
+
@client = client
|
14
|
+
end
|
15
|
+
|
16
|
+
##
|
17
|
+
# Envia o código de verificação
|
18
|
+
#
|
19
|
+
# @param [String] numero_destino
|
20
|
+
# @param [String] nome_produto
|
21
|
+
# @param [Hash] opcoes
|
22
|
+
# @return [json]
|
23
|
+
#
|
24
|
+
def enviar(numero_destino, nome_produto, opcoes = {})
|
25
|
+
data = {
|
26
|
+
numero_destino: numero_destino,
|
27
|
+
nome_produto: nome_produto
|
28
|
+
}
|
29
|
+
data.merge!(opcoes)
|
30
|
+
@client.post(Route.new([ROTA_VERIFICACAO]), data)
|
31
|
+
end
|
32
|
+
|
33
|
+
##
|
34
|
+
# Consulta se o código pin é valido
|
35
|
+
#
|
36
|
+
# @param [Integer] id
|
37
|
+
# @return [json]
|
38
|
+
#
|
39
|
+
def consultar(id, pin)
|
40
|
+
@client.get(
|
41
|
+
Route.new([ROTA_VERIFICACAO]),
|
42
|
+
Query.new({ 'id': id.to_s, 'pin': pin.to_s })
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
47
|
+
end
|
data/lib/api/webphone.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative '../route'
|
2
|
+
require_relative '../query'
|
2
3
|
|
3
4
|
module TotalVoice
|
4
5
|
# Inicializa o HTTP client
|
@@ -17,7 +18,7 @@ module TotalVoice
|
|
17
18
|
# @return [json]
|
18
19
|
#
|
19
20
|
def url(data)
|
20
|
-
@client.get(Route.new([ROTA_WEBPHONE]), data)
|
21
|
+
@client.get(Route.new([ROTA_WEBPHONE]), Query.new(data))
|
21
22
|
end
|
22
23
|
end
|
23
24
|
end
|
data/lib/client.rb
CHANGED
@@ -16,6 +16,8 @@ require_relative 'api/sms'
|
|
16
16
|
require_relative 'api/tts'
|
17
17
|
require_relative 'api/ura'
|
18
18
|
require_relative 'api/webphone'
|
19
|
+
require_relative 'api/valida_numero'
|
20
|
+
require_relative 'api/verificacao'
|
19
21
|
|
20
22
|
|
21
23
|
module TotalVoice
|
@@ -52,6 +54,8 @@ module TotalVoice
|
|
52
54
|
@tts = nil
|
53
55
|
@ura = nil
|
54
56
|
@webphone = nil
|
57
|
+
@valida_numero = nil
|
58
|
+
@verificacao = nil
|
55
59
|
end
|
56
60
|
|
57
61
|
def audio
|
@@ -110,6 +114,13 @@ module TotalVoice
|
|
110
114
|
@webphone ||= Webphone.new self
|
111
115
|
end
|
112
116
|
|
117
|
+
def valida_numero
|
118
|
+
@valida_numero ||= ValidaNumero.new self
|
119
|
+
end
|
120
|
+
|
121
|
+
def verificacao
|
122
|
+
@verificacao ||= Verificacao.new self
|
123
|
+
end
|
113
124
|
#
|
114
125
|
# GET HTTP Method
|
115
126
|
#
|
data/lib/totalvoice/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: totalvoice-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- DiloWagner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-09-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -34,6 +34,7 @@ files:
|
|
34
34
|
- Gemfile
|
35
35
|
- LICENSE
|
36
36
|
- README.md
|
37
|
+
- exemplos/envio-audio.rb
|
37
38
|
- lib/api/audio.rb
|
38
39
|
- lib/api/bina.rb
|
39
40
|
- lib/api/chamada.rb
|
@@ -47,6 +48,8 @@ files:
|
|
47
48
|
- lib/api/sms.rb
|
48
49
|
- lib/api/tts.rb
|
49
50
|
- lib/api/ura.rb
|
51
|
+
- lib/api/valida_numero.rb
|
52
|
+
- lib/api/verificacao.rb
|
50
53
|
- lib/api/webphone.rb
|
51
54
|
- lib/client.rb
|
52
55
|
- lib/query.rb
|