cbdcf6288dad745eb27c1d6c5a63c77efeea8db2
[motion2.git] / server / components / interaction / utils.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 _0xc0d8=['null','findOne','then','update','catch','error','lodash','../../mysqldb','openchannel-interactions','../../config/logger','chat','capitalize','InteractionId','upperFirst','unknown','websites','accounts','_interactions','_interaction_has_tags','user_has_','toLowerCase','toUpperCase','name','stringify'];(function(_0x29f9ae,_0x362a8e){var _0x3954f2=function(_0x50ad2a){while(--_0x50ad2a){_0x29f9ae['push'](_0x29f9ae['shift']());}};_0x3954f2(++_0x362a8e);}(_0xc0d8,0xae));var _0x8c0d=function(_0x243e72,_0x55e1c8){_0x243e72=_0x243e72-0x0;var _0x20d1b1=_0xc0d8[_0x243e72];return _0x20d1b1;};'use strict';var _=require(_0x8c0d('0x0'));var db=require(_0x8c0d('0x1'))['db'];var loggers={'openchannel':require('../../config/logger')(_0x8c0d('0x2')),'mail':require(_0x8c0d('0x3'))('mail-interactions'),'fax':require('../../config/logger')('fax-interactions'),'sms':require(_0x8c0d('0x3'))('sms-interactions'),'chat':require(_0x8c0d('0x3'))('chat-interactions'),'whatsapp':require('../../config/logger')('whatsapp-interactions')};function getAccountFK(_0x231ed4){return _['capitalize'](_0x231ed4)+(_0x231ed4===_0x8c0d('0x4')?'Website':'Account')+'Id';}function getInteractionFK(_0x2313b9){return _[_0x8c0d('0x5')](_0x2313b9)+_0x8c0d('0x6');}function getInteractionId(_0x19b3d6,_0x5a884d,_0x4988a9){if(_0x19b3d6&&_0x19b3d6[_[_0x8c0d('0x7')](_0x4988a9)+'InteractionId']){return _0x19b3d6[_[_0x8c0d('0x7')](_0x4988a9)+_0x8c0d('0x6')];}else if(_0x19b3d6&&_0x19b3d6['id']){return _0x19b3d6['id'];}else if(_0x5a884d&&_0x5a884d['id']){return _0x5a884d['id'];}else{return _0x8c0d('0x8');}}function getInteractionsTables(_0x416a80){return{'accounts':_0x416a80+'_'+(_0x416a80==='chat'?_0x8c0d('0x9'):_0x8c0d('0xa')),'interactions':_0x416a80+_0x8c0d('0xb'),'interactionsTags':_0x416a80+_0x8c0d('0xc'),'messages':_0x416a80+'_messages','userInteractions':_0x8c0d('0xd')+_0x416a80+_0x8c0d('0xb')};}function getSelectedTags(_0x297632){var _0x1ac6e3=[];if(_0x297632){_0x1ac6e3=Array['isArray'](_0x297632)?_0x297632:[_0x297632];}return _0x1ac6e3;}function log(_0x4b97ee,_0x3cd5be,_0x36a3ea,_0x1d237e,_0x5e2ca7,_0x1a3df0){loggers[_0x5e2ca7[_0x8c0d('0xe')]()][_0x4b97ee]('[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x1a3df0[_0x8c0d('0xf')](),_0x3cd5be?_0x3cd5be['id']:null,_0x3cd5be?_0x3cd5be[_0x8c0d('0x10')]:null,_0x3cd5be?_0x3cd5be['role']:null,getInteractionId(_0x36a3ea,_0x1d237e,_0x5e2ca7),_0x36a3ea?JSON[_0x8c0d('0x11')](_0x36a3ea):_0x8c0d('0x12'));}function updateUser(_0x130dc5,_0x193ae6,_0x14fcd1,_0x2116ea,_0x3abe67){db[_[_0x8c0d('0x7')](_0x2116ea)+'Interaction'][_0x8c0d('0x13')]({'where':{'id':getInteractionId(_0x193ae6,_0x14fcd1,_0x2116ea)}})[_0x8c0d('0x14')](function(_0x51ef82){if(_0x51ef82){return _0x51ef82[_0x8c0d('0x15')]({'UserId':_0x130dc5?_0x130dc5['id']:null});}})[_0x8c0d('0x14')](function(_0x33bac4){if(_0x33bac4){log('info',_0x130dc5,_0x193ae6,_0x14fcd1,_0x2116ea,_0x3abe67);}})[_0x8c0d('0x16')](function(){log(_0x8c0d('0x17'),_0x130dc5,_0x193ae6,_0x14fcd1,_0x2116ea,_0x3abe67);});}module['exports']={'getAccountFK':getAccountFK,'getInteractionFK':getInteractionFK,'getInteractionsTables':getInteractionsTables,'getSelectedTags':getSelectedTags,'updateUser':updateUser};