Built motion from commit 43538d75.|2.5.35
[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 _0x4161=['update','info','catch','error','clone','body','html','phone','fax','lodash','../../mysqldb','../../config/logger','openchannel-interactions','fax-interactions','chat-interactions','whatsapp-interactions','upperFirst','InteractionId','unknown','toUpperCase','role','stringify','null','Interaction','findOne','then'];(function(_0x85c6c8,_0xe24ab){var _0x4b5fbc=function(_0x5b1df8){while(--_0x5b1df8){_0x85c6c8['push'](_0x85c6c8['shift']());}};_0x4b5fbc(++_0xe24ab);}(_0x4161,0x1dd));var _0x1416=function(_0x5aa8a5,_0x3aefae){_0x5aa8a5=_0x5aa8a5-0x0;var _0x494c7c=_0x4161[_0x5aa8a5];return _0x494c7c;};'use strict';var _=require(_0x1416('0x0'));var db=require(_0x1416('0x1'))['db'];var loggers={'openchannel':require(_0x1416('0x2'))(_0x1416('0x3')),'mail':require(_0x1416('0x2'))('mail-interactions'),'fax':require('../../config/logger')(_0x1416('0x4')),'sms':require(_0x1416('0x2'))('sms-interactions'),'chat':require(_0x1416('0x2'))(_0x1416('0x5')),'whatsapp':require(_0x1416('0x2'))(_0x1416('0x6'))};function getInteractionId(_0x23bf95,_0x34ac38,_0xc0e38c){if(_0x23bf95&&_0x23bf95[_[_0x1416('0x7')](_0xc0e38c)+'InteractionId']){return _0x23bf95[_[_0x1416('0x7')](_0xc0e38c)+_0x1416('0x8')];}else if(_0x23bf95&&_0x23bf95['id']){return _0x23bf95['id'];}else if(_0x34ac38&&_0x34ac38['id']){return _0x34ac38['id'];}else{return _0x1416('0x9');}}function log(_0x518315,_0x4e997b,_0x21d25d,_0x3e9352,_0x81a38b,_0xc7e819){loggers[_0x81a38b['toLowerCase']()][_0x518315]('[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0xc7e819[_0x1416('0xa')](),_0x4e997b?_0x4e997b['id']:null,_0x4e997b?_0x4e997b['name']:null,_0x4e997b?_0x4e997b[_0x1416('0xb')]:null,getInteractionId(_0x21d25d,_0x3e9352,_0x81a38b),_0x21d25d?JSON[_0x1416('0xc')](_0x21d25d):_0x1416('0xd'));}function updateUser(_0x250f7f,_0x264a40,_0x1ffda2,_0x37711c,_0x3c229c){db[_[_0x1416('0x7')](_0x37711c)+_0x1416('0xe')][_0x1416('0xf')]({'where':{'id':getInteractionId(_0x264a40,_0x1ffda2,_0x37711c)}})[_0x1416('0x10')](function(_0x1932a3){if(_0x1932a3){return _0x1932a3[_0x1416('0x11')]({'UserId':_0x250f7f?_0x250f7f['id']:null});}})[_0x1416('0x10')](function(_0x4e085d){if(_0x4e085d){log(_0x1416('0x12'),_0x250f7f,_0x264a40,_0x1ffda2,_0x37711c,_0x3c229c);}})[_0x1416('0x13')](function(){log(_0x1416('0x14'),_0x250f7f,_0x264a40,_0x1ffda2,_0x37711c,_0x3c229c);});}exports['tracked']=function(_0x4c030c,_0x1b2da4){return function(_0x12fee3,_0x318372,_0x46074a){var _0x269604=_0x12fee3['user'];var _0x48a20a={};var _0x30d32f=_0x12fee3['query'];if(_0x48a20a){_0x48a20a=_[_0x1416('0x15')](_0x12fee3[_0x1416('0x16')]);_0x48a20a=_['omit'](_0x48a20a,[_0x1416('0x16'),_0x1416('0x17'),_0x1416('0x18'),_0x1416('0x19'),'mobile']);}updateUser(_0x269604,_0x48a20a,_0x30d32f,_0x4c030c,_0x1b2da4);_0x46074a(null);};};