0.3.0 • Published 9 years ago
pomo-mailer v0.3.0
Pomo Mailer
- Render multi-language mail with jade template.
- Mail queue based on MongoDB, send mail by local timezone.
- Manage cyclical task, resume from original progress when terminated.
- Built-in some useful templates.
- Mail agent using HTTP API.
{Mailer, Queue, Agent, Task} = require 'pomo-mailer'
Mailer
mailer = new Mailer
server:
service: 'Postmark'
auth:
user: 'postmark-api-token'
pass: 'postmark-api-token'
from: 'Pomotodo <robot@pomotodo.com>'
mailer.sendMail 'action', 'jysperm@gmail.com',
title: 'Please confirm your email address'
link: 'https://pomotodo.com'
action: 'Confirm'
.then console.log
.catch console.error
Queue
queue = new Queue
mailer: mailer
mongodb: 'mongodb://localhost/pomo-mailer-test'
queue.pushMail
template: 'billing'
address: 'jysperm@gmail.com'
locals: generateBilling()
.then console.log
.catch console.error
Agent
agent = new Agent
queue: queue
users:
jysperm: 'pass'
app = express()
app.use bodyParser.json()
app.use agent.express()
Task
task = new Task
name: 'weekly'
worker: worker
groupBy: -> moment().format 'YYYY-W'
nextGroup: -> moment().startOf('week').add(weeks: 1)
worker = (task) ->
return Q.Promise (resolve, reject, notify) ->
db.accounts.find
_id:
$gte: task.progress ? null
.sort
_id: 1
.then (accounts) ->
async.each accounts, ({_id, email, generateWeekly}) ->
notify _id
mailer.sendMail 'weekly', email, generateWeekly()
.then resolve, reject
Built-in templates
action
alert
billing
Some useful templates converted from mailgun/transactional-email-templates.
Common fields:
title
{String}detail
{String}link
{String}action
{String}copyright
{String}unsubscribe
{Object}before
{String}link
{String}action
{String}after
{String}
alert
fields:
alert
{String}
billing
fields:
address
{Array} of {String}products
{Array}name
{String}price
{String}
total
{Object}name
{String}price
{String}
0.3.0
9 years ago
0.2.11
9 years ago
0.2.10
9 years ago
0.2.9
9 years ago
0.2.8
10 years ago
0.2.7
10 years ago
0.2.6
10 years ago
0.2.5
10 years ago
0.2.4
10 years ago
0.2.3
10 years ago
0.2.2
10 years ago
0.2.1
10 years ago
0.2.0
10 years ago
0.1.8
10 years ago
0.1.7
10 years ago
0.1.6
10 years ago
0.1.5
11 years ago
0.1.4
11 years ago
0.1.3
11 years ago
0.1.2
11 years ago
0.1.1
11 years ago
0.1.0
11 years ago