Built motion from commit (unavailable).|2.3.10
[motion2.git] / server / services / xdr / members.controller.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 _0xc6d1=['CreateMemberReport','split','name','catch','devicestatechange','state','BUSY','device','voice','TALKING','now','agent','NOT_INUSE','isNil','exitAt','duration','diffTime','enterAt','agentcomplete','assign','queue','cdr','channel','source','data3','destination','destinationchannel','lodash','util','./utils','Queue:','MEMBER|%s|%s|%s|%s|%s|%s','uniqueid','interface','data2','membername','type','getUserByInterface','then','internal','request'];(function(_0x2bec94,_0x2e2a2e){var _0x3e0320=function(_0x4c43bf){while(--_0x4c43bf){_0x2bec94['push'](_0x2bec94['shift']());}};_0x3e0320(++_0x2e2a2e);}(_0xc6d1,0xbf));var _0x1c6d=function(_0x580576,_0x2f107d){_0x580576=_0x580576-0x0;var _0x3f55a0=_0xc6d1[_0x580576];return _0x3f55a0;};'use strict';var _=require(_0x1c6d('0x0'));var util=require(_0x1c6d('0x1'));var utils=require(_0x1c6d('0x2'));var members={};var exclude=['Local/_attended@transfer',_0x1c6d('0x3')];function writeDB(_0x360116){utils['info'](util['format'](_0x1c6d('0x4'),_0x360116[_0x1c6d('0x5')],_0x360116[_0x1c6d('0x6')],_0x360116['channel'],_0x360116[_0x1c6d('0x7')],_0x360116[_0x1c6d('0x8')],_0x360116[_0x1c6d('0x9')]));if(_0x360116[_0x1c6d('0x6')]){utils[_0x1c6d('0xa')](_0x360116[_0x1c6d('0x6')])[_0x1c6d('0xb')](function(_0x1681a4){if(_0x1681a4){_0x360116['membername']=_0x1681a4['name'];_0x360116[_0x1c6d('0xc')]=_0x1681a4[_0x1c6d('0xc')];utils[_0x1c6d('0xd')](_0x1c6d('0xe'),_0x360116);}else{utils['getUserByName'](_0x360116[_0x1c6d('0x6')][_0x1c6d('0xf')]('/')[0x1])[_0x1c6d('0xb')](function(_0x5a6cf6){if(_0x5a6cf6){_0x360116[_0x1c6d('0x8')]=_0x5a6cf6[_0x1c6d('0x10')];_0x360116[_0x1c6d('0xc')]=_0x5a6cf6[_0x1c6d('0xc')];utils[_0x1c6d('0xd')](_0x1c6d('0xe'),_0x360116);}});}})[_0x1c6d('0x11')](function(_0x563ade){utils['error'](_0x563ade);});}delete members[_0x360116[_0x1c6d('0x6')]];}function startsWith(_0x127580,_0x33a203){return _['some'](_0x127580,function(_0x2fdc1d){return _['startsWith'](_0x33a203,_0x2fdc1d);});}exports[_0x1c6d('0x12')]=function(_0x491e68){switch(_0x491e68[_0x1c6d('0x13')]){case'INUSE':case _0x1c6d('0x14'):if(!startsWith(exclude,_0x491e68[_0x1c6d('0x15')])){members[_0x491e68['device']]={'channel':_0x1c6d('0x16'),'interface':_0x491e68[_0x1c6d('0x15')],'type':_0x1c6d('0x17'),'enterAt':utils[_0x1c6d('0x18')](),'role':_0x1c6d('0x19')};}break;case _0x1c6d('0x1a'):if(!_[_0x1c6d('0x1b')](members[_0x491e68[_0x1c6d('0x15')]])){members[_0x491e68[_0x1c6d('0x15')]][_0x1c6d('0x1c')]=utils[_0x1c6d('0x18')]();members[_0x491e68[_0x1c6d('0x15')]][_0x1c6d('0x1d')]=utils[_0x1c6d('0x1e')](members[_0x491e68[_0x1c6d('0x15')]][_0x1c6d('0x1c')],members[_0x491e68[_0x1c6d('0x15')]][_0x1c6d('0x1f')]);if(members[_0x491e68[_0x1c6d('0x15')]][_0x1c6d('0x5')]){writeDB(members[_0x491e68[_0x1c6d('0x15')]]);}}default:break;}};exports[_0x1c6d('0x20')]=function(_0x173e2a){if(!_[_0x1c6d('0x1b')](members[_0x173e2a[_0x1c6d('0x6')]])){members[_0x173e2a[_0x1c6d('0x6')]]=_[_0x1c6d('0x21')](members[_0x173e2a['interface']],{'data4':_0x173e2a[_0x1c6d('0x22')],'uniqueid':_0x173e2a[_0x1c6d('0x5')]});}};exports[_0x1c6d('0x23')]=function(_0x1e14c1){if(_0x1e14c1[_0x1c6d('0x24')]){var _0x1ef23a=_0x1e14c1[_0x1c6d('0x24')][_0x1c6d('0xf')]('-')[0x0];if(!_['isNil'](members[_0x1ef23a])){members[_0x1ef23a]=_[_0x1c6d('0x21')](members[_0x1ef23a],{'data1':members[_0x1ef23a]['data1']||_0x1e14c1['type'],'data2':members[_0x1ef23a]['data2']||_0x1e14c1[_0x1c6d('0x25')],'data3':members[_0x1ef23a][_0x1c6d('0x26')]||_0x1e14c1[_0x1c6d('0x27')],'uniqueid':members[_0x1ef23a]['uniqueid']||_0x1e14c1[_0x1c6d('0x5')]});if(members[_0x1ef23a][_0x1c6d('0x1c')]){writeDB(members[_0x1ef23a]);}}}if(_0x1e14c1['destinationchannel']){var _0x283509=_0x1e14c1[_0x1c6d('0x28')][_0x1c6d('0xf')]('-')[0x0];if(!_[_0x1c6d('0x1b')](members[_0x283509])){members[_0x283509]=_[_0x1c6d('0x21')](members[_0x283509],{'data1':members[_0x283509]['data1']||_0x1e14c1['type'],'data2':members[_0x283509]['data2']||_0x1e14c1[_0x1c6d('0x25')],'data3':members[_0x283509]['data3']||_0x1e14c1[_0x1c6d('0x27')],'uniqueid':members[_0x283509][_0x1c6d('0x5')]||_0x1e14c1[_0x1c6d('0x5')]});if(members[_0x283509]['exitAt']){writeDB(members[_0x283509]);}}}};