OTP con Ruby on rails
Genera un código OTP Token (One Time Password) con Ruby on rails
Ruby on rails : DOCUMENTACIÓN API
- Crear grupo con Ruby on rails
- Obtener campos de un grupo con Ruby on rails
- Añadir campo a un grupo con Ruby on rails
- Elimina campo de un grupo con Ruby on rails
- Eliminar un grupo de contactos
- Asigna país a un grupo con Ruby on rails
- Obtener contactos del grupo con Ruby on rails
- Añadir contacto a grupo con Ruby on rails
- Modificar contacto del grupo con Ruby on rails
- Eliminar contacto del grupo con Ruby on rails
- Obtener listado de canales de chat activos con Ruby on rails
- Enviar un mensaje por chat con Ruby on rails
- Enviar un archivo por chat con Ruby on rails
- Obtener listado de conversaciones de un chat con Ruby on rails
- Obtener listado de mensajes de un chat con Ruby on rails
- Obtener listado de mensajes no leídos de un chat con Ruby on rails
- Enviar un mensaje por WhatsAPP con Ruby on rails
- Enviar un archivo por WhatsAPP con Ruby on rails
- Obtener listado de conversaciones de WhatsAPP con Ruby on rails
- Obtener listado de mensajes de un WhatsAPP con Ruby on rails
- Obtener listado de mensajes no leídos de un chat de WhatsAPP con Ruby on rails
OTP con Ruby on rails
# net/http library is required
require 'net/http'
afilnet_class="otp";
afilnet_method="generateotp";
afilnet_user="user";
afilnet_password="password";
afilnet_type="number";
afilnet_destination="34600000000";
afilnet_time="1";
afilnet_timetype="days";
afilnet_length="6";
afilnet_otpformat="all";
afilnet_output="";
# Create an URL request
sUrl = "https://www.afilnet.com/api/http/?class="+afilnet_class+"&method="+afilnet_method+"&user="+afilnet_user+"&password="+afilnet_password+"&type="+afilnet_type+"&destination="+afilnet_destination+"&time="+afilnet_time+"&timetype="+afilnet_timetype+"&length="+afilnet_length+"&otpformat="+afilnet_otpformat+"&output="+afilnet_output;
uri = URI(sUrl)
response = Net::HTTP.get(uri)
# net/http library is required
require 'net/http'
afilnet_class="otp";
afilnet_method="generateotp";
afilnet_user="user";
afilnet_password="password";
afilnet_type="number";
afilnet_destination="34600000000";
afilnet_time="1";
afilnet_timetype="days";
afilnet_length="6";
afilnet_otpformat="all";
afilnet_output="";
# Create an URL request
sUrl = "https://www.afilnet.com/api/http/";
uri = URI(sUrl)
response = Net::HTTP.post_form(uri, "class" => afilnet_class, "method" => afilnet_method, "user" => afilnet_user, "password" => afilnet_password, "type" => afilnet_type, "destination" => afilnet_destination, "time" => afilnet_time, "timetype" => afilnet_timetype, "length" => afilnet_length, "otpformat" => afilnet_otpformat, "output" => afilnet_output)
puts response.body
# net/http library is required
require 'net/http'
afilnet_class="otp";
afilnet_method="generateotp";
afilnet_user="user";
afilnet_password="password";
afilnet_type="number";
afilnet_destination="34600000000";
afilnet_time="1";
afilnet_timetype="days";
afilnet_length="6";
afilnet_otpformat="all";
afilnet_output="";
# Create an URL request
sUrl = "https://www.afilnet.com/api/basic/?class="+afilnet_class+"&method="+afilnet_method+"&type="+afilnet_type+"&destination="+afilnet_destination+"&time="+afilnet_time+"&timetype="+afilnet_timetype+"&length="+afilnet_length+"&otpformat="+afilnet_otpformat+"&output="+afilnet_output;
uri = URI(sUrl)
req = Net::HTTP::Get.new(uri)
req.basic_auth afilnet_user, afilnet_password
res = Net::HTTP.start(uri.hostname) {|http|
http.request(req)
}
puts res.body
# Savon library is required
require 'savon'
# We define vars
afilnet_class="otp";
afilnet_method="generateotp";
afilnet_user="user";
afilnet_password="password";
afilnet_type="number";
afilnet_destination="34600000000";
afilnet_time="1";
afilnet_timetype="days";
afilnet_length="6";
afilnet_otpformat="all";
afilnet_output="";
# We create the client instance
client = Savon.client(wsdl: 'https://www.afilnet.com/api/soap/index.php?wsdl', ssl_verify_mode: :none)
# We call to the service
res = client.call(:call, message: {
user: afilnet_user,
password: afilnet_password,
class: afilnet_class,
method: afilnet_method,
petition: "{\"type\":\""+afilnet_type+"\",\"destination\":\""+afilnet_destination+"\",\"time\":\""+afilnet_time+"\",\"timetype\":\""+afilnet_timetype+"\",\"length\":\""+afilnet_length+"\",\"otpformat\":\""+afilnet_otpformat+"\",\"output\":\""+afilnet_output+"\"}"
})
puts res.body
Parámetro | Descripción | Obligatorio / Opcional |
---|---|---|
class=otp | Clase a la que se realiza la petición | Obligatorio |
method=generateotp | Método de la clase al que se realiza la petición | Obligatorio |
user | El usuario / email de su cuenta de Afilnet | Obligatorio |
password | El password de su cuenta de Afilnet | Obligatorio |
type | Tipo de grupo (email o mobile) | Obligatorio |
destination | Número de móvil o email destino | Obligatorio |
time | Número de días, semanas, meses o años | Opcional |
timetype | Tipo de tiempo (Valores posibles: minutes, hours, days, weeks, months o years) | Opcional |
length | Longitud de la contraseña a generar | Opcional |
otpformat | Formato de la contraseña a generar, si incluye todos los carácteres, sólo números o sólo letras (all, numbers, letters) | Opcional |
output | Formato de salida del resultado | Opcional |
Al realizar peticiones recibirá los siguientes campos:
- status
-
result (si status=success), recibirá los siguientes valores:
- No recibirá valores adicionales
- error (si status=error), aquí recibirá el código de error
Los códigos de error posibles son los siguientes:
Código | Descripción |
---|---|
MISSING_USER | Usuario / email no incluido |
MISSING_PASSWORD | Password no incluido |
MISSING_CLASS | Clase no incluida |
MISSING_METHOD | Método no incluido |
MISSING_COMPULSORY_PARAM | Parámetro obligatorio no incluido |
INCORRECT_USER_PASSWORD | Usuario o clave incorrectos |
INCORRECT_CLASS | Clase incorrecta |
INCORRECT_METHOD | Método incorrecto |
INCORRECT_TIME_TYPE | Tipo de tiempo incorrecto (Valores posibles: minutes, hours, days, weeks, months o years) |
INCORRECT_TYPE | Tipo incorrecto, debe ser mobile o email |
INCORRECT_FORMAT | ERROR_INCORRECT_FORMAT |
INCORRECT_OTP_FORMAT | ERROR_INCORRECT_OTP_FORMAT |
Parámetros:
- class : otp
- method : generateotp
- user : user
- password : password
- type : number
- destination : 34600000000
- time : 1
- timetype : days
- length : 6
- otpformat : all
- output :
Petición:
https://www.afilnet.com/api/http/?class=otp&method=generateotp&user=user&password=password&type=number&destination=34600000000&time=1&timetype=days&length=6&otpformat=all&output=