class Boppers::Notifier::Sendgrid

Attributes

domain[R]
email[R]
password[R]
username[R]

Public Class Methods

new(username:, password:, domain:, email:, subscribe: nil) click to toggle source
# File lib/boppers/notifier/sendgrid.rb, line 8
def initialize(username:, password:, domain:, email:, subscribe: nil)
  require "mail"

  @username = username
  @password = password
  @domain = domain
  @email = email
  @subscribe = subscribe
end

Public Instance Methods

call(title, message, _options) click to toggle source
# File lib/boppers/notifier/sendgrid.rb, line 18
def call(title, message, _options)
  mail = Mail.new
  mail.delivery_method :smtp,
                       address: "smtp.sendgrid.net",
                       port: 587,
                       user_name: username,
                       password: password,
                       domain: domain,
                       authentication: :plain,
                       enable_starttls_auto: true

  mail.subject(title)
  mail.to(email)
  mail.from("Boppers <noreply@boppers>")
  mail.part("text/plain") do |part|
    part.body = message
  end

  mail.deliver
end