Contents
hide
Introducción
En este fragmento de código, se aprende a enviar una API de WhatsApp usando Ruby, para enviar un mensaje de texto, plantillas de WhatsApp, medios de comunicación, botones interactivos, listas, productos … etc, Alvochat cuenta es necesaria para ejecutar los siguientes códigos. Crea una cuenta si no la tienes.
Enviar una plantilla con la API de WhatsApp y Ruby
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/template")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:name => 'hello_world',
:language => 'en_us',
:header => '',
:body => '',
:buttons => '',
:priority => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar un mensaje de texto utilizando la API de WhatsApp y Ruby
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/chat")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:body => 'WhatsApp API on alvochat.com works good',
:priority => '',
:preview_url => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar imagen
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/image")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:image => 'https://alvochat-example.s3-accelerate.amazonaws.com/image/1.jpeg',
:caption => 'image caption',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar audio
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/audio")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:audio => 'https://alvochat-example.s3-accelerate.amazonaws.com/audio/1.mp3',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar vídeo
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/video")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:video => 'https://alvochat-example.s3-accelerate.amazonaws.com/video/1.mp4',
:caption => 'video caption',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar documento
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/document")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:document => 'https://alvochat-example.s3-accelerate.amazonaws.com/document/1.pdf',
:filename => '',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar pegatina
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/sticker")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:sticker => 'https://alvochat-example.s3-accelerate.amazonaws.com/sticker/1.webp',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar contacto
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/contact")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:contact => '',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar ubicación
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/location")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:lat => '37.484296',
:lng => '-122.148703',
:address => 'Menlo Park, California, United States',
:name => 'Meta Headquarters',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar lista
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/list")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:header => 'header',
:body => ' please select one of the following options',
:footer => 'footer',
:button => 'options',
:sections => 'option_1,option_2,option_3',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Botón de envío
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/button")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:header => 'header',
:body => ' please select one of the following options',
:footer => 'footer',
:buttons => 'option_1,option_2,option_3',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Enviar productos
require 'uri'
require 'net/http'
url = URI("https://api.alvochat.com/instance1199/messages/product")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/x-www-form-urlencoded'
form_data = URI.encode_www_form( {
:token => 'YourToken',
:to => '16315555555',
:header => 'header',
:body => 'Hi , check out our new products',
:footer => 'footer',
:catalog_id => '',
:product => '',
:priority => '',
:message_id => ''
})
request.body = form_data
response = http.request(request)
puts response.read_body
Puede ver la documentación completa de la API de Whatsapp aquí.