bda20c455a6e394d3561fb9626733a68d5ff7dc4
[motion2.git] / server / config / utils.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x559f=['openchannel','isValidChannel','toLowerCase','includes','clearBlockUser','isUndefined','blockedAt','updateAttributes','getLicense','count','agent','then','agents','Maximum\x20login\x20has\x20been\x20reached','lodash','../mysqldb','./license/util','voice','mail','chat','fax','sms','whatsapp'];(function(_0x5d6404,_0x56f9d0){var _0x28e7df=function(_0x584796){while(--_0x584796){_0x5d6404['push'](_0x5d6404['shift']());}};_0x28e7df(++_0x56f9d0);}(_0x559f,0x6a));var _0xf559=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x559f[_0x3dd15e];return _0x231fd0;};'use strict';var _=require(_0xf559('0x0'));var BPromise=require('bluebird');var db=require(_0xf559('0x1'))['db'];var util=require(_0xf559('0x2'));var channels=[_0xf559('0x3'),_0xf559('0x4'),_0xf559('0x5'),_0xf559('0x6'),_0xf559('0x7'),_0xf559('0x8'),_0xf559('0x9')];exports['getChannels']=function(){return channels;};exports[_0xf559('0xa')]=function(_0x24ba13){_0x24ba13=_0x24ba13[_0xf559('0xb')]();return _[_0xf559('0xc')](channels,_0x24ba13);};exports[_0xf559('0xd')]=function(_0x34b163,_0x333dad,_0x332593,_0x4fced5){var _0x1d96fc={'loginAttempts':_0x333dad,'blocked':_0x332593};if(!_[_0xf559('0xe')](_0x4fced5)){_0x1d96fc[_0xf559('0xf')]=_0x4fced5;}return _0x34b163[_0xf559('0x10')](_0x1d96fc);};exports[_0xf559('0x11')]=function(_0x515c76){return new BPromise(function(_0x34d2d6,_0x3ddcce){var _0x2753ef=0x0;if(_0x515c76['role']!=='agent'){_0x34d2d6(_0x515c76);}db['User'][_0xf559('0x12')]({'where':{'role':_0xf559('0x13'),'online':!![],'id':{'$ne':_0x515c76['id']}}})[_0xf559('0x14')](function(_0x2a257d){_0x2753ef=_0x2a257d;return util[_0xf559('0x11')]();})[_0xf559('0x14')](function(_0x30ef59){if(_0x30ef59&&_0x30ef59[_0xf559('0x15')]&&_0x2753ef>=_0x30ef59['agents']){throw Error(_0xf559('0x16'));}_0x34d2d6(_0x515c76);})['catch'](function(_0x2701ec){_0x3ddcce(_0x2701ec);});});};