Built motion from commit (unavailable).|2.4.8
[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 _0x9e6d=['then','showContact','omit','xmd-contactid2','name','format','trigger:%s','toLowerCase','merge','user:%s','action','catch','error','Error\x20creating\x20contact','stringify','bluebird','lodash','ioredis','../../../../config/environment','trigger','../../rpc/cmContact','redis','defaults','localhost','socket.io-emitter','info','emit','exec','data2','data1','calleridnum','isNil','routeId','firstName','calleridname','destcalleridname','<unknown>','destcalleridnum','uniqueid','phone','resolve'];(function(_0x454233,_0x4f592c){var _0x16dfbc=function(_0x4eeb40){while(--_0x4eeb40){_0x454233['push'](_0x454233['shift']());}};_0x16dfbc(++_0x4f592c);}(_0x9e6d,0x1d2));var _0xd9e6=function(_0xe9e06f,_0x43baa7){_0xe9e06f=_0xe9e06f-0x0;var _0x2e35a3=_0x9e6d[_0xe9e06f];return _0x2e35a3;};'use strict';var BPromise=require(_0xd9e6('0x0'));var util=require('util');var _=require(_0xd9e6('0x1'));var Redis=require(_0xd9e6('0x2'));var config=require(_0xd9e6('0x3'));var logger=require('../../../../config/logger')(_0xd9e6('0x4'));var cmContactRpc=require(_0xd9e6('0x5'));config[_0xd9e6('0x6')]=_[_0xd9e6('0x7')](config['redis'],{'host':_0xd9e6('0x8'),'port':0x18eb});var io=require(_0xd9e6('0x9'))(new Redis(config['redis']));function emit(_0x57a688,_0x1cb696,_0x44ac22){logger[_0xd9e6('0xa')](_0x57a688,_0x1cb696,JSON['stringify'](_0x44ac22));io['to'](_0x57a688)[_0xd9e6('0xb')](_0x1cb696,_0x44ac22);}exports[_0xd9e6('0xc')]=function(_0x596895,_0x6430c2,_0x1290ce){_0x1290ce['autoCreate']=0x0;if(_0x6430c2['data2']&&parseInt(_0x6430c2[_0xd9e6('0xd')],0xa)){var _0x32e9e6={'ListId':parseInt(_0x6430c2[_0xd9e6('0xe')],0xa),'phone':_0x1290ce[_0xd9e6('0xf')]};if(_[_0xd9e6('0x10')](_0x1290ce[_0xd9e6('0x11')])){_0x32e9e6[_0xd9e6('0x12')]=_0x1290ce[_0xd9e6('0x13')]&&_0x1290ce[_0xd9e6('0x13')]!=='<unknown>'?_0x1290ce[_0xd9e6('0x13')]:_0x1290ce[_0xd9e6('0xf')]||_0x1290ce['uniqueid'];}else{_0x32e9e6['firstName']=_0x1290ce[_0xd9e6('0x14')]&&_0x1290ce['destcalleridname']!==_0xd9e6('0x15')?_0x1290ce[_0xd9e6('0x14')]:_0x1290ce[_0xd9e6('0x16')]||_0x1290ce[_0xd9e6('0x17')];_0x32e9e6[_0xd9e6('0x18')]=_0x1290ce['destcalleridname']&&_0x1290ce['destcalleridname']!==_0xd9e6('0x15')?_0x1290ce['destcalleridname']:_0x1290ce[_0xd9e6('0x16')]||_0x1290ce[_0xd9e6('0x17')];}BPromise[_0xd9e6('0x19')]()[_0xd9e6('0x1a')](cmContactRpc[_0xd9e6('0x1b')]({'where':_[_0xd9e6('0x1c')](_0x32e9e6,[_0xd9e6('0x12')])}))[_0xd9e6('0x1a')](function(_0x2a1bf5){if(_0x2a1bf5){_0x1290ce[_0xd9e6('0x1d')]=_0x2a1bf5['id'];emit(util['format']('user:%s',_0x596895[_0xd9e6('0x1e')]),util[_0xd9e6('0x1f')](_0xd9e6('0x20'),_0x6430c2['action'][_0xd9e6('0x21')]()),_[_0xd9e6('0x22')](_0x1290ce,{'ListId':parseInt(_0x6430c2[_0xd9e6('0xe')],0xa)}));return;}else{return BPromise[_0xd9e6('0x19')]()['then'](cmContactRpc['createContact'](_0x32e9e6));}})[_0xd9e6('0x1a')](function(_0x3ada59){if(_0x3ada59){_0x1290ce[_0xd9e6('0x1d')]=_0x3ada59['id'];emit(util['format'](_0xd9e6('0x23'),_0x596895[_0xd9e6('0x1e')]),util[_0xd9e6('0x1f')](_0xd9e6('0x20'),_0x6430c2[_0xd9e6('0x24')][_0xd9e6('0x21')]()),_[_0xd9e6('0x22')](_0x1290ce,{'ListId':parseInt(_0x6430c2['data1'],0xa)}));}})[_0xd9e6('0x25')](function(_0x3b17f9){logger[_0xd9e6('0x26')](_0xd9e6('0x27'),JSON[_0xd9e6('0x28')](_0x3b17f9));});}else{if(_0x596895){emit(util[_0xd9e6('0x1f')]('user:%s',_0x596895[_0xd9e6('0x1e')]),util[_0xd9e6('0x1f')](_0xd9e6('0x20'),_0x6430c2[_0xd9e6('0x24')][_0xd9e6('0x21')]()),_[_0xd9e6('0x22')]({'ListId':parseInt(_0x6430c2[_0xd9e6('0xe')],0xa)},_0x1290ce));}}};