Skip to content

cveilleux/pg-ears

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pg-ears NPM version js-standard-style Dependency Status

Resilient Postgres listen client

install

$ npm install --save pg-ears

api

pg-ears exports a single function takes the same options as a new node-postgres new Client(opts) with a couple additions and returns an object containing the methods listen and notify

  • options (Object - required) Options for node-postgres connection plus the following:
    • checkInterval (Number (ms) - optional - default: 30000 [30 sec.])
    • maxAttempts (Number - optional - default: 60) Multiplier of checkInterval - number of attempts before giving up on reconnect

listen(channel, callback)

  • channel (String - required)
  • callback (Function - required) will be called every time a message is received with (error, data) as arguments

notify(channel, payload, callback)

  • channel (Object - required)
  • payload (Object | Array | String - required)
  • callback (Object - optional) will be called with error if unable to send

usage

const options = {
  user: 'foo', //env var: PGUSER
  database: 'my_db', //env var: PGDATABASE
  password: 'secret', //env var: PGPASSWORD
  host: 'localhost', // Server hosting the postgres database
  port: 5432 //env var: PGPORT
}
const pgEars = require('pg-ears')(options)
pgEars.listen('mychannel', (err, data) => {
  if (err) return console.error(err)
  console.log(data)
})
pgEars.notify('mychannel', {key: 'value'}, (err) => {
  if (err) console.error(err)
})

license

MIT © Andrew Carpenter

About

Resilient Postgres listen client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%