Module: EvolutionApi

Extended by:
Dry::Configurable
Defined in:
lib/evolution_api.rb,
lib/evolution_api/chat.rb,
lib/evolution_api/client.rb,
lib/evolution_api/errors.rb,
lib/evolution_api/contact.rb,
lib/evolution_api/message.rb,
lib/evolution_api/version.rb,
lib/evolution_api/webhook.rb,
lib/evolution_api/instance.rb

Overview

Evolution API Ruby Client

Uma gem Ruby para consumir facilmente a Evolution API, permitindo integração com WhatsApp através de uma API REST simples e poderosa.

Examples:

Configuração básica

EvolutionApi.configure do |config|
  config.base_url = "http://localhost:8080"
  config.api_key = "sua_api_key_aqui"
end

Uso básico

client = EvolutionApi::Client.new
instances = client.list_instances
client.send_message("instance_name", "5511999999999", "Olá!")

See Also:

Defined Under Namespace

Classes: AuthenticationError, AuthorizationError, Chat, Client, ConnectionError, Contact, Error, Instance, InstanceNotConnectedError, InvalidNumberError, Message, NotFoundError, QRCodeExpiredError, RateLimitError, ServerError, TimeoutError, ValidationError, Webhook

Constant Summary collapse

VERSION =
'1.1.0'

Class Method Summary collapse

Class Method Details

.clientEvolutionApi::Client

Retorna um novo cliente configurado

Returns:



77
78
79
# File 'lib/evolution_api.rb', line 77

def client
  @client ||= Client.new
end

.configure(options = {}) {|config| ... } ⇒ Object

Configura a gem com as opções fornecidas

Examples:

EvolutionApi.configure do |config|
  config.base_url = "https://api.evolution.com"
  config.api_key = "sua_chave_api"
  config.timeout = 60
end

Parameters:

  • options (Hash) (defaults to: {})

    Opções de configuração

Yields:

  • (config)

    Bloco para configuração

Yield Parameters:

  • config (Dry::Configurable::Config)

    Objeto de configuração



69
70
71
72
# File 'lib/evolution_api.rb', line 69

def configure(options = {})
  options.each { |key, value| config.public_send("#{key}=", value) }
  yield config if block_given?
end

.reset_client!Object

Reseta o cliente (útil para testes)



82
83
84
# File 'lib/evolution_api.rb', line 82

def reset_client!
  @client = nil
end