Module: WhatsAppNotifier
- Defined in:
- lib/whatsapp_notifier.rb,
lib/whatsapp_notifier/client.rb,
lib/whatsapp_notifier/doctor.rb,
lib/whatsapp_notifier/errors.rb,
lib/whatsapp_notifier/result.rb,
lib/whatsapp_notifier/railtie.rb,
lib/whatsapp_notifier/version.rb,
lib/whatsapp_notifier/web_adapter.rb,
lib/whatsapp_notifier/notification.rb,
lib/whatsapp_notifier/configuration.rb,
lib/whatsapp_notifier/session/store.rb,
lib/whatsapp_notifier/providers/base.rb,
lib/whatsapp_notifier/bulk/dispatcher.rb,
lib/whatsapp_notifier/bulk/rate_limiter.rb,
lib/whatsapp_notifier/bulk/retry_policy.rb,
lib/whatsapp_notifier/session/qr_service.rb,
lib/whatsapp_notifier/jobs/send_message_job.rb,
lib/whatsapp_notifier/providers/web_automation.rb,
lib/generators/whatsapp_notifier/install_generator.rb,
lib/generators/whatsapp_notifier/install_service_generator.rb
Defined Under Namespace
Modules: Bulk, Doctor, Generators, Jobs, Providers, Session
Classes: Client, Configuration, ConfigurationError, DeliveryError, Error, Notification, Railtie, Result, WebAdapter
Constant Summary
collapse
- VERSION =
"0.2.1"
Class Method Summary
collapse
Class Method Details
.client ⇒ Object
39
40
41
|
# File 'lib/whatsapp_notifier.rb', line 39
def client
@client ||= Client.new(configuration: configuration)
end
|
.configuration ⇒ Object
30
31
32
|
# File 'lib/whatsapp_notifier.rb', line 30
def configuration
@configuration ||= Configuration.new
end
|
20
21
22
23
24
|
# File 'lib/whatsapp_notifier.rb', line 20
def configure
yield(configuration)
configuration.validate!
@client = Client.new(configuration: configuration)
end
|
.connection_status(provider: nil, metadata: {}) ⇒ Object
61
62
63
|
# File 'lib/whatsapp_notifier.rb', line 61
def connection_status(provider: nil, metadata: {})
client.connection_status(provider: provider, metadata: metadata)
end
|
.deliver(to:, body:, metadata: {}, provider: nil, idempotency_key: nil) ⇒ Object
43
44
45
46
47
48
49
50
51
|
# File 'lib/whatsapp_notifier.rb', line 43
def deliver(to:, body:, metadata: {}, provider: nil, idempotency_key: nil)
client.deliver(
to: to,
body: body,
metadata: metadata,
provider: provider,
idempotency_key: idempotency_key
)
end
|
.deliver_bulk(messages, provider: nil, sleeper: ->(seconds) { sleep(seconds) }, rng: Random.new) ⇒ Object
53
54
55
|
# File 'lib/whatsapp_notifier.rb', line 53
def deliver_bulk(messages, provider: nil, sleeper: ->(seconds) { sleep(seconds) }, rng: Random.new)
client.deliver_bulk(messages, provider: provider, sleeper: sleeper, rng: rng)
end
|
.reset! ⇒ Object
34
35
36
37
|
# File 'lib/whatsapp_notifier.rb', line 34
def reset!
@configuration = Configuration.new
@client = Client.new(configuration: @configuration)
end
|
.scan_qr(provider: nil, metadata: {}) ⇒ Object
57
58
59
|
# File 'lib/whatsapp_notifier.rb', line 57
def scan_qr(provider: nil, metadata: {})
client.scan_qr(provider: provider, metadata: metadata)
end
|
.service_path ⇒ Object
26
27
28
|
# File 'lib/whatsapp_notifier.rb', line 26
def service_path
File.expand_path("whatsapp_notifier/services/web_automation", __dir__)
end
|