botmaster-session-ware-redis-store

1.0.2 • Public • Published

Botmaster Session Ware Redis Store

Build Status Coverage Status npm-version license

This is the Redis store adapter for the botmaster-session-ware middleware.

Install

yarn add botmaster-session-ware-redis-store

or with npm

npm install --save botmaster-session-ware-redis-store

Note

This package is an adapter for botmaster-session-ware: https://github.com/botmasterai/botmaster-session-ware

API

RedisStore

Using this adapter along with the botmaster-session-ware middleware will store sessions in redis rather than use the default in memory store which should not be used in production

Parameters

Examples

const Botmaster = require('botmaster');
// Using this socket.io bot class for the sake of the example
const SocketioBot = require('botmaster-socket.io');
const SessionWare = require('botmaster-session-ware');
const SessionWareRedisStore = require('botmaster-session-ware-redis-store');
 
const botmaster = new Botmaster();
botmaster.addBot(new SocketioBot({
  id: 'botId',
  server: botmaster.server,
}));
 
// declaring middleware
 
botmaster.use({
  type: 'incoming',
  name: 'my-awesome-middleware',
  controller: async (bot, update) => {
    // this will be {} on the first call from a certain user
    // and will contain the last message upon all the next iterations
    console.log(update.session);
 
    update.session.lastMessage = update.message;
  }
})
 
// This will make our context persist throughout different messages from the
// same user
const sessionWare = new SessionWare({ adapter: new SessionWareRedisStore() });
botmaster.useWrapped(sessionWare.incoming, sessionWare.outgoing);

get

Get or create a session with the id.

Parameters

  • id String a unique id for the session

Returns Promise evaluates to an object that is the session

set

Update a session in the storage.

Parameters

  • id String a unique id for the session
  • value Object the new value for the session

Returns Promise resolves when the session has been saved

Dependencies (3)

Dev Dependencies (18)

Package Sidebar

Install

npm i botmaster-session-ware-redis-store

Weekly Downloads

1

Version

1.0.2

License

MIT

Last publish

Collaborators

  • jdwuarin