Built motion from commit (unavailable).|2.4.20
[motion2.git] / server / api / voiceChanSpy / voiceChanSpy.model.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 _0x47fd=['User','findAll','agent','then','exports','models','VoiceExtension','destroy','bulkCreate','catch','lodash','util','bluebird','./voiceChanSpy.attributes','from-sip','format','prefix','merge','CDR(type)=%s','chanspy','record','push','MixMonitor','${UNIQUEID}.%s,a','recordingFormat','Authenticate','password','SIP/%s,%s','name','options','join','length','concat','internal'];(function(_0x5a965f,_0x22d15f){var _0x188f8a=function(_0x12e616){while(--_0x12e616){_0x5a965f['push'](_0x5a965f['shift']());}};_0x188f8a(++_0x22d15f);}(_0x47fd,0x13c));var _0xd47f=function(_0x5805d7,_0x3d584a){_0x5805d7=_0x5805d7-0x0;var _0x170fe4=_0x47fd[_0x5805d7];return _0x170fe4;};'use strict';var _=require(_0xd47f('0x0'));var util=require(_0xd47f('0x1'));var BPromise=require(_0xd47f('0x2'));var attributes=require(_0xd47f('0x3'));var getUserApplications=function(_0x3cc8ea,_0x2eabd0,_0x31b0da){var _0x12b064=0x1;var _0x285b39=[];var _0x1dfe62={'context':_0x2eabd0['context']||_0xd47f('0x4'),'exten':util[_0xd47f('0x5')]('%s%s',_0x3cc8ea[_0xd47f('0x6')],_0x31b0da),'type':'system','isApp':![],'ChanSpyId':_0x3cc8ea['id'],'UserId':_0x2eabd0['id']};_0x285b39['push'](_[_0xd47f('0x7')]({'app':'Set','appdata':util['format'](_0xd47f('0x8'),_0xd47f('0x9')),'priority':_0x12b064++},_0x1dfe62));if(_0x3cc8ea[_0xd47f('0xa')]){_0x285b39[_0xd47f('0xb')](_[_0xd47f('0x7')]({'app':_0xd47f('0xc'),'appdata':util['format'](_0xd47f('0xd'),_0x3cc8ea[_0xd47f('0xe')]),'priority':_0x12b064++},_0x1dfe62));}if(_0x3cc8ea['auth']){_0x285b39[_0xd47f('0xb')](_[_0xd47f('0x7')]({'app':_0xd47f('0xf'),'appdata':_0x3cc8ea[_0xd47f('0x10')],'priority':_0x12b064++},_0x1dfe62));}_0x285b39[_0xd47f('0xb')](_[_0xd47f('0x7')]({'app':'ChanSpy','appdata':util[_0xd47f('0x5')](_0xd47f('0x11'),_0x2eabd0[_0xd47f('0x12')],_0x3cc8ea[_0xd47f('0x13')]?_0x3cc8ea[_0xd47f('0x13')][_0xd47f('0x14')](''):''),'priority':_0x12b064++},_0x1dfe62));if(_0x3cc8ea[_0xd47f('0xa')]){_0x285b39[_0xd47f('0xb')](_[_0xd47f('0x7')]({'app':'StopMixMonitor','priority':_0x12b064++},_0x1dfe62));}return _0x285b39;};var getChanSpyApplications=function(_0x4a1a6c,_0x3d593f){var _0x2c4998=[];for(var _0x4d23b5=0x0,_0x2b2cdb=0x1;_0x4d23b5<_0x3d593f[_0xd47f('0x15')];_0x4d23b5++,_0x2b2cdb=0x1){_0x2c4998=_0x2c4998[_0xd47f('0x16')](getUserApplications(_0x4a1a6c,_0x3d593f[_0x4d23b5],_0x3d593f[_0x4d23b5][_0xd47f('0x17')]));if(_0x3d593f[_0x4d23b5][_0xd47f('0x17')]!=_0x3d593f[_0x4d23b5]['name']){_0x2c4998=_0x2c4998[_0xd47f('0x16')](getUserApplications(_0x4a1a6c,_0x3d593f[_0x4d23b5],_0x3d593f[_0x4d23b5][_0xd47f('0x12')]));}}return _0x2c4998;};var getChanSpyPromise=function(_0x1db27f,_0x77e050){return new BPromise(function(_0x146a99,_0xd99e52){return _0x1db27f[_0xd47f('0x18')][_0xd47f('0x19')]({'attributes':['id',_0xd47f('0x12'),_0xd47f('0x17')],'where':{'role':_0xd47f('0x1a'),'chanspy':!![]},'raw':!![]})[_0xd47f('0x1b')](function(_0x3f3576){if(_0x3f3576){return _0x146a99(getChanSpyApplications(_0x77e050,_0x3f3576));}return _0x146a99([]);})['catch'](function(_0x50f3f6){_0xd99e52(_0x50f3f6);});});};module[_0xd47f('0x1c')]=function(_0x58ee0b,_0xd2fe59){var _0x212880=_0x58ee0b[_0xd47f('0x1d')];return _0x58ee0b['define']('VoiceChanSpy',attributes,{'tableName':'voice_chanspy','paranoid':![],'indexes':[],'timestamps':!![],'hooks':{'afterCreate':function(_0x3efb10,_0x36c6be,_0x42873c){return getChanSpyPromise(_0x212880,_0x3efb10)[_0xd47f('0x1b')](function(_0x3f55b0){if(_0x3f55b0&&_0x3f55b0['length']){return _0x212880[_0xd47f('0x1e')]['bulkCreate'](_0x3f55b0);}})['then'](function(){_0x42873c();})['catch'](function(_0x4dc109){_0x42873c(_0x4dc109);});},'afterUpdate':function(_0xc45cf3,_0x37e027,_0x5e2514){return _0x212880['VoiceExtension'][_0xd47f('0x1f')]({'where':{'ChanSpyId':_0xc45cf3['id']}})[_0xd47f('0x1b')](function(){return getChanSpyPromise(_0x212880,_0xc45cf3);})['then'](function(_0x18d261){if(_0x18d261&&_0x18d261[_0xd47f('0x15')]){return _0x212880[_0xd47f('0x1e')][_0xd47f('0x20')](_0x18d261);}})[_0xd47f('0x1b')](function(){_0x5e2514();})[_0xd47f('0x21')](function(_0x4b09a9){_0x5e2514(_0x4b09a9);});},'afterDestroy':function(_0x2382ed,_0x591042,_0x3f82b7){return _0x212880['VoiceExtension'][_0xd47f('0x1f')]({'where':{'ChanSpyId':_0x2382ed['id']}})[_0xd47f('0x1b')](function(){_0x3f82b7();})[_0xd47f('0x21')](function(_0x5e4dfd){_0x3f82b7(_0x5e4dfd);});}}});};