Built motion from commit 092f8824.|2.5.49
[motion2.git] / server / components / interaction / service.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 _0x2e71=['omit','phone','fax','mobile','lodash','../../mysqldb','../../config/logger','openchannel-interactions','mail-interactions','fax-interactions','upperFirst','InteractionId','unknown','toLowerCase','[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','toUpperCase','name','null','Interaction','then','update','info','catch','error','user','query','body'];(function(_0x327c38,_0x18cf68){var _0x5502ae=function(_0x2c3e37){while(--_0x2c3e37){_0x327c38['push'](_0x327c38['shift']());}};_0x5502ae(++_0x18cf68);}(_0x2e71,0x12d));var _0x12e7=function(_0x45fc6a,_0x166adb){_0x45fc6a=_0x45fc6a-0x0;var _0x14bcfd=_0x2e71[_0x45fc6a];return _0x14bcfd;};'use strict';var _=require(_0x12e7('0x0'));var db=require(_0x12e7('0x1'))['db'];var loggers={'openchannel':require(_0x12e7('0x2'))(_0x12e7('0x3')),'mail':require('../../config/logger')(_0x12e7('0x4')),'fax':require(_0x12e7('0x2'))(_0x12e7('0x5')),'sms':require(_0x12e7('0x2'))('sms-interactions'),'chat':require(_0x12e7('0x2'))('chat-interactions'),'whatsapp':require('../../config/logger')('whatsapp-interactions')};function getInteractionId(_0x2cce1b,_0x5115e8,_0x173c81){if(_0x2cce1b&&_0x2cce1b[_[_0x12e7('0x6')](_0x173c81)+'InteractionId']){return _0x2cce1b[_['upperFirst'](_0x173c81)+_0x12e7('0x7')];}else if(_0x2cce1b&&_0x2cce1b['id']){return _0x2cce1b['id'];}else if(_0x5115e8&&_0x5115e8['id']){return _0x5115e8['id'];}else{return _0x12e7('0x8');}}function log(_0xa2f7f3,_0x422a6c,_0x16788b,_0x738d69,_0x529d35,_0x691b62){loggers[_0x529d35[_0x12e7('0x9')]()][_0xa2f7f3](_0x12e7('0xa'),_0x691b62[_0x12e7('0xb')](),_0x422a6c?_0x422a6c['id']:null,_0x422a6c?_0x422a6c[_0x12e7('0xc')]:null,_0x422a6c?_0x422a6c['role']:null,getInteractionId(_0x16788b,_0x738d69,_0x529d35),_0x16788b?JSON['stringify'](_0x16788b):_0x12e7('0xd'));}function updateUser(_0x56eab2,_0x13e1a0,_0x367470,_0x56cf80,_0x3fec2c){db[_[_0x12e7('0x6')](_0x56cf80)+_0x12e7('0xe')]['findOne']({'where':{'id':getInteractionId(_0x13e1a0,_0x367470,_0x56cf80)}})[_0x12e7('0xf')](function(_0x15d712){if(_0x15d712){return _0x15d712[_0x12e7('0x10')]({'UserId':_0x56eab2?_0x56eab2['id']:null});}})[_0x12e7('0xf')](function(_0x2a4e99){if(_0x2a4e99){log(_0x12e7('0x11'),_0x56eab2,_0x13e1a0,_0x367470,_0x56cf80,_0x3fec2c);}})[_0x12e7('0x12')](function(){log(_0x12e7('0x13'),_0x56eab2,_0x13e1a0,_0x367470,_0x56cf80,_0x3fec2c);});}exports['tracked']=function(_0x41d40d,_0x4dec91){return function(_0x318dc3,_0x2567d2,_0x4b1d54){var _0x36e2fa=_0x318dc3[_0x12e7('0x14')];var _0x158ab1={};var _0xa33681=_0x318dc3[_0x12e7('0x15')];if(_0x158ab1){_0x158ab1=_['clone'](_0x318dc3[_0x12e7('0x16')]);_0x158ab1=_[_0x12e7('0x17')](_0x158ab1,['body','html',_0x12e7('0x18'),_0x12e7('0x19'),_0x12e7('0x1a')]);}updateUser(_0x36e2fa,_0x158ab1,_0xa33681,_0x41d40d,_0x4dec91);_0x4b1d54(null);};};