bamboo v1.0.0 Bamboo.DeliverLaterStrategy behaviour View Source
Behaviour for delivering emails with
Use this behaviour to create strategies for delivering later. You could make a strategy using a GenServer, a background job library or whatever else you decide.
config :my_app, MyApp.Mailer, adapter: Bamboo.MandrillAdapter, # or whatever adapter you want deliver_later_strategy: MyCustomStrategy
defmodule Bamboo.TaskAsyncStrategy do @behaviour Bamboo.DeliverLaterStrategy # This is a strategy for delivering later using Task.async def deliver_later(adapter, email, config) do Task.async fn -> # Always call deliver on the adapter so that the email is delivered. adapter.deliver(email, config) end end end