f952dc8b6f755d31edd1f73cc74d4fc5c56a8927
[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 _0xec9c=['InteractionId','upperFirst','unknown','toLowerCase','[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','toUpperCase','role','null','findOne','then','update','info','error','user','query','body','omit','html','phone','fax','mobile','../../mysqldb','../../config/logger','mail-interactions','fax-interactions','sms-interactions','chat-interactions'];(function(_0x122ef9,_0x451d2a){var _0x42fba0=function(_0x17c9d3){while(--_0x17c9d3){_0x122ef9['push'](_0x122ef9['shift']());}};_0x42fba0(++_0x451d2a);}(_0xec9c,0x123));var _0xcec9=function(_0x54c919,_0x1af5b9){_0x54c919=_0x54c919-0x0;var _0x7708a8=_0xec9c[_0x54c919];return _0x7708a8;};'use strict';var _=require('lodash');var db=require(_0xcec9('0x0'))['db'];var loggers={'openchannel':require(_0xcec9('0x1'))('openchannel-interactions'),'mail':require(_0xcec9('0x1'))(_0xcec9('0x2')),'fax':require(_0xcec9('0x1'))(_0xcec9('0x3')),'sms':require(_0xcec9('0x1'))(_0xcec9('0x4')),'chat':require(_0xcec9('0x1'))(_0xcec9('0x5')),'whatsapp':require(_0xcec9('0x1'))('whatsapp-interactions')};function getInteractionId(_0x59e166,_0x3f5026,_0x4d0249){if(_0x59e166&&_0x59e166[_['upperFirst'](_0x4d0249)+_0xcec9('0x6')]){return _0x59e166[_[_0xcec9('0x7')](_0x4d0249)+'InteractionId'];}else if(_0x59e166&&_0x59e166['id']){return _0x59e166['id'];}else if(_0x3f5026&&_0x3f5026['id']){return _0x3f5026['id'];}else{return _0xcec9('0x8');}}function log(_0x1f9fb1,_0x5ef779,_0x475087,_0x2f5caa,_0x484a8a,_0x5142ed){loggers[_0x484a8a[_0xcec9('0x9')]()][_0x1f9fb1](_0xcec9('0xa'),_0x5142ed[_0xcec9('0xb')](),_0x5ef779?_0x5ef779['id']:null,_0x5ef779?_0x5ef779['name']:null,_0x5ef779?_0x5ef779[_0xcec9('0xc')]:null,getInteractionId(_0x475087,_0x2f5caa,_0x484a8a),_0x475087?JSON['stringify'](_0x475087):_0xcec9('0xd'));}function updateUser(_0x565adb,_0x565dae,_0x596f42,_0x560241,_0x236620){db[_['upperFirst'](_0x560241)+'Interaction'][_0xcec9('0xe')]({'where':{'id':getInteractionId(_0x565dae,_0x596f42,_0x560241)}})[_0xcec9('0xf')](function(_0x699e5e){if(_0x699e5e){return _0x699e5e[_0xcec9('0x10')]({'UserId':_0x565adb?_0x565adb['id']:null});}})[_0xcec9('0xf')](function(_0x46b891){if(_0x46b891){log(_0xcec9('0x11'),_0x565adb,_0x565dae,_0x596f42,_0x560241,_0x236620);}})['catch'](function(){log(_0xcec9('0x12'),_0x565adb,_0x565dae,_0x596f42,_0x560241,_0x236620);});}exports['tracked']=function(_0x5c6319,_0x211f25){return function(_0x483a37,_0x31258b,_0x2d58c3){var _0x1e6e5b=_0x483a37[_0xcec9('0x13')];var _0x2618d5={};var _0x4a95dd=_0x483a37[_0xcec9('0x14')];if(_0x2618d5){_0x2618d5=_['clone'](_0x483a37[_0xcec9('0x15')]);_0x2618d5=_[_0xcec9('0x16')](_0x2618d5,[_0xcec9('0x15'),_0xcec9('0x17'),_0xcec9('0x18'),_0xcec9('0x19'),_0xcec9('0x1a')]);}updateUser(_0x1e6e5b,_0x2618d5,_0x4a95dd,_0x5c6319,_0x211f25);_0x2d58c3(null);};};