ef79fff4713d47046e2140299c65aa3899363995
[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 _0x27e9=['query','clone','omit','body','phone','fax','mobile','lodash','../../mysqldb','../../config/logger','mail-interactions','fax-interactions','sms-interactions','chat-interactions','upperFirst','InteractionId','toLowerCase','[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','toUpperCase','stringify','null','findOne','update','then','info','catch','tracked','user'];(function(_0x5b36bd,_0x4dfb36){var _0x1614fe=function(_0x559b7c){while(--_0x559b7c){_0x5b36bd['push'](_0x5b36bd['shift']());}};_0x1614fe(++_0x4dfb36);}(_0x27e9,0x1e3));var _0x927e=function(_0x74f4ff,_0x3fca47){_0x74f4ff=_0x74f4ff-0x0;var _0x3550ac=_0x27e9[_0x74f4ff];return _0x3550ac;};'use strict';var _=require(_0x927e('0x0'));var db=require(_0x927e('0x1'))['db'];var loggers={'openchannel':require('../../config/logger')('openchannel-interactions'),'mail':require(_0x927e('0x2'))(_0x927e('0x3')),'fax':require(_0x927e('0x2'))(_0x927e('0x4')),'sms':require(_0x927e('0x2'))(_0x927e('0x5')),'chat':require(_0x927e('0x2'))(_0x927e('0x6')),'whatsapp':require(_0x927e('0x2'))('whatsapp-interactions')};function getInteractionId(_0x2420bb,_0x180a0e,_0x2083b0){if(_0x2420bb&&_0x2420bb[_[_0x927e('0x7')](_0x2083b0)+_0x927e('0x8')]){return _0x2420bb[_[_0x927e('0x7')](_0x2083b0)+_0x927e('0x8')];}else if(_0x2420bb&&_0x2420bb['id']){return _0x2420bb['id'];}else if(_0x180a0e&&_0x180a0e['id']){return _0x180a0e['id'];}else{return'unknown';}}function log(_0x18c300,_0x542c33,_0x1e6215,_0x1f43e9,_0x33c158,_0x340beb){loggers[_0x33c158[_0x927e('0x9')]()][_0x18c300](_0x927e('0xa'),_0x340beb[_0x927e('0xb')](),_0x542c33?_0x542c33['id']:null,_0x542c33?_0x542c33['name']:null,_0x542c33?_0x542c33['role']:null,getInteractionId(_0x1e6215,_0x1f43e9,_0x33c158),_0x1e6215?JSON[_0x927e('0xc')](_0x1e6215):_0x927e('0xd'));}function updateUser(_0x2d25cb,_0x2c0fe7,_0x4e6553,_0x5ede10,_0x26f6de){db[_[_0x927e('0x7')](_0x5ede10)+'Interaction'][_0x927e('0xe')]({'where':{'id':getInteractionId(_0x2c0fe7,_0x4e6553,_0x5ede10)}})['then'](function(_0x5eac08){if(_0x5eac08){return _0x5eac08[_0x927e('0xf')]({'UserId':_0x2d25cb?_0x2d25cb['id']:null});}})[_0x927e('0x10')](function(_0x1d9649){if(_0x1d9649){log(_0x927e('0x11'),_0x2d25cb,_0x2c0fe7,_0x4e6553,_0x5ede10,_0x26f6de);}})[_0x927e('0x12')](function(){log('error',_0x2d25cb,_0x2c0fe7,_0x4e6553,_0x5ede10,_0x26f6de);});}exports[_0x927e('0x13')]=function(_0x311a8a,_0x25e2a8){return function(_0x519e29,_0xb70324,_0x2e04c1){var _0x4384dc=_0x519e29[_0x927e('0x14')];var _0x23405c={};var _0x2f272d=_0x519e29[_0x927e('0x15')];if(_0x23405c){_0x23405c=_[_0x927e('0x16')](_0x519e29['body']);_0x23405c=_[_0x927e('0x17')](_0x23405c,[_0x927e('0x18'),'html',_0x927e('0x19'),_0x927e('0x1a'),_0x927e('0x1b')]);}updateUser(_0x4384dc,_0x23405c,_0x2f272d,_0x311a8a,_0x25e2a8);_0x2e04c1(null);};};