Built motion from commit (unavailable).|2.5.31
[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 _0x2a1d=['updatedAt','union','resolve','getContacts','then','length','[CM][%s][%s]\x20Contact\x20found:%s','uniqueid','info','[CM][%s][%s]\x20Multiple\x20contacts\x20found:[%s]','join','[CM][%s][%s]\x20Contact\x20not\x20found','data4','[CM][%s][%s]\x20Autocreate\x20enabled','isNil','routeId','firstName','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','merge','lodash','ioredis','util','../../../../config/logger','trigger','../../rpc/cmContact','redis','defaults','localhost','socket.io-emitter','[CM][%s][%s]','stringify','emit','exec','data1','data2','xmd-contactid','data3','phone','map','destcalleridnum','calleridnum','lastName','mobile','fax','ListId','createdAt'];(function(_0x469625,_0x33795a){var _0x41d09f=function(_0x94f958){while(--_0x94f958){_0x469625['push'](_0x469625['shift']());}};_0x41d09f(++_0x33795a);}(_0x2a1d,0x96));var _0xd2a1=function(_0x1668b0,_0x16f55a){_0x1668b0=_0x1668b0-0x0;var _0xf2fac8=_0x2a1d[_0x1668b0];return _0xf2fac8;};'use strict';var _=require(_0xd2a1('0x0'));var BPromise=require('bluebird');var Redis=require(_0xd2a1('0x1'));var util=require(_0xd2a1('0x2'));var config=require('../../../../config/environment');var logger=require(_0xd2a1('0x3'))(_0xd2a1('0x4'));var cmContactRpc=require(_0xd2a1('0x5'));config[_0xd2a1('0x6')]=_[_0xd2a1('0x7')](config['redis'],{'host':_0xd2a1('0x8'),'port':0x18eb});var io=require(_0xd2a1('0x9'))(new Redis(config['redis']));function emit(_0x13d420,_0x3d6e63,_0x348834,_0x4a95f,_0x51b88){logger['info'](_0xd2a1('0xa'),_0x13d420,_0x3d6e63['id'],_0x348834,_0x4a95f,JSON[_0xd2a1('0xb')](_0x51b88));io['to'](_0x348834)[_0xd2a1('0xc')](_0x4a95f,_0x51b88);}exports[_0xd2a1('0xd')]=function(_0x153a94,_0x25735d,_0x108293,_0x447302){var _0x61a841,_0x1b15aa;var _0x571260={};var _0x3c383f=Number(_0x108293[_0xd2a1('0xe')]);var _0x4fe42b=_0x108293['data2']?Boolean(Number(_0x108293[_0xd2a1('0xf')])):![];var _0x214094;if(_0x447302[_0xd2a1('0x10')]){_0x571260['id']=_0x447302[_0xd2a1('0x10')];}if(!_0x571260['id']){_0x571260['ListId']=_0x3c383f;_0x214094=_0x108293[_0xd2a1('0x11')]&&_0x108293[_0xd2a1('0x11')]!=='0'?_0x108293['data3']['split'](','):[_0xd2a1('0x12')];_0x571260['$or']=_[_0xd2a1('0x13')](_0x214094,function(_0x1c8eaa){var _0xbfc341={};_0xbfc341[_0x1c8eaa]=_0x447302['routeId']?_0x447302[_0xd2a1('0x14')]:_0x447302[_0xd2a1('0x15')];return _0xbfc341;});}var _0x211885=['id','firstName',_0xd2a1('0x16'),_0xd2a1('0x12'),_0xd2a1('0x17'),_0xd2a1('0x18'),_0xd2a1('0x19'),_0xd2a1('0x1a'),'scheduledAt',_0xd2a1('0x1b')];var _0x1e93b5=_[_0xd2a1('0x1c')](_0x211885,_0x214094);BPromise[_0xd2a1('0x1d')]()['then'](cmContactRpc[_0xd2a1('0x1e')]({'attributes':_0x1e93b5,'where':_0x571260}))[_0xd2a1('0x1f')](function(_0x275415){_0x1b15aa=_0x275415;if(!_['isEmpty'](_0x1b15aa)){if(_0x1b15aa[_0xd2a1('0x20')]===0x1){_0x61a841=_0x1b15aa[0x0];logger['info'](_0xd2a1('0x21'),_0x447302[_0xd2a1('0x22')],_0x25735d['id'],_0x61a841['id']);}else{logger[_0xd2a1('0x23')](_0xd2a1('0x24'),_0x447302[_0xd2a1('0x22')],_0x25735d['id'],_['map'](_0x1b15aa,'id')[_0xd2a1('0x25')](','));}return;}else{logger[_0xd2a1('0x23')](_0xd2a1('0x26'),_0x447302['uniqueid'],_0x25735d['id']);var _0x56e438={'ListId':_0x3c383f};var _0x432c57=_0x108293['data4']&&_0x108293['data4']!=='0'?_0x108293[_0xd2a1('0x27')]:_0xd2a1('0x12');if(_0x4fe42b){logger[_0xd2a1('0x23')](_0xd2a1('0x28'),_0x447302[_0xd2a1('0x22')],_0x25735d['id']);_0x56e438[_0x432c57]=_[_0xd2a1('0x29')](_0x447302[_0xd2a1('0x2a')])?_0x447302[_0xd2a1('0x15')]:_0x447302[_0xd2a1('0x14')];if(_['isNil'](_0x447302[_0xd2a1('0x2a')])){_0x56e438[_0xd2a1('0x2b')]=_0x447302[_0xd2a1('0x2c')]&&_0x447302[_0xd2a1('0x2c')]!==_0xd2a1('0x2d')?_0x447302[_0xd2a1('0x2c')]:'Unknown';}else{_0x56e438[_0xd2a1('0x2b')]=_0x447302[_0xd2a1('0x2e')]&&_0x447302[_0xd2a1('0x2e')]!=='<unknown>'?_0x447302[_0xd2a1('0x2e')]:_0xd2a1('0x2f');}return BPromise[_0xd2a1('0x1d')]()[_0xd2a1('0x1f')](cmContactRpc[_0xd2a1('0x30')](_0x56e438))['then'](function(_0x47de7c){_0x61a841=_0x47de7c;_0x1b15aa[_0xd2a1('0x31')](_0x47de7c);if(_0x61a841){logger[_0xd2a1('0x23')](_0xd2a1('0x32'),_0x447302[_0xd2a1('0x22')],_0x25735d['id'],_0x61a841['id']);}return;});}else{logger[_0xd2a1('0x23')](_0xd2a1('0x33'),_0x447302[_0xd2a1('0x22')],_0x25735d['id']);_0x56e438[_0x432c57]=_['isNil'](_0x447302['routeId'])?_0x447302['calleridnum']:_0x447302['destcalleridnum'];if(_[_0xd2a1('0x29')](_0x447302[_0xd2a1('0x2a')])){_0x56e438[_0xd2a1('0x2b')]=_0x447302['calleridname']&&_0x447302[_0xd2a1('0x2c')]!==_0xd2a1('0x2d')?_0x447302[_0xd2a1('0x2c')]:_0xd2a1('0x2f');}else{_0x56e438[_0xd2a1('0x2b')]=_0x447302[_0xd2a1('0x2e')]&&_0x447302[_0xd2a1('0x2e')]!==_0xd2a1('0x2d')?_0x447302[_0xd2a1('0x2e')]:_0xd2a1('0x2f');}_0x61a841=_0x56e438;_0x1b15aa['push'](_0x56e438);return;}}})['then'](function(){if(_0x153a94){emit(_0x447302[_0xd2a1('0x22')],_0x25735d,util[_0xd2a1('0x34')](_0xd2a1('0x35'),_0x153a94[_0xd2a1('0x36')]),util['format'](_0xd2a1('0x37'),_0x108293[_0xd2a1('0x38')][_0xd2a1('0x39')]()),{'evt':_[_0xd2a1('0x3a')](_0x447302,{'autoCreate':_0x4fe42b}),'contact':_0x61a841===undefined?{}:_0x61a841,'contacts':_0x1b15aa[_0xd2a1('0x20')]===0x0?undefined:_0x1b15aa});}});};