Built motion from commit (unavailable).|2.5.23
[motion2.git] / server / services / ami / trigger / cmContact / index.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 _0x994c=['[CM][%s][%s]\x20Autocreate\x20enabled','isNil','calleridnum','calleridname','Unknown','destcalleridname','<unknown>','createContact','push','[CM][%s][%s]\x20Contact\x20created:%s','[CM][%s][%s]\x20Autocreate\x20disabled','format','user:%s','name','trigger:%s','action','toLowerCase','lodash','bluebird','ioredis','util','../../../../config/environment','../../../../config/logger','trigger','redis','defaults','socket.io-emitter','info','[CM][%s][%s]','stringify','emit','exec','data1','data2','xmd-contactid','ListId','data3','split','$or','map','routeId','destcalleridnum','firstName','lastName','phone','mobile','fax','scheduledAt','updatedAt','resolve','then','getContacts','isEmpty','length','[CM][%s][%s]\x20Contact\x20found:%s','uniqueid','[CM][%s][%s]\x20Multiple\x20contacts\x20found:[%s]','join','data4'];(function(_0x40a045,_0x516f0e){var _0x1a687c=function(_0x48c9fe){while(--_0x48c9fe){_0x40a045['push'](_0x40a045['shift']());}};_0x1a687c(++_0x516f0e);}(_0x994c,0xc2));var _0xc994=function(_0x470805,_0x437de0){_0x470805=_0x470805-0x0;var _0x34cff0=_0x994c[_0x470805];return _0x34cff0;};'use strict';var _=require(_0xc994('0x0'));var BPromise=require(_0xc994('0x1'));var Redis=require(_0xc994('0x2'));var util=require(_0xc994('0x3'));var config=require(_0xc994('0x4'));var logger=require(_0xc994('0x5'))(_0xc994('0x6'));var cmContactRpc=require('../../rpc/cmContact');config[_0xc994('0x7')]=_[_0xc994('0x8')](config[_0xc994('0x7')],{'host':'localhost','port':0x18eb});var io=require(_0xc994('0x9'))(new Redis(config['redis']));function emit(_0x29f16b,_0x5aa40f,_0x3b13a1,_0x2e8f31,_0x54c1c9){logger[_0xc994('0xa')](_0xc994('0xb'),_0x29f16b,_0x5aa40f['id'],_0x3b13a1,_0x2e8f31,JSON[_0xc994('0xc')](_0x54c1c9));io['to'](_0x3b13a1)[_0xc994('0xd')](_0x2e8f31,_0x54c1c9);}exports[_0xc994('0xe')]=function(_0xd83da9,_0x5a795e,_0x539acb,_0x4fb861){var _0x40097e,_0x2038ed;var _0x41a6b5={};var _0x32b3e5=Number(_0x539acb[_0xc994('0xf')]);var _0x3a76b9=_0x539acb[_0xc994('0x10')]?Boolean(Number(_0x539acb['data2'])):![];var _0x29282d;if(_0x4fb861[_0xc994('0x11')]){_0x41a6b5['id']=_0x4fb861[_0xc994('0x11')];}if(!_0x41a6b5['id']){_0x41a6b5[_0xc994('0x12')]=_0x32b3e5;_0x29282d=_0x539acb[_0xc994('0x13')]&&_0x539acb['data3']!=='0'?_0x539acb['data3'][_0xc994('0x14')](','):['phone'];_0x41a6b5[_0xc994('0x15')]=_[_0xc994('0x16')](_0x29282d,function(_0x3510fd){var _0x5caf57={};_0x5caf57[_0x3510fd]=_0x4fb861[_0xc994('0x17')]?_0x4fb861[_0xc994('0x18')]:_0x4fb861['calleridnum'];return _0x5caf57;});}var _0x12c377=['id',_0xc994('0x19'),_0xc994('0x1a'),_0xc994('0x1b'),_0xc994('0x1c'),_0xc994('0x1d'),_0xc994('0x12'),'createdAt',_0xc994('0x1e'),_0xc994('0x1f')];var _0xe87d03=_['union'](_0x12c377,_0x29282d);BPromise[_0xc994('0x20')]()[_0xc994('0x21')](cmContactRpc[_0xc994('0x22')]({'attributes':_0xe87d03,'where':_0x41a6b5}))[_0xc994('0x21')](function(_0x4893e4){_0x2038ed=_0x4893e4;if(!_[_0xc994('0x23')](_0x2038ed)){if(_0x2038ed[_0xc994('0x24')]===0x1){_0x40097e=_0x2038ed[0x0];logger[_0xc994('0xa')](_0xc994('0x25'),_0x4fb861[_0xc994('0x26')],_0x5a795e['id'],_0x40097e['id']);}else{logger[_0xc994('0xa')](_0xc994('0x27'),_0x4fb861[_0xc994('0x26')],_0x5a795e['id'],_[_0xc994('0x16')](_0x2038ed,'id')[_0xc994('0x28')](','));}return;}else{logger[_0xc994('0xa')]('[CM][%s][%s]\x20Contact\x20not\x20found',_0x4fb861[_0xc994('0x26')],_0x5a795e['id']);var _0x587595={'ListId':_0x32b3e5};var _0x5f8848=_0x539acb['data4']&&_0x539acb['data4']!=='0'?_0x539acb[_0xc994('0x29')]:'phone';if(_0x3a76b9){logger[_0xc994('0xa')](_0xc994('0x2a'),_0x4fb861[_0xc994('0x26')],_0x5a795e['id']);_0x587595[_0x5f8848]=_[_0xc994('0x2b')](_0x4fb861['routeId'])?_0x4fb861[_0xc994('0x2c')]:_0x4fb861[_0xc994('0x18')];if(_[_0xc994('0x2b')](_0x4fb861['routeId'])){_0x587595[_0xc994('0x19')]=_0x4fb861['calleridname']&&_0x4fb861[_0xc994('0x2d')]!=='<unknown>'?_0x4fb861[_0xc994('0x2d')]:_0xc994('0x2e');}else{_0x587595['firstName']=_0x4fb861[_0xc994('0x2f')]&&_0x4fb861['destcalleridname']!==_0xc994('0x30')?_0x4fb861[_0xc994('0x2f')]:_0xc994('0x2e');}return BPromise[_0xc994('0x20')]()['then'](cmContactRpc[_0xc994('0x31')](_0x587595))[_0xc994('0x21')](function(_0x24e961){_0x40097e=_0x24e961;_0x2038ed[_0xc994('0x32')](_0x24e961);if(_0x40097e){logger[_0xc994('0xa')](_0xc994('0x33'),_0x4fb861[_0xc994('0x26')],_0x5a795e['id'],_0x40097e['id']);}return;});}else{logger[_0xc994('0xa')](_0xc994('0x34'),_0x4fb861[_0xc994('0x26')],_0x5a795e['id']);_0x587595[_0x5f8848]=_[_0xc994('0x2b')](_0x4fb861['routeId'])?_0x4fb861[_0xc994('0x2c')]:_0x4fb861[_0xc994('0x18')];if(_['isNil'](_0x4fb861['routeId'])){_0x587595[_0xc994('0x19')]=_0x4fb861[_0xc994('0x2d')]&&_0x4fb861[_0xc994('0x2d')]!==_0xc994('0x30')?_0x4fb861[_0xc994('0x2d')]:_0xc994('0x2e');}else{_0x587595[_0xc994('0x19')]=_0x4fb861['destcalleridname']&&_0x4fb861['destcalleridname']!==_0xc994('0x30')?_0x4fb861['destcalleridname']:'Unknown';}_0x40097e=_0x587595;_0x2038ed[_0xc994('0x32')](_0x587595);return;}}})[_0xc994('0x21')](function(){if(_0xd83da9){emit(_0x4fb861[_0xc994('0x26')],_0x5a795e,util[_0xc994('0x35')](_0xc994('0x36'),_0xd83da9[_0xc994('0x37')]),util['format'](_0xc994('0x38'),_0x539acb[_0xc994('0x39')][_0xc994('0x3a')]()),{'evt':_['merge'](_0x4fb861,{'autoCreate':_0x3a76b9}),'contact':_0x40097e===undefined?{}:_0x40097e,'contacts':_0x2038ed[_0xc994('0x24')]===0x0?undefined:_0x2038ed});}});};