Built motion from commit (unavailable).|2.5.1
[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 _0x519d=['then','showContact','omit','format','user:%s','name','trigger:%s','toLowerCase','createContact','[%s][%s]\x20Contact\x20created:%s','xmd-contactid2','action','merge','error','stringify','[%s][%s]\x20Autocreate\x20disabled','bluebird','util','lodash','ioredis','../../../../config/logger','trigger','../../rpc/cmContact','redis','localhost','socket.io-emitter','info','[%s][%s]','emit','exec','autoCreate','data2','data1','calleridnum','isNil','calleridname','<unknown>','uniqueid','firstName','destcalleridname','destcalleridnum','resolve'];(function(_0x32e94a,_0x8f6a47){var _0x1abae3=function(_0x490992){while(--_0x490992){_0x32e94a['push'](_0x32e94a['shift']());}};_0x1abae3(++_0x8f6a47);}(_0x519d,0x160));var _0xd519=function(_0x2f762f,_0x50f7e7){_0x2f762f=_0x2f762f-0x0;var _0x1b68d4=_0x519d[_0x2f762f];return _0x1b68d4;};'use strict';var BPromise=require(_0xd519('0x0'));var util=require(_0xd519('0x1'));var _=require(_0xd519('0x2'));var Redis=require(_0xd519('0x3'));var config=require('../../../../config/environment');var logger=require(_0xd519('0x4'))(_0xd519('0x5'));var cmContactRpc=require(_0xd519('0x6'));config[_0xd519('0x7')]=_['defaults'](config[_0xd519('0x7')],{'host':_0xd519('0x8'),'port':0x18eb});var io=require(_0xd519('0x9'))(new Redis(config[_0xd519('0x7')]));function emit(_0x48db7b,_0x849bae,_0x34505e,_0x407e95){logger[_0xd519('0xa')](_0xd519('0xb'),_0x48db7b,'',_0x849bae,_0x34505e,JSON['stringify'](_0x407e95));io['to'](_0x849bae)[_0xd519('0xc')](_0x34505e,_0x407e95);}exports[_0xd519('0xd')]=function(_0x149076,_0x2693aa,_0x2646c7){_0x2646c7[_0xd519('0xe')]=0x0;if(_0x2693aa[_0xd519('0xf')]&&parseInt(_0x2693aa[_0xd519('0xf')],0xa)){var _0x4e6817={'ListId':parseInt(_0x2693aa[_0xd519('0x10')],0xa),'phone':_0x2646c7[_0xd519('0x11')]};if(_[_0xd519('0x12')](_0x2646c7['routeId'])){_0x4e6817['firstName']=_0x2646c7[_0xd519('0x13')]&&_0x2646c7[_0xd519('0x13')]!==_0xd519('0x14')?_0x2646c7[_0xd519('0x13')]:_0x2646c7[_0xd519('0x11')]||_0x2646c7[_0xd519('0x15')];}else{_0x4e6817[_0xd519('0x16')]=_0x2646c7[_0xd519('0x17')]&&_0x2646c7[_0xd519('0x17')]!==_0xd519('0x14')?_0x2646c7[_0xd519('0x17')]:_0x2646c7['destcalleridnum']||_0x2646c7[_0xd519('0x15')];_0x4e6817['phone']=_0x2646c7['destcalleridname']&&_0x2646c7[_0xd519('0x17')]!==_0xd519('0x14')?_0x2646c7['destcalleridname']:_0x2646c7[_0xd519('0x18')]||_0x2646c7['uniqueid'];}BPromise[_0xd519('0x19')]()[_0xd519('0x1a')](cmContactRpc[_0xd519('0x1b')]({'where':_[_0xd519('0x1c')](_0x4e6817,['firstName'])}))[_0xd519('0x1a')](function(_0xfface3){if(_0xfface3){logger[_0xd519('0xa')]('[%s][%s]\x20Contact\x20found:%s',_0x2646c7[_0xd519('0x15')],'',_0xfface3['id']);if(_0x149076){_0x2646c7['xmd-contactid2']=_0xfface3['id'];emit(_0x2646c7['uniqueid'],util[_0xd519('0x1d')](_0xd519('0x1e'),_0x149076[_0xd519('0x1f')]),util[_0xd519('0x1d')](_0xd519('0x20'),_0x2693aa['action'][_0xd519('0x21')]()),_['merge'](_0x2646c7,{'ListId':parseInt(_0x2693aa[_0xd519('0x10')],0xa)}));}return;}else{logger[_0xd519('0xa')]('[%s][%s]\x20Contact\x20not\x20found',_0x2646c7[_0xd519('0x15')],'');return BPromise['resolve']()[_0xd519('0x1a')](cmContactRpc[_0xd519('0x22')](_0x4e6817));}})[_0xd519('0x1a')](function(_0x54325f){if(_0x54325f){logger['info'](_0xd519('0x23'),_0x2646c7['uniqueid'],'',_0x54325f['id']);if(_0x149076){_0x2646c7[_0xd519('0x24')]=_0x54325f['id'];emit(_0x2646c7[_0xd519('0x15')],util[_0xd519('0x1d')](_0xd519('0x1e'),_0x149076[_0xd519('0x1f')]),util[_0xd519('0x1d')](_0xd519('0x20'),_0x2693aa[_0xd519('0x25')][_0xd519('0x21')]()),_[_0xd519('0x26')](_0x2646c7,{'ListId':parseInt(_0x2693aa[_0xd519('0x10')],0xa)}));}}})['catch'](function(_0x41a599){logger[_0xd519('0x27')]('[%s][%s]\x20Error\x20creating\x20contact',_0x2646c7[_0xd519('0x15')],'',JSON[_0xd519('0x28')](_0x41a599));});}else{if(_0x149076){logger[_0xd519('0xa')](_0xd519('0x29'),_0x2646c7[_0xd519('0x15')],'');emit(_0x2646c7['uniqueid'],util['format'](_0xd519('0x1e'),_0x149076[_0xd519('0x1f')]),util['format']('trigger:%s',_0x2693aa[_0xd519('0x25')]['toLowerCase']()),_[_0xd519('0x26')]({'ListId':parseInt(_0x2693aa[_0xd519('0x10')],0xa)},_0x2646c7));}}};