e47f4bbe60d1fd8092f623619ad153f64856b362
[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 _0xe97d=['mobile','../../mysqldb','../../config/logger','openchannel-interactions','mail-interactions','sms-interactions','chat-interactions','whatsapp-interactions','upperFirst','InteractionId','unknown','toLowerCase','[%s]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','toUpperCase','name','stringify','null','Interaction','findOne','then','update','info','catch','error','tracked','user','query','clone','html','fax'];(function(_0x178856,_0x41f045){var _0x3c7fe7=function(_0x4d9ce4){while(--_0x4d9ce4){_0x178856['push'](_0x178856['shift']());}};_0x3c7fe7(++_0x41f045);}(_0xe97d,0x1e1));var _0xde97=function(_0x38fefe,_0x1236e3){_0x38fefe=_0x38fefe-0x0;var _0x1601d0=_0xe97d[_0x38fefe];return _0x1601d0;};'use strict';var _=require('lodash');var db=require(_0xde97('0x0'))['db'];var loggers={'openchannel':require(_0xde97('0x1'))(_0xde97('0x2')),'mail':require(_0xde97('0x1'))(_0xde97('0x3')),'fax':require(_0xde97('0x1'))('fax-interactions'),'sms':require(_0xde97('0x1'))(_0xde97('0x4')),'chat':require(_0xde97('0x1'))(_0xde97('0x5')),'whatsapp':require(_0xde97('0x1'))(_0xde97('0x6'))};function getInteractionId(_0x57574e,_0x37e95a,_0x408c5e){if(_0x57574e&&_0x57574e[_[_0xde97('0x7')](_0x408c5e)+_0xde97('0x8')]){return _0x57574e[_[_0xde97('0x7')](_0x408c5e)+'InteractionId'];}else if(_0x57574e&&_0x57574e['id']){return _0x57574e['id'];}else if(_0x37e95a&&_0x37e95a['id']){return _0x37e95a['id'];}else{return _0xde97('0x9');}}function log(_0x2e6b5b,_0x37cb02,_0x220eaf,_0xe52beb,_0x27d98b,_0x3acb53){loggers[_0x27d98b[_0xde97('0xa')]()][_0x2e6b5b](_0xde97('0xb'),_0x3acb53[_0xde97('0xc')](),_0x37cb02?_0x37cb02['id']:null,_0x37cb02?_0x37cb02[_0xde97('0xd')]:null,_0x37cb02?_0x37cb02['role']:null,getInteractionId(_0x220eaf,_0xe52beb,_0x27d98b),_0x220eaf?JSON[_0xde97('0xe')](_0x220eaf):_0xde97('0xf'));}function updateUser(_0x39fcb3,_0x1d6935,_0xabbd3e,_0x373873,_0x20b02e){db[_[_0xde97('0x7')](_0x373873)+_0xde97('0x10')][_0xde97('0x11')]({'where':{'id':getInteractionId(_0x1d6935,_0xabbd3e,_0x373873)}})[_0xde97('0x12')](function(_0x1e6014){if(_0x1e6014){return _0x1e6014[_0xde97('0x13')]({'UserId':_0x39fcb3?_0x39fcb3['id']:null});}})['then'](function(_0x1dd991){if(_0x1dd991){log(_0xde97('0x14'),_0x39fcb3,_0x1d6935,_0xabbd3e,_0x373873,_0x20b02e);}})[_0xde97('0x15')](function(){log(_0xde97('0x16'),_0x39fcb3,_0x1d6935,_0xabbd3e,_0x373873,_0x20b02e);});}exports[_0xde97('0x17')]=function(_0x57f8cf,_0x22e4a0){return function(_0x4c9748,_0x401f59,_0x98286c){var _0x128c27=_0x4c9748[_0xde97('0x18')];var _0x5a0263={};var _0x60d998=_0x4c9748[_0xde97('0x19')];if(_0x5a0263){_0x5a0263=_[_0xde97('0x1a')](_0x4c9748['body']);_0x5a0263=_['omit'](_0x5a0263,['body',_0xde97('0x1b'),'phone',_0xde97('0x1c'),_0xde97('0x1d')]);}updateUser(_0x128c27,_0x5a0263,_0x60d998,_0x57f8cf,_0x22e4a0);_0x98286c(null);};};