Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/valentineus/iii-for-vk
Simple automatic reply to incoming messages.
https://github.com/valentineus/iii-for-vk
Last synced: 4 months ago
JSON representation
Simple automatic reply to incoming messages.
- Host: GitHub
- URL: https://github.com/valentineus/iii-for-vk
- Owner: valentineus
- License: mit
- Archived: true
- Created: 2017-06-05T10:44:14.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-08-03T15:01:15.000Z (over 4 years ago)
- Last Synced: 2024-09-23T01:01:58.581Z (4 months ago)
- Language: JavaScript
- Size: 30.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# iii-for-vk
[![npm](https://img.shields.io/npm/v/iii-for-vk.svg)](https://www.npmjs.com/package/iii-for-vk)
[![dependencies Status](https://david-dm.org/valentineus/iii-for-vk/status.svg)](https://david-dm.org/valentineus/iii-for-vk)
[![devDependencies Status](https://david-dm.org/valentineus/iii-for-vk/dev-status.svg)](https://david-dm.org/valentineus/iii-for-vk?type=dev)## Description
This package contains a minimalistic and simple API for the rapid deployment of the bot under the social network VK.
Created to demonstrate the possibilities of using the `iii-client` package.The functionality of the existing API is easily extended to the needs of the developer.
Want to own a bot under the social network? Take my package and expand it, as you wish.
## Installation and usage example
Installation is performed by the command:
```bash
npm install --save iii-for-vk
```A simple example that implements an answering machine is at the root of the repository.
This is the file `example.js`.
In the NPM package it is not included to reduce the volume:
```bash
$ npm init
$ npm install --save iii-for-vk
$ curl -L -o index.js https://raw.githubusercontent.com/valentineus/iii-for-vk/master/example.js
// Edit the file index.js
$ node ./index.js
```## Expanding functionality
### Events
There is an event channel called `events`.
All incoming account events pass through it.
Event details: https://vk.com/dev/using_longpollAn example of a filter for certain events can be seen in the example of the `_filterMessages` function.
### Social Network API
After declaring the main class and executing the `init` function, you can use the inner class` _vk` to work with the social network API.Work Details: [nodejs-vksdk](https://github.com/57uff3r/nodejs-vksdk)
Example:
```javascript
var bot = new ChatBot({
// Variables
});// Request 'users.get' method
bot._vk.request('users.get', {'user_id' : 1}, function(_o) {
console.log(_o);
});
```## API
### new Bot()
Class representing a Bot.### bot.init(callback)
Initial initialization of all systems and services.| Param | Type | Description |
| --- | --- | --- |
| callback |requestCallback
| The callback that handles the response. |### bot.getMessageByID(id, callback)
Receive a message by its ID.| Param | Type | Description |
| --- | --- | --- |
| id |Number
| The message ID. |
| callback |requestCallback
| The callback that handles the response. |### bot.sendMessageToVK(options, callback)
Simplifies the sending of a message to the user.
The social network API is used.
More information: https://vk.com/dev/messages.send| Param | Type | Description |
| --- | --- | --- |
| options |Object
| Object with parameters. |
| options.user_id |Object
| User ID. |
| options.message |Object
| Message text. |
| callback |requestCallback
| The callback that handles the response. |### bot.sendMessageToBot(options, callback)
Simplifies sending a message to the bot.| Param | Type | Description |
| --- | --- | --- |
| options |Object
| Object with parameters. |
| options.cuid |Object
| Session identifier. |
| options.text |Object
| Message text. |
| callback |requestCallback
| The callback that handles the response. |### bot._eventLoop()
The event startup service.### bot._filterMessages()
Filter events for incoming messages.*Fires:**: Bot#messages
### bot._getLongPollServer(callback)
Obtaining the Long Poll server address.| Param | Type | Description |
| --- | --- | --- |
| callback |requestCallback
| The callback that handles the response. |### bot._getEvents([ts])
Waiting and returning the event.*Fires:**: Bot#events
| Param | Type | Description |
| --- | --- | --- |
| [ts] |String
| The ID of the last event. |## License
[![JavaScript Style Guide](https://cdn.rawgit.com/feross/standard/master/badge.svg)](https://github.com/eslint/eslint)[MIT](LICENSE.md).
Copyright (c) [Valentin Popov](https://valentineus.link/).