Built motion from commit (unavailable).|2.5.31
[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 _0x74eb=['phone','fax','mobile','lodash','../../mysqldb','../../config/logger','mail-interactions','fax-interactions','sms-interactions','chat-interactions','whatsapp-interactions','upperFirst','unknown','toLowerCase','[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','toUpperCase','stringify','null','findOne','then','catch','tracked','user','query','clone','body'];(function(_0x3ed340,_0x4ae5e7){var _0x2f6afe=function(_0xccee79){while(--_0xccee79){_0x3ed340['push'](_0x3ed340['shift']());}};_0x2f6afe(++_0x4ae5e7);}(_0x74eb,0x13b));var _0xb74e=function(_0x179d8a,_0x43767e){_0x179d8a=_0x179d8a-0x0;var _0x2484fe=_0x74eb[_0x179d8a];return _0x2484fe;};'use strict';var _=require(_0xb74e('0x0'));var db=require(_0xb74e('0x1'))['db'];var loggers={'openchannel':require(_0xb74e('0x2'))('openchannel-interactions'),'mail':require(_0xb74e('0x2'))(_0xb74e('0x3')),'fax':require(_0xb74e('0x2'))(_0xb74e('0x4')),'sms':require(_0xb74e('0x2'))(_0xb74e('0x5')),'chat':require('../../config/logger')(_0xb74e('0x6')),'whatsapp':require('../../config/logger')(_0xb74e('0x7'))};function getInteractionId(_0x4307f8,_0x562cd1,_0x2d0773){if(_0x4307f8&&_0x4307f8[_['upperFirst'](_0x2d0773)+'InteractionId']){return _0x4307f8[_[_0xb74e('0x8')](_0x2d0773)+'InteractionId'];}else if(_0x4307f8&&_0x4307f8['id']){return _0x4307f8['id'];}else if(_0x562cd1&&_0x562cd1['id']){return _0x562cd1['id'];}else{return _0xb74e('0x9');}}function log(_0x3ef5f2,_0x5b8955,_0x45e1a9,_0x17ab1b,_0x913bb7,_0x3a0802){loggers[_0x913bb7[_0xb74e('0xa')]()][_0x3ef5f2](_0xb74e('0xb'),_0x3a0802[_0xb74e('0xc')](),_0x5b8955?_0x5b8955['id']:null,_0x5b8955?_0x5b8955['name']:null,_0x5b8955?_0x5b8955['role']:null,getInteractionId(_0x45e1a9,_0x17ab1b,_0x913bb7),_0x45e1a9?JSON[_0xb74e('0xd')](_0x45e1a9):_0xb74e('0xe'));}function updateUser(_0x1e6d77,_0x2b8c47,_0x428065,_0x3e7018,_0x3a298d){db[_[_0xb74e('0x8')](_0x3e7018)+'Interaction'][_0xb74e('0xf')]({'where':{'id':getInteractionId(_0x2b8c47,_0x428065,_0x3e7018)}})[_0xb74e('0x10')](function(_0xb0d4b0){if(_0xb0d4b0){return _0xb0d4b0['update']({'UserId':_0x1e6d77?_0x1e6d77['id']:null});}})['then'](function(_0xec4361){if(_0xec4361){log('info',_0x1e6d77,_0x2b8c47,_0x428065,_0x3e7018,_0x3a298d);}})[_0xb74e('0x11')](function(){log('error',_0x1e6d77,_0x2b8c47,_0x428065,_0x3e7018,_0x3a298d);});}exports[_0xb74e('0x12')]=function(_0x1aeae3,_0xb3cc22){return function(_0x391296,_0x526549,_0x47b4a4){var _0x201b98=_0x391296[_0xb74e('0x13')];var _0xea9a4a={};var _0x17c86a=_0x391296[_0xb74e('0x14')];if(_0xea9a4a){_0xea9a4a=_[_0xb74e('0x15')](_0x391296[_0xb74e('0x16')]);_0xea9a4a=_['omit'](_0xea9a4a,[_0xb74e('0x16'),'html',_0xb74e('0x17'),_0xb74e('0x18'),_0xb74e('0x19')]);}updateUser(_0x201b98,_0xea9a4a,_0x17c86a,_0x1aeae3,_0xb3cc22);_0x47b4a4(null);};};