JSDoc
This commit is contained in:
parent
74cdccf5cf
commit
e71a9ab7e3
15
.travis.yml
15
.travis.yml
@ -1,6 +1,19 @@
|
|||||||
language: node_js
|
language: node_js
|
||||||
|
|
||||||
node_js:
|
node_js:
|
||||||
- "11"
|
- "11"
|
||||||
- "10"
|
- "10"
|
||||||
- "8"
|
- "8"
|
||||||
script: npm run test
|
|
||||||
|
script: npm run test
|
||||||
|
|
||||||
|
after_success: npm run doc
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
provider: pages
|
||||||
|
skip-cleanup: true
|
||||||
|
github-token: $GITHUB_TOKEN
|
||||||
|
keep-history: true
|
||||||
|
local-dir: out
|
||||||
|
on:
|
||||||
|
branch: master
|
@ -12,9 +12,16 @@ This is js retailCRM bot API client.
|
|||||||
npm install --save mg-api-client
|
npm install --save mg-api-client
|
||||||
```
|
```
|
||||||
In your file
|
In your file
|
||||||
|
|
||||||
|
###### CommonJS
|
||||||
```
|
```
|
||||||
var RetailcrmBotApiClient = require('mg-api-client');
|
var RetailcrmBotApiClient = require('mg-api-client');
|
||||||
```
|
```
|
||||||
|
###### es6
|
||||||
|
```
|
||||||
|
import RetailcrmBotApiClient from 'mg-api-client';
|
||||||
|
```
|
||||||
|
|
||||||
# Usage
|
# Usage
|
||||||
#### Get users
|
#### Get users
|
||||||
```javascript
|
```javascript
|
||||||
@ -66,7 +73,7 @@ const api = new RetailcrmBotApiClient({
|
|||||||
apiVersion: 'v1' // optional
|
apiVersion: 'v1' // optional
|
||||||
}).client;
|
}).client;
|
||||||
|
|
||||||
const wsData = api.getWebsocketData(['message_new']);
|
const wsData = api.getWebsocketData([RetailcrmBotApiClient.types().wsMessageNew]);
|
||||||
const ws = new WebSocket(wsData.get('url'), {
|
const ws = new WebSocket(wsData.get('url'), {
|
||||||
headers: wsData.get('headers')
|
headers: wsData.get('headers')
|
||||||
});
|
});
|
||||||
|
12
index.js
12
index.js
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
import v1 from './lib/v1/client'
|
import v1 from './lib/v1/client'
|
||||||
import Request from './lib/request'
|
import Request from './lib/request'
|
||||||
|
import * as consts from './lib/consts'
|
||||||
|
|
||||||
const lastApiVersion = 'v1';
|
const lastApiVersion = 'v1';
|
||||||
|
|
||||||
/** Class init bot api client */
|
export default class MgBotApiClient {
|
||||||
export default class RetailcrmBotApiClient {
|
|
||||||
/**
|
/**
|
||||||
* @param {Object} options
|
* @param {Object} options
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
@ -46,4 +46,12 @@ export default class RetailcrmBotApiClient {
|
|||||||
get client() {
|
get client() {
|
||||||
return this._client;
|
return this._client;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get types
|
||||||
|
* @returns {{msgTypeOrder?: string, wsUserJoinedChat?: string, msgTypeImage?: string, wsDialogAssign?: string, msgTypeText?: string, messageScopePublic?: string, wsMessageDeleted?: string, msgTypeCommand?: string, msgTypeFile?: string, msgTypeSystem?: string, wsBotUpdated?: string, msgTypeProduct?: string, wsDialogClosed?: string, wsMessageNew?: string, wsMessageUpdated?: string, wsSettingsUpdated?: string, wsUserUpdated?: string, wsCustomerUpdated?: string, wsChatCreated?: string, wsUserLeftChat?: string, wsChannelUpdated?: string, wsDialogOpened?: string, messageScopePrivate?: string, wsUserOnlineUpdated?: string, wsChatUnreadUpdated?: string, wsChatUpdated?: string}}
|
||||||
|
*/
|
||||||
|
static types() {
|
||||||
|
return consts;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
212
lib/consts.js
Normal file
212
lib/consts.js
Normal file
@ -0,0 +1,212 @@
|
|||||||
|
/**
|
||||||
|
* New message websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsMessageNew
|
||||||
|
*/
|
||||||
|
export const wsMessageNew = 'message_new';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Updating message websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsMessageUpdated
|
||||||
|
*/
|
||||||
|
export const wsMessageUpdated = 'message_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Websocket event delete message
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsMessageDeleted
|
||||||
|
*/
|
||||||
|
export const wsMessageDeleted = 'message_deleted';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dialogue opening websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsDialogOpened
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
export const wsDialogOpened = 'dialog_opened';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dialogue closing websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsDialogClosed
|
||||||
|
*/
|
||||||
|
export const wsDialogClosed = 'dialog_closed';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dialogue appointment websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsDialogAssign
|
||||||
|
*/
|
||||||
|
export const wsDialogAssign = 'dialog_assign';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Chat creating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsChatCreated
|
||||||
|
*/
|
||||||
|
export const wsChatCreated = 'chat_created';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Chat updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsChatUpdated
|
||||||
|
*/
|
||||||
|
export const wsChatUpdated = 'chat_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Unread chat updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsChatUnreadUpdated
|
||||||
|
*/
|
||||||
|
export const wsChatUnreadUpdated = 'chat_unread_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User online status updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsUserOnlineUpdated
|
||||||
|
*/
|
||||||
|
export const wsUserOnlineUpdated = 'user_online_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User joined chat websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsUserJoinedChat
|
||||||
|
*/
|
||||||
|
export const wsUserJoinedChat = 'user_joined_chat';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User left chat websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsUserLeftChat
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
export const wsUserLeftChat = 'user_left_chat';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsUserUpdated
|
||||||
|
*/
|
||||||
|
export const wsUserUpdated = 'user_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Customer updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsCustomerUpdated
|
||||||
|
*/
|
||||||
|
export const wsCustomerUpdated = 'customer_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Bot updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsBotUpdated
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
export const wsBotUpdated = 'bot_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Channel updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsChannelUpdated
|
||||||
|
*/
|
||||||
|
export const wsChannelUpdated = 'channel_updated';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Settings updating websocket event
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().wsSettingsUpdated
|
||||||
|
*/
|
||||||
|
export const wsSettingsUpdated = 'settings_updated';
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Public message scope
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().messageScopePublic
|
||||||
|
*/
|
||||||
|
export const messageScopePublic = 'public';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Public message scope
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().messageScopePrivate
|
||||||
|
*/
|
||||||
|
export const messageScopePrivate = 'private';
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Text message type
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().msgTypeText
|
||||||
|
*/
|
||||||
|
export const msgTypeText = 'text';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* System message type
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().msgTypeSystem
|
||||||
|
*/
|
||||||
|
export const msgTypeSystem = 'system';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Command message type
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().msgTypeCommand
|
||||||
|
*/
|
||||||
|
export const msgTypeCommand = 'command';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Order message type
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().msgTypeOrder
|
||||||
|
*/
|
||||||
|
export const msgTypeOrder = 'order';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Product message type
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().msgTypeProduct
|
||||||
|
*/
|
||||||
|
export const msgTypeProduct = 'product';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* File message type
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().msgTypeFile
|
||||||
|
*/
|
||||||
|
export const msgTypeFile = 'file';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Image message type
|
||||||
|
* @constant
|
||||||
|
* @type {string}
|
||||||
|
* @example RetailcrmBotApiClient.types().msgTypeImage
|
||||||
|
*/
|
||||||
|
export const msgTypeImage = 'image';
|
@ -1,36 +1,17 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
/**
|
/** @class Client */
|
||||||
* @classdesc Bot API v1 methods
|
|
||||||
* @namespace ClientV1
|
|
||||||
* @readonly
|
|
||||||
*/
|
|
||||||
export default class Client {
|
export default class Client {
|
||||||
/**
|
|
||||||
* @param {Request} request
|
|
||||||
* @constructor
|
|
||||||
*/
|
|
||||||
constructor(request) {
|
constructor(request) {
|
||||||
/**
|
|
||||||
* @prop API version
|
|
||||||
* @type {string}
|
|
||||||
* @private
|
|
||||||
*/
|
|
||||||
this._version = 'v1';
|
this._version = 'v1';
|
||||||
|
|
||||||
/**
|
|
||||||
* @prop Request object
|
|
||||||
* @type {Request}
|
|
||||||
* @private
|
|
||||||
*/
|
|
||||||
this._request = request;
|
this._request = request;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get bots
|
* Get bots
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for bots
|
||||||
* @since 1.0.0
|
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getBots(params = {}) {
|
getBots(params = {}) {
|
||||||
return this._request.get(this._version + '/bots', params);
|
return this._request.get(this._version + '/bots', params);
|
||||||
@ -38,8 +19,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get channels
|
* Get channels
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for channels
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getChannels(params = {}) {
|
getChannels(params = {}) {
|
||||||
return this._request.get(this._version + '/channels', params);
|
return this._request.get(this._version + '/channels', params);
|
||||||
@ -47,8 +29,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get chats
|
* Get chats
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for chats
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getChats(params = {}) {
|
getChats(params = {}) {
|
||||||
return this._request.get(this._version + '/chats', params);
|
return this._request.get(this._version + '/chats', params);
|
||||||
@ -56,8 +39,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get customers
|
* Get customers
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for customers
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getCustomers(params = {}) {
|
getCustomers(params = {}) {
|
||||||
return this._request.get(this._version + '/customers', params);
|
return this._request.get(this._version + '/customers', params);
|
||||||
@ -65,8 +49,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get dialogs
|
* Get dialogs
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for dialogs
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getDialogs(params = {}) {
|
getDialogs(params = {}) {
|
||||||
return this._request.get(this._version + '/dialogs', params);
|
return this._request.get(this._version + '/dialogs', params);
|
||||||
@ -74,8 +59,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get members
|
* Get members
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for members
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getMembers(params = {}) {
|
getMembers(params = {}) {
|
||||||
return this._request.get(this._version + '/members', params);
|
return this._request.get(this._version + '/members', params);
|
||||||
@ -83,10 +69,11 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Assign dialog
|
* Assign dialog
|
||||||
* @param {Number} dialog_id - Dialog identificator
|
* @param {Number} dialog_id - Dialog id
|
||||||
* @param {Object} dialog - Dialog object
|
* @param {Object} dialog - Dialog object
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
assignDialog(dialog_id, dialog) {
|
assignDialog(dialog_id, dialog) {
|
||||||
if (!dialog_id) {
|
if (!dialog_id) {
|
||||||
@ -98,9 +85,10 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Close dialog
|
* Close dialog
|
||||||
* @param {Number} dialog_id
|
* @param {Number} dialog_id - Dialog id
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
closeDialog(dialog_id) {
|
closeDialog(dialog_id) {
|
||||||
if (!dialog_id) {
|
if (!dialog_id) {
|
||||||
@ -112,17 +100,19 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Send message
|
* Send message
|
||||||
* @param {Object} data
|
* @param {Object} message - Message object
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
sendMessage(data) {
|
sendMessage(message) {
|
||||||
return this._request.post(this._version + '/messages', data);
|
return this._request.post(this._version + '/messages', message);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get messages
|
* Get messages
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for messages
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getMessages(params = {}) {
|
getMessages(params = {}) {
|
||||||
return this._request.get(this._version + '/messages', params);
|
return this._request.get(this._version + '/messages', params);
|
||||||
@ -130,9 +120,10 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete message
|
* Delete message
|
||||||
* @param {Number} message_id
|
* @param {Number} message_id - Message id
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
deleteMessage(message_id) {
|
deleteMessage(message_id) {
|
||||||
if (!message_id) {
|
if (!message_id) {
|
||||||
@ -144,10 +135,11 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Edit message
|
* Edit message
|
||||||
* @param {Number} message_id
|
* @param {Number} message_id - Message id
|
||||||
* @param {Object} message
|
* @param {Object} message - Message object
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
editMessage(message_id, message) {
|
editMessage(message_id, message) {
|
||||||
if (!message_id) {
|
if (!message_id) {
|
||||||
@ -159,8 +151,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get bot commands
|
* Get bot commands
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for commands
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getCommands(params = {}) {
|
getCommands(params = {}) {
|
||||||
return this._request.get(this._version + '/my/commands', params);
|
return this._request.get(this._version + '/my/commands', params);
|
||||||
@ -168,24 +161,26 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Edit bot command
|
* Edit bot command
|
||||||
* @param {string} command_name
|
* @param {string} command_name - Command name
|
||||||
* @param {Object} data
|
* @param {Object} command - Command object
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
editCommand(command_name, data) {
|
editCommand(command_name, command) {
|
||||||
if (!command_name) {
|
if (!command_name) {
|
||||||
throw new Error('Parameter `command_name` is required');
|
throw new Error('Parameter `command_name` is required');
|
||||||
}
|
}
|
||||||
|
|
||||||
return this._request.put(this._version + '/my/commands/' + command_name, data);
|
return this._request.put(this._version + '/my/commands/' + command_name, command);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete bot command
|
* Delete bot command
|
||||||
* @param {string} command_name
|
* @param {string} command_name - Command name
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
deleteCommand(command_name) {
|
deleteCommand(command_name) {
|
||||||
if (!command_name) {
|
if (!command_name) {
|
||||||
@ -197,8 +192,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Bot information update
|
* Bot information update
|
||||||
* @param {Object} data
|
* @param {Object} data - Bot data
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
info(data) {
|
info(data) {
|
||||||
return this._request.patch(this._version + '/my/info', data);
|
return this._request.patch(this._version + '/my/info', data);
|
||||||
@ -206,8 +202,9 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get users
|
* Get users
|
||||||
* @param {Object} params
|
* @param {Object} params - Filter's object for users
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getUsers(params = {}) {
|
getUsers(params = {}) {
|
||||||
return this._request.get(this._version + '/users', params);
|
return this._request.get(this._version + '/users', params);
|
||||||
@ -215,9 +212,10 @@ export default class Client {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get websocket url
|
* Get websocket url
|
||||||
* @param {array<string>} events
|
* @param {array<string>} events - Array of strings with websocket events
|
||||||
* @returns {Map}
|
* @returns {Map}
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
|
* @memberOf Client
|
||||||
*/
|
*/
|
||||||
getWebsocketData(events) {
|
getWebsocketData(events) {
|
||||||
if (!events) {
|
if (!events) {
|
||||||
|
@ -9,8 +9,9 @@
|
|||||||
],
|
],
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
"doc": "jsdoc lib/v1/client.js lib/types.js -R README.md",
|
||||||
"build": "./node_modules/.bin/rollup -c",
|
"build": "./node_modules/.bin/rollup -c",
|
||||||
"test": "./node_modules/.bin/_mocha --compilers js:@babel/register ./tests/."
|
"test": "./node_modules/.bin/_mocha --require @babel/register ./tests/."
|
||||||
},
|
},
|
||||||
"author": "retailCRM",
|
"author": "retailCRM",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
import babel from 'rollup-plugin-babel';
|
import babel from 'rollup-plugin-babel';
|
||||||
// import builtins from 'rollup-plugin-node-builtins';
|
|
||||||
|
|
||||||
let pluginOptions = [
|
let pluginOptions = [
|
||||||
// builtins(),
|
|
||||||
babel({
|
babel({
|
||||||
exclude: 'node_modules/**',
|
exclude: 'node_modules/**',
|
||||||
}),
|
}),
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
import chai from 'chai'
|
import chai from 'chai'
|
||||||
import RetailcrmBotApiClient from '../dist/index'
|
import MgBotApiClient from '../index'
|
||||||
|
|
||||||
describe('#Constructor', function () {
|
describe('#Constructor', function () {
|
||||||
it('Empty url', function () {
|
it('Empty url', function () {
|
||||||
chai.expect(function() {
|
chai.expect(function() {
|
||||||
new RetailcrmBotApiClient({token: 'test_token'});
|
new MgBotApiClient({token: 'test_token'});
|
||||||
}).to.throw('Url is required');
|
}).to.throw('Url is required');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Incorrect url', function () {
|
it('Incorrect url', function () {
|
||||||
chai.expect(function() {
|
chai.expect(function() {
|
||||||
new RetailcrmBotApiClient({
|
new MgBotApiClient({
|
||||||
host: 'http://api.example.com',
|
host: 'http://api.example.com',
|
||||||
token: 'test_token'
|
token: 'test_token'
|
||||||
});
|
});
|
||||||
@ -19,7 +19,7 @@ describe('#Constructor', function () {
|
|||||||
|
|
||||||
it('Empty token', function () {
|
it('Empty token', function () {
|
||||||
chai.expect(function() {
|
chai.expect(function() {
|
||||||
new RetailcrmBotApiClient({host: 'https://api.example.com'});
|
new MgBotApiClient({host: 'https://api.example.com'});
|
||||||
}).to.throw('Token is required');
|
}).to.throw('Token is required');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
import nock from 'nock'
|
import nock from 'nock'
|
||||||
import chai from 'chai'
|
import chai from 'chai'
|
||||||
import RetailcrmBotApiClient from '../index'
|
import MgBotApiClient from '../index'
|
||||||
|
|
||||||
describe('#API client v1', function() {
|
describe('#API client v1', function() {
|
||||||
beforeEach(function() {
|
beforeEach(function() {
|
||||||
nock.cleanAll();
|
nock.cleanAll();
|
||||||
});
|
});
|
||||||
|
|
||||||
const retailcrm = new RetailcrmBotApiClient({
|
const api = new MgBotApiClient({
|
||||||
host: 'https://api.example.com',
|
host: 'https://api.example.com',
|
||||||
token: 'test_token'
|
token: 'test_token'
|
||||||
}).client;
|
}).client;
|
||||||
@ -18,7 +18,7 @@ describe('#API client v1', function() {
|
|||||||
isActive: true
|
isActive: true
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getBots().then(function (value) {
|
api.getBots().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -27,7 +27,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty bots list', function () {
|
it('Get empty bots list', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/bots').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/bots').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getBots().then(function (value) {
|
api.getBots().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -38,7 +38,7 @@ describe('#API client v1', function() {
|
|||||||
id: 1
|
id: 1
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getChannels().then(function (value) {
|
api.getChannels().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -47,7 +47,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty channels list', function () {
|
it('Get empty channels list', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/channels').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/channels').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getChannels().then(function (value) {
|
api.getChannels().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -59,7 +59,7 @@ describe('#API client v1', function() {
|
|||||||
id: 1
|
id: 1
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getChats().then(function (value) {
|
api.getChats().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -68,7 +68,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty chats list', function () {
|
it('Get empty chats list', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/chats').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/chats').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getChats().then(function (value) {
|
api.getChats().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -81,7 +81,7 @@ describe('#API client v1', function() {
|
|||||||
id: 1
|
id: 1
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getCustomers().then(function (value) {
|
api.getCustomers().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -90,7 +90,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty customers list', function () {
|
it('Get empty customers list', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/customers').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/customers').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getCustomers().then(function (value) {
|
api.getCustomers().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -102,7 +102,7 @@ describe('#API client v1', function() {
|
|||||||
id: 1
|
id: 1
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getDialogs().then(function (value) {
|
api.getDialogs().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -111,7 +111,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty dialogs list', function () {
|
it('Get empty dialogs list', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/dialogs').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/dialogs').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getDialogs().then(function (value) {
|
api.getDialogs().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -122,7 +122,7 @@ describe('#API client v1', function() {
|
|||||||
id: 1
|
id: 1
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getMembers().then(function (value) {
|
api.getMembers().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -131,7 +131,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty members list', function () {
|
it('Get empty members list', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/members').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/members').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getMembers().then(function (value) {
|
api.getMembers().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -145,7 +145,7 @@ describe('#API client v1', function() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
retailcrm.assignDialog(1, {
|
api.assignDialog(1, {
|
||||||
manager_id: 1
|
manager_id: 1
|
||||||
}).then(function (value) {
|
}).then(function (value) {
|
||||||
chai.expect(value).to.be.an('object');
|
chai.expect(value).to.be.an('object');
|
||||||
@ -153,19 +153,19 @@ describe('#API client v1', function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('Assign dialog incorrect', function () {
|
it('Assign dialog incorrect', function () {
|
||||||
chai.expect(retailcrm.assignDialog.bind(retailcrm)).to.throw('Parameter `dialog_id` is required');
|
chai.expect(api.assignDialog.bind(api)).to.throw('Parameter `dialog_id` is required');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Close dialog', function () {
|
it('Close dialog', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').delete('/dialogs/1/close').reply(200, {});
|
nock('https://api.example.com/api/bot/v1').delete('/dialogs/1/close').reply(200, {});
|
||||||
|
|
||||||
retailcrm.closeDialog(1).then(function (value) {
|
api.closeDialog(1).then(function (value) {
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Close dialog incorrect', function () {
|
it('Close dialog incorrect', function () {
|
||||||
chai.expect(retailcrm.closeDialog.bind(retailcrm)).to.throw('Parameter `dialog_id` is required');
|
chai.expect(api.closeDialog.bind(api)).to.throw('Parameter `dialog_id` is required');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Send message', function () {
|
it('Send message', function () {
|
||||||
@ -178,7 +178,7 @@ describe('#API client v1', function() {
|
|||||||
message_id: 1
|
message_id: 1
|
||||||
});
|
});
|
||||||
|
|
||||||
retailcrm.sendMessage({
|
api.sendMessage({
|
||||||
chat_id: 1,
|
chat_id: 1,
|
||||||
scope: 'public',
|
scope: 'public',
|
||||||
type: 'text',
|
type: 'text',
|
||||||
@ -190,7 +190,7 @@ describe('#API client v1', function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('Send message incorrect', function () {
|
it('Send message incorrect', function () {
|
||||||
chai.expect(retailcrm.sendMessage.bind(retailcrm)).to.throw('Body is not be empty');
|
chai.expect(api.sendMessage.bind(api)).to.throw('Body is not be empty');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Get messages', function() {
|
it('Get messages', function() {
|
||||||
@ -202,7 +202,7 @@ describe('#API client v1', function() {
|
|||||||
}
|
}
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getMessages().then(function (value) {
|
api.getMessages().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -211,7 +211,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty messages', function () {
|
it('Get empty messages', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/messages').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/messages').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getMessages().then(function (value) {
|
api.getMessages().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -220,13 +220,13 @@ describe('#API client v1', function() {
|
|||||||
it('Delete message', function () {
|
it('Delete message', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').delete('/messages/1').reply(200, {});
|
nock('https://api.example.com/api/bot/v1').delete('/messages/1').reply(200, {});
|
||||||
|
|
||||||
retailcrm.deleteMessage(1).then(function (value) {
|
api.deleteMessage(1).then(function (value) {
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Delete message incorrect', function () {
|
it('Delete message incorrect', function () {
|
||||||
chai.expect(retailcrm.deleteMessage.bind(retailcrm)).to.throw('Parameter `message_id` is required');
|
chai.expect(api.deleteMessage.bind(api)).to.throw('Parameter `message_id` is required');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Edit message', function () {
|
it('Edit message', function () {
|
||||||
@ -234,7 +234,7 @@ describe('#API client v1', function() {
|
|||||||
content: 'tests message'
|
content: 'tests message'
|
||||||
}).reply(200, {});
|
}).reply(200, {});
|
||||||
|
|
||||||
retailcrm.editMessage(1, {
|
api.editMessage(1, {
|
||||||
content: 'tests message'
|
content: 'tests message'
|
||||||
}).then(function (value) {
|
}).then(function (value) {
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
@ -242,7 +242,7 @@ describe('#API client v1', function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('Edit message incorrect', function () {
|
it('Edit message incorrect', function () {
|
||||||
chai.expect(retailcrm.editMessage.bind(retailcrm)).to.throw('Parameter `message_id` is required');
|
chai.expect(api.editMessage.bind(api)).to.throw('Parameter `message_id` is required');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Get commands', function () {
|
it('Get commands', function () {
|
||||||
@ -251,7 +251,7 @@ describe('#API client v1', function() {
|
|||||||
name: 'Command name'
|
name: 'Command name'
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getCommands().then(function (value) {
|
api.getCommands().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -260,7 +260,7 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty commands', function () {
|
it('Get empty commands', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/my/commands').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/my/commands').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getCommands().then(function (value) {
|
api.getCommands().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
@ -272,7 +272,7 @@ describe('#API client v1', function() {
|
|||||||
name: 'name'
|
name: 'name'
|
||||||
}).reply(200, {});
|
}).reply(200, {});
|
||||||
|
|
||||||
retailcrm.editCommand('command', {
|
api.editCommand('command', {
|
||||||
description: 'Desc',
|
description: 'Desc',
|
||||||
name: 'name'
|
name: 'name'
|
||||||
}).then(function (value) {
|
}).then(function (value) {
|
||||||
@ -281,20 +281,20 @@ describe('#API client v1', function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('Edit command incorrect', function () {
|
it('Edit command incorrect', function () {
|
||||||
chai.expect(retailcrm.editCommand.bind(retailcrm, 'command')).to.throw('Body is not be empty');
|
chai.expect(api.editCommand.bind(api, 'command')).to.throw('Body is not be empty');
|
||||||
chai.expect(retailcrm.editCommand.bind(retailcrm)).to.throw('Parameter `command_name` is required');
|
chai.expect(api.editCommand.bind(api)).to.throw('Parameter `command_name` is required');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Delete command', function () {
|
it('Delete command', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').delete('/my/commands/command').reply(200, {});
|
nock('https://api.example.com/api/bot/v1').delete('/my/commands/command').reply(200, {});
|
||||||
|
|
||||||
retailcrm.deleteCommand('command').then(function (value) {
|
api.deleteCommand('command').then(function (value) {
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Delete command incorrect', function () {
|
it('Delete command incorrect', function () {
|
||||||
chai.expect(retailcrm.deleteCommand.bind(retailcrm)).to.throw('Parameter `command_name` is required');
|
chai.expect(api.deleteCommand.bind(api)).to.throw('Parameter `command_name` is required');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Update bot info', function () {
|
it('Update bot info', function () {
|
||||||
@ -303,7 +303,7 @@ describe('#API client v1', function() {
|
|||||||
name: 'Bot'
|
name: 'Bot'
|
||||||
}).reply(200, {});
|
}).reply(200, {});
|
||||||
|
|
||||||
retailcrm.info({
|
api.info({
|
||||||
avatar_url: 'http://tests.ru/avatar.png',
|
avatar_url: 'http://tests.ru/avatar.png',
|
||||||
name: 'Bot'
|
name: 'Bot'
|
||||||
}).then(function (value) {
|
}).then(function (value) {
|
||||||
@ -312,7 +312,7 @@ describe('#API client v1', function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('Update bot info incorrect', function () {
|
it('Update bot info incorrect', function () {
|
||||||
chai.expect(retailcrm.info.bind(retailcrm)).to.throw('Body is not be empty');
|
chai.expect(api.info.bind(api)).to.throw('Body is not be empty');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Get users', function () {
|
it('Get users', function () {
|
||||||
@ -321,7 +321,7 @@ describe('#API client v1', function() {
|
|||||||
name: 'Username'
|
name: 'Username'
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
retailcrm.getUsers().then(function (value) {
|
api.getUsers().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.not.empty;
|
chai.expect(value).to.be.not.empty;
|
||||||
});
|
});
|
||||||
@ -330,14 +330,14 @@ describe('#API client v1', function() {
|
|||||||
it('Get empty users', function () {
|
it('Get empty users', function () {
|
||||||
nock('https://api.example.com/api/bot/v1').get('/users').reply(200, []);
|
nock('https://api.example.com/api/bot/v1').get('/users').reply(200, []);
|
||||||
|
|
||||||
retailcrm.getUsers().then(function (value) {
|
api.getUsers().then(function (value) {
|
||||||
chai.expect(value).to.be.an('array');
|
chai.expect(value).to.be.an('array');
|
||||||
chai.expect(value).to.be.empty;
|
chai.expect(value).to.be.empty;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Get websocket data', function () {
|
it('Get websocket data', function () {
|
||||||
const wsData = retailcrm.getWebsocketData(['message_new', 'message_updated']);
|
const wsData = api.getWebsocketData([MgBotApiClient.types().wsMessageNew, MgBotApiClient.types().wsMessageUpdated]);
|
||||||
const expectedUrl = 'wss://api.example.com/api/bot/v1/ws?events=message_new,message_updated';
|
const expectedUrl = 'wss://api.example.com/api/bot/v1/ws?events=message_new,message_updated';
|
||||||
const expectedHeaders = {'X-Bot-Token': 'test_token'};
|
const expectedHeaders = {'X-Bot-Token': 'test_token'};
|
||||||
|
|
||||||
@ -346,6 +346,6 @@ describe('#API client v1', function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('Get websocket url incorrect', function () {
|
it('Get websocket url incorrect', function () {
|
||||||
chai.expect(retailcrm.getWebsocketData.bind(retailcrm)).to.throw('Events is required');
|
chai.expect(api.getWebsocketData.bind(api)).to.throw('Events is required');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user