Built motion from commit (unavailable).|2.5.20
[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 _0x2b83=['body','html','phone','fax','mobile','../../mysqldb','../../config/logger','mail-interactions','sms-interactions','upperFirst','InteractionId','toLowerCase','toUpperCase','name','null','Interaction','findOne','update','catch','query','clone','omit'];(function(_0x99ba67,_0x10eae9){var _0x5c4f7d=function(_0x2962f6){while(--_0x2962f6){_0x99ba67['push'](_0x99ba67['shift']());}};_0x5c4f7d(++_0x10eae9);}(_0x2b83,0x1d3));var _0x32b8=function(_0x1e0ec6,_0x2a561e){_0x1e0ec6=_0x1e0ec6-0x0;var _0x9c94ba=_0x2b83[_0x1e0ec6];return _0x9c94ba;};'use strict';var _=require('lodash');var db=require(_0x32b8('0x0'))['db'];var loggers={'openchannel':require(_0x32b8('0x1'))('openchannel-interactions'),'mail':require(_0x32b8('0x1'))(_0x32b8('0x2')),'fax':require(_0x32b8('0x1'))('fax-interactions'),'sms':require('../../config/logger')(_0x32b8('0x3')),'chat':require(_0x32b8('0x1'))('chat-interactions'),'whatsapp':require(_0x32b8('0x1'))('whatsapp-interactions')};function getInteractionId(_0x18150c,_0x342a03,_0x36bde3){if(_0x18150c&&_0x18150c[_[_0x32b8('0x4')](_0x36bde3)+'InteractionId']){return _0x18150c[_[_0x32b8('0x4')](_0x36bde3)+_0x32b8('0x5')];}else if(_0x18150c&&_0x18150c['id']){return _0x18150c['id'];}else if(_0x342a03&&_0x342a03['id']){return _0x342a03['id'];}else{return'unknown';}}function log(_0x4f2aa0,_0x3f58a5,_0x5ecf4e,_0x10e421,_0x31b795,_0x465672){loggers[_0x31b795[_0x32b8('0x6')]()][_0x4f2aa0]('[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x465672[_0x32b8('0x7')](),_0x3f58a5?_0x3f58a5['id']:null,_0x3f58a5?_0x3f58a5[_0x32b8('0x8')]:null,_0x3f58a5?_0x3f58a5['role']:null,getInteractionId(_0x5ecf4e,_0x10e421,_0x31b795),_0x5ecf4e?JSON['stringify'](_0x5ecf4e):_0x32b8('0x9'));}function updateUser(_0x5a0ef2,_0x41594c,_0x4b838f,_0x37aa93,_0x6b533e){db[_[_0x32b8('0x4')](_0x37aa93)+_0x32b8('0xa')][_0x32b8('0xb')]({'where':{'id':getInteractionId(_0x41594c,_0x4b838f,_0x37aa93)}})['then'](function(_0x4c8fc9){if(_0x4c8fc9){return _0x4c8fc9[_0x32b8('0xc')]({'UserId':_0x5a0ef2?_0x5a0ef2['id']:null});}})['then'](function(_0x4e0d7a){if(_0x4e0d7a){log('info',_0x5a0ef2,_0x41594c,_0x4b838f,_0x37aa93,_0x6b533e);}})[_0x32b8('0xd')](function(){log('error',_0x5a0ef2,_0x41594c,_0x4b838f,_0x37aa93,_0x6b533e);});}exports['tracked']=function(_0x2828fc,_0x2ce0ea){return function(_0x2ba4eb,_0x1793b9,_0x599bc3){var _0x49ed18=_0x2ba4eb['user'];var _0x38f02b={};var _0x2ffea2=_0x2ba4eb[_0x32b8('0xe')];if(_0x38f02b){_0x38f02b=_[_0x32b8('0xf')](_0x2ba4eb['body']);_0x38f02b=_[_0x32b8('0x10')](_0x38f02b,[_0x32b8('0x11'),_0x32b8('0x12'),_0x32b8('0x13'),_0x32b8('0x14'),_0x32b8('0x15')]);}updateUser(_0x49ed18,_0x38f02b,_0x2ffea2,_0x2828fc,_0x2ce0ea);_0x599bc3(null);};};