Built motion from commit (unavailable).|2.5.11
[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 _0x8509=['getUserByInterface','then','internal','request','CreateMemberReport','getUserByName','catch','error','format','[%s][members][writeDB]','uniqueid','some','startsWith','devicestatechange','debug','[%s][members][devicestatechange]','device','[%s][members][devicestatechange]\x20state:%s\x20interface:%s','state','INUSE','BUSY','voice','now','agent','NOT_INUSE','isNil','exitAt','diffTime','enterAt','[%s][members][agentcomplete]','[%s][members][agentcomplete]\x20interface:%s\x20queue:%s','queue','assign','cdr','data1','data3','destination','[%s][members][cdr]\x20type:%s\x20source:%s\x20destination:%s','destinationchannel','split','[%s][members][cdr]','lodash','util','./utils','Queue:','info','interface','channel','data2','membername','type'];(function(_0x211867,_0x362d2d){var _0xbc47c0=function(_0x19c01d){while(--_0x19c01d){_0x211867['push'](_0x211867['shift']());}};_0xbc47c0(++_0x362d2d);}(_0x8509,0x1c1));var _0x9850=function(_0x2a0c21,_0x51ad5e){_0x2a0c21=_0x2a0c21-0x0;var _0x28f2ff=_0x8509[_0x2a0c21];return _0x28f2ff;};'use strict';var _=require(_0x9850('0x0'));var util=require(_0x9850('0x1'));var utils=require(_0x9850('0x2'));var members={};var exclude=['Local/_attended@transfer',_0x9850('0x3')];function writeDB(_0x35e04e){utils[_0x9850('0x4')](util['format']('[%s][members][writeDB]\x20interface:%s\x20channel:%s\x20data2:%s\x20agent:%s\x20type:%s',_0x35e04e['uniqueid'],_0x35e04e[_0x9850('0x5')],_0x35e04e[_0x9850('0x6')],_0x35e04e[_0x9850('0x7')],_0x35e04e[_0x9850('0x8')],_0x35e04e[_0x9850('0x9')]));if(_0x35e04e[_0x9850('0x5')]){utils[_0x9850('0xa')](_0x35e04e[_0x9850('0x5')])[_0x9850('0xb')](function(_0x4a0c4a){if(_0x4a0c4a){_0x35e04e[_0x9850('0x8')]=_0x4a0c4a['name'];_0x35e04e['internal']=_0x4a0c4a[_0x9850('0xc')];utils[_0x9850('0xd')](_0x9850('0xe'),_0x35e04e);}else{utils[_0x9850('0xf')](_0x35e04e['interface']['split']('/')[0x1])['then'](function(_0x30a40f){if(_0x30a40f){_0x35e04e[_0x9850('0x8')]=_0x30a40f['name'];_0x35e04e[_0x9850('0xc')]=_0x30a40f['internal'];utils[_0x9850('0xd')](_0x9850('0xe'),_0x35e04e);}});}})[_0x9850('0x10')](function(_0x2478b7){utils[_0x9850('0x11')](util[_0x9850('0x12')](_0x9850('0x13'),_0x35e04e[_0x9850('0x14')]),_0x2478b7);});}delete members[_0x35e04e[_0x9850('0x5')]];}function startsWith(_0x3941c0,_0x3d4933){return _[_0x9850('0x15')](_0x3941c0,function(_0x1e0fc9){return _[_0x9850('0x16')](_0x3d4933,_0x1e0fc9);});}exports[_0x9850('0x17')]=function(_0x65807a){try{utils[_0x9850('0x18')](util[_0x9850('0x12')](_0x9850('0x19'),members[_0x65807a[_0x9850('0x1a')]]?members[_0x65807a[_0x9850('0x1a')]][_0x9850('0x14')]:_0x65807a['device']),_0x65807a);utils[_0x9850('0x4')](util[_0x9850('0x12')](_0x9850('0x1b'),members[_0x65807a[_0x9850('0x1a')]]?members[_0x65807a[_0x9850('0x1a')]][_0x9850('0x14')]:_0x65807a[_0x9850('0x1a')],_0x65807a['state'],_0x65807a['device']));switch(_0x65807a[_0x9850('0x1c')]){case _0x9850('0x1d'):case _0x9850('0x1e'):if(!startsWith(exclude,_0x65807a[_0x9850('0x1a')])){members[_0x65807a[_0x9850('0x1a')]]={'channel':_0x9850('0x1f'),'interface':_0x65807a[_0x9850('0x1a')],'type':'TALKING','enterAt':utils[_0x9850('0x20')](),'role':_0x9850('0x21')};}break;case _0x9850('0x22'):if(!_[_0x9850('0x23')](members[_0x65807a[_0x9850('0x1a')]])){members[_0x65807a[_0x9850('0x1a')]][_0x9850('0x24')]=utils['now']();members[_0x65807a[_0x9850('0x1a')]]['duration']=utils[_0x9850('0x25')](members[_0x65807a[_0x9850('0x1a')]]['exitAt'],members[_0x65807a[_0x9850('0x1a')]][_0x9850('0x26')]);if(members[_0x65807a[_0x9850('0x1a')]][_0x9850('0x14')]){writeDB(members[_0x65807a[_0x9850('0x1a')]]);}}break;default:break;}}catch(_0x50c71a){utils[_0x9850('0x11')](util[_0x9850('0x12')](_0x9850('0x19'),members[_0x65807a[_0x9850('0x1a')]]?members[_0x65807a[_0x9850('0x1a')]][_0x9850('0x14')]:_0x65807a[_0x9850('0x1a')]),_0x50c71a);}};exports['agentcomplete']=function(_0x4060f5){try{if(!_[_0x9850('0x23')](members[_0x4060f5[_0x9850('0x5')]])){utils[_0x9850('0x18')](util[_0x9850('0x12')](_0x9850('0x27'),_0x4060f5[_0x9850('0x14')]),_0x4060f5);utils[_0x9850('0x4')](util['format'](_0x9850('0x28'),_0x4060f5[_0x9850('0x14')],_0x4060f5['interface'],_0x4060f5[_0x9850('0x29')]));members[_0x4060f5[_0x9850('0x5')]]=_[_0x9850('0x2a')](members[_0x4060f5[_0x9850('0x5')]],{'data4':_0x4060f5[_0x9850('0x29')],'uniqueid':_0x4060f5[_0x9850('0x14')]});}}catch(_0x1e7bd3){utils[_0x9850('0x11')](util['format'](_0x9850('0x27'),_0x4060f5[_0x9850('0x14')]),_0x1e7bd3);}};exports[_0x9850('0x2b')]=function(_0x55b45e){try{utils[_0x9850('0x18')](util[_0x9850('0x12')]('[%s][members][cdr]',_0x55b45e['uniqueid']),_0x55b45e);if(_0x55b45e[_0x9850('0x6')]){var _0x24b8c3=_0x55b45e[_0x9850('0x6')]['split']('-')[0x0];if(!_[_0x9850('0x23')](members[_0x24b8c3])){members[_0x24b8c3]=_[_0x9850('0x2a')](members[_0x24b8c3],{'data1':members[_0x24b8c3][_0x9850('0x2c')]||_0x55b45e[_0x9850('0x9')],'data2':members[_0x24b8c3][_0x9850('0x7')]||_0x55b45e['source'],'data3':members[_0x24b8c3][_0x9850('0x2d')]||_0x55b45e[_0x9850('0x2e')],'uniqueid':members[_0x24b8c3][_0x9850('0x14')]||_0x55b45e[_0x9850('0x14')]});utils[_0x9850('0x4')](util[_0x9850('0x12')](_0x9850('0x2f'),_0x55b45e[_0x9850('0x14')],members[_0x24b8c3][_0x9850('0x2c')],members[_0x24b8c3][_0x9850('0x7')],members[_0x24b8c3]['data3']));if(members[_0x24b8c3][_0x9850('0x24')]){writeDB(members[_0x24b8c3]);}}}if(_0x55b45e[_0x9850('0x30')]){var _0x354f79=_0x55b45e[_0x9850('0x30')][_0x9850('0x31')]('-')[0x0];if(!_['isNil'](members[_0x354f79])){members[_0x354f79]=_['assign'](members[_0x354f79],{'data1':members[_0x354f79][_0x9850('0x2c')]||_0x55b45e['type'],'data2':members[_0x354f79][_0x9850('0x7')]||_0x55b45e['source'],'data3':members[_0x354f79][_0x9850('0x2d')]||_0x55b45e[_0x9850('0x2e')],'uniqueid':members[_0x354f79][_0x9850('0x14')]||_0x55b45e[_0x9850('0x14')]});utils[_0x9850('0x4')](util['format']('[%s][members][cdr]\x20type:%s\x20source:%s\x20destination:%s',_0x55b45e[_0x9850('0x14')],members[_0x354f79][_0x9850('0x2c')],members[_0x354f79]['data2'],members[_0x354f79][_0x9850('0x2d')]));if(members[_0x354f79][_0x9850('0x24')]){writeDB(members[_0x354f79]);}}}}catch(_0x3cfbc5){utils[_0x9850('0x11')](util[_0x9850('0x12')](_0x9850('0x32'),_0x55b45e[_0x9850('0x14')]),_0x3cfbc5);}};