https://github.com/node-vk-bot-api/node-vk-bot-api-session-redis
📄 Redis session middleware for node-vk-bot-api.
https://github.com/node-vk-bot-api/node-vk-bot-api-session-redis
Last synced: 9 months ago
JSON representation
📄 Redis session middleware for node-vk-bot-api.
- Host: GitHub
- URL: https://github.com/node-vk-bot-api/node-vk-bot-api-session-redis
- Owner: node-vk-bot-api
- Created: 2018-08-03T10:55:18.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-01-18T07:49:49.000Z (about 7 years ago)
- Last Synced: 2025-03-12T10:46:03.316Z (about 1 year ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/node-vk-bot-api-session-redis
- Size: 23.4 KB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://www.npmjs.com/package/node-vk-bot-api-session-redis/)
[](http://standardjs.com/)
# node-vk-bot-api-session-redis
📄 Redis session middleware for [node-vk-bot-api](https://github.com/node-vk-bot-api/node-vk-bot-api).
## Install
```sh
$ npm i node-vk-bot-api-session-redis -S
```
## Tests
Before you must set `TOKEN` and `GROUP_ID` in `process.env`.
```sh
$ npm test
```
## Usage
```javascript
const VkBot = require('node-vk-bot-api')
const RedisSession = require('node-vk-bot-api-session-redis')
const bot = new VkBot(process.env.TOKEN)
const session = new RedisSession()
bot.use(session.middleware())
bot.on((ctx) => {
ctx.session.counter = ctx.session.counter || 0
ctx.session.counter++
ctx.reply(`You wrote ${ctx.session.counter} messages.`)
})
bot.startPolling()
```
## API
### Options
* `host`: Redis host (default: `127.0.0.1`)
* `port`: Redis port (default: `6379`)
* `password`: Redis password
* `key`: Context property name (default: `session`)
* `getSessionKey`: Method for get session key
Default `getSessionKey`:
```js
const getSessionKey = (ctx) => {
const userId = ctx.message.from_id || ctx.message.user_id;
return `${userId}:${userId}`;
};
````
### Clear session
```js
bot.on((ctx) => {
ctx.session = null
})
```
## License
MIT.