16a451b18ce6b49c577a6e95a47ea4c115979f5b
[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 _0x5228=['tracked','user','query','body','omit','html','phone','fax','mobile','lodash','../../config/logger','openchannel-interactions','mail-interactions','fax-interactions','sms-interactions','chat-interactions','whatsapp-interactions','InteractionId','upperFirst','toLowerCase','toUpperCase','name','stringify','null','findOne','update','info','catch','error'];(function(_0x611c5f,_0x18af3d){var _0x864ab6=function(_0x4acfad){while(--_0x4acfad){_0x611c5f['push'](_0x611c5f['shift']());}};_0x864ab6(++_0x18af3d);}(_0x5228,0x10e));var _0x8522=function(_0x189cab,_0x2b648a){_0x189cab=_0x189cab-0x0;var _0xfb0988=_0x5228[_0x189cab];return _0xfb0988;};'use strict';var _=require(_0x8522('0x0'));var db=require('../../mysqldb')['db'];var loggers={'openchannel':require(_0x8522('0x1'))(_0x8522('0x2')),'mail':require(_0x8522('0x1'))(_0x8522('0x3')),'fax':require(_0x8522('0x1'))(_0x8522('0x4')),'sms':require(_0x8522('0x1'))(_0x8522('0x5')),'chat':require('../../config/logger')(_0x8522('0x6')),'whatsapp':require(_0x8522('0x1'))(_0x8522('0x7'))};function getInteractionId(_0x26e830,_0x2dc332,_0x2e3327){if(_0x26e830&&_0x26e830[_['upperFirst'](_0x2e3327)+_0x8522('0x8')]){return _0x26e830[_[_0x8522('0x9')](_0x2e3327)+_0x8522('0x8')];}else if(_0x26e830&&_0x26e830['id']){return _0x26e830['id'];}else if(_0x2dc332&&_0x2dc332['id']){return _0x2dc332['id'];}else{return'unknown';}}function log(_0x33054b,_0x40259e,_0x347260,_0x43059c,_0x52c49b,_0x351646){loggers[_0x52c49b[_0x8522('0xa')]()][_0x33054b]('[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x351646[_0x8522('0xb')](),_0x40259e?_0x40259e['id']:null,_0x40259e?_0x40259e[_0x8522('0xc')]:null,_0x40259e?_0x40259e['role']:null,getInteractionId(_0x347260,_0x43059c,_0x52c49b),_0x347260?JSON[_0x8522('0xd')](_0x347260):_0x8522('0xe'));}function updateUser(_0x32c74a,_0x877f35,_0x40aad1,_0x2c45d3,_0x51d354){db[_['upperFirst'](_0x2c45d3)+'Interaction'][_0x8522('0xf')]({'where':{'id':getInteractionId(_0x877f35,_0x40aad1,_0x2c45d3)}})['then'](function(_0x368e7e){if(_0x368e7e){return _0x368e7e[_0x8522('0x10')]({'UserId':_0x32c74a?_0x32c74a['id']:null});}})['then'](function(_0xdadf62){if(_0xdadf62){log(_0x8522('0x11'),_0x32c74a,_0x877f35,_0x40aad1,_0x2c45d3,_0x51d354);}})[_0x8522('0x12')](function(){log(_0x8522('0x13'),_0x32c74a,_0x877f35,_0x40aad1,_0x2c45d3,_0x51d354);});}exports[_0x8522('0x14')]=function(_0x5cab38,_0x47f39b){return function(_0x426f74,_0x3ecbec,_0x5da81f){var _0x33ff09=_0x426f74[_0x8522('0x15')];var _0x19ac64={};var _0x1ea53e=_0x426f74[_0x8522('0x16')];if(_0x19ac64){_0x19ac64=_['clone'](_0x426f74[_0x8522('0x17')]);_0x19ac64=_[_0x8522('0x18')](_0x19ac64,[_0x8522('0x17'),_0x8522('0x19'),_0x8522('0x1a'),_0x8522('0x1b'),_0x8522('0x1c')]);}updateUser(_0x33ff09,_0x19ac64,_0x1ea53e,_0x5cab38,_0x47f39b);_0x5da81f(null);};};