b9563f59187f3e6b953de10e89c9aee3cf2218c2
[motion2.git] / server / api / openchannelMessage / openchannelMessage.model.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 _0x1ace=['bluebird','request-promise','path','../../config/environment','./openchannelMessage.attributes','exports','define','OpenchannelMessage','openchannel_messages','body','models','get','direction','toLowerCase','out','isNil','UserId','OpenchannelInteraction','then','update','createdAt','error','CmContact','describe','OpenchannelAccount','OpenchannelAccountId','Interactions','OpenchannelInteractionId','Contact','keys','replyUri','info','OpenchannelMessage,\x20%s,\x20%s','afterCreate','format','length','omit','POST','method','Message\x20%d\x20forwarded\x20to\x20%s','threadId','Interaction','catch','inspect','utf8mb4','utf8mb4_unicode_ci','lodash','../../config/logger','api','moment'];(function(_0x397e5f,_0x454c8f){var _0x5302b8=function(_0x1a29ef){while(--_0x1a29ef){_0x397e5f['push'](_0x397e5f['shift']());}};_0x5302b8(++_0x454c8f);}(_0x1ace,0xc4));var _0xe1ac=function(_0x4254ca,_0x428eee){_0x4254ca=_0x4254ca-0x0;var _0x12f693=_0x1ace[_0x4254ca];return _0x12f693;};'use strict';var _=require(_0xe1ac('0x0'));var util=require('util');var logger=require(_0xe1ac('0x1'))(_0xe1ac('0x2'));var moment=require(_0xe1ac('0x3'));var BPromise=require(_0xe1ac('0x4'));var rp=require(_0xe1ac('0x5'));var fs=require('fs');var path=require(_0xe1ac('0x6'));var rimraf=require('rimraf');var config=require(_0xe1ac('0x7'));var attributes=require(_0xe1ac('0x8'));module[_0xe1ac('0x9')]=function(_0x588d90,_0x9885c8){return _0x588d90[_0xe1ac('0xa')](_0xe1ac('0xb'),attributes,{'tableName':_0xe1ac('0xc'),'paranoid':![],'indexes':[{'name':'fti_openchannel_messages','fields':[_0xe1ac('0xd')],'type':'FULLTEXT'}],'timestamps':!![],'hooks':{'afterCreate':function(_0x4605d0,_0x161de5,_0x5fa502){var _0xa5c311=_0x588d90[_0xe1ac('0xe')];var _0x5918c7=_0x4605d0[_0xe1ac('0xf')]({'plain':!![]});if(_0x5918c7[_0xe1ac('0x10')][_0xe1ac('0x11')]()==='in'||_0x5918c7[_0xe1ac('0x10')][_0xe1ac('0x11')]()===_0xe1ac('0x12')&&!_0x5918c7['secret']&&!_[_0xe1ac('0x13')](_0x5918c7[_0xe1ac('0x14')])){_0xa5c311[_0xe1ac('0x15')]['findOne']({'where':{'id':_0x5918c7['OpenchannelInteractionId']}})[_0xe1ac('0x16')](function(_0x25f8bf){if(_0x25f8bf){_0x25f8bf[_0xe1ac('0x17')]({'lastMsgAt':_0x5918c7[_0xe1ac('0x18')],'lastMsgDirection':_0x5918c7[_0xe1ac('0x10')][_0xe1ac('0x11')]()});}})['catch'](function(_0x7988a6){console[_0xe1ac('0x19')](_0x7988a6);});}if(_0x5918c7[_0xe1ac('0x10')]==='out'&&!_0x5918c7['secret']){var _0x2fd3d7;_0xa5c311[_0xe1ac('0x1a')][_0xe1ac('0x1b')]()['then'](function(_0x181c1c){return _0xa5c311[_0xe1ac('0x1c')]['find']({'where':{'id':_0x5918c7[_0xe1ac('0x1d')]},'include':[{'model':_0xa5c311[_0xe1ac('0x15')],'as':_0xe1ac('0x1e'),'where':{'id':_0x5918c7[_0xe1ac('0x1f')]},'limit':0x1,'include':[{'model':_0xa5c311[_0xe1ac('0x1a')],'as':_0xe1ac('0x20'),'attributes':_[_0xe1ac('0x21')](_0x181c1c)}]}]});})[_0xe1ac('0x16')](function(_0x5bb8ad){_0x2fd3d7=_0x5bb8ad['get']({'plain':!![]});if(_0x2fd3d7&&_0x2fd3d7[_0xe1ac('0x22')]){logger[_0xe1ac('0x23')](_0xe1ac('0x24'),_0xe1ac('0x25'),util[_0xe1ac('0x26')]('Forwarding\x20message\x20%d\x20to\x20%s',_0x5918c7['id'],_0x2fd3d7[_0xe1ac('0x22')]));if(_0x2fd3d7[_0xe1ac('0x1e')]&&_0x2fd3d7[_0xe1ac('0x1e')][_0xe1ac('0x27')]){_0x5918c7['Interaction']=_[_0xe1ac('0x28')](_0x2fd3d7[_0xe1ac('0x1e')][0x0],_0xe1ac('0x20'));_0x5918c7[_0xe1ac('0x20')]=_0x2fd3d7['Interactions'][0x0][_0xe1ac('0x20')];}var _0x161de5={'method':_0xe1ac('0x29'),'uri':encodeURI(_0x2fd3d7[_0xe1ac('0x22')]),'json':!![],'resolveWithFullResponse':!![]};switch(_0x161de5[_0xe1ac('0x2a')]){case'GET':_0x161de5['qs']=_0x5918c7;break;case'POST':_0x161de5[_0xe1ac('0xd')]=_0x5918c7;break;}return rp(_0x161de5)[_0xe1ac('0x16')](function(_0x61a4b1){logger[_0xe1ac('0x23')]('OpenchannelMessage,\x20%s,\x20%s',_0xe1ac('0x25'),util[_0xe1ac('0x26')](_0xe1ac('0x2b'),_0x5918c7['id'],_0x2fd3d7[_0xe1ac('0x22')]));if(_0x61a4b1[_0xe1ac('0xd')][_0xe1ac('0x2c')]&&_0x61a4b1[_0xe1ac('0xd')][_0xe1ac('0x2c')]!=_0x5918c7['Interaction']['threadId']){return _0xa5c311[_0xe1ac('0x15')][_0xe1ac('0x17')]({'threadId':_0x61a4b1[_0xe1ac('0xd')]['threadId']},{'logging':!![],'where':{'id':_0x5918c7[_0xe1ac('0x2d')]['id']}});}else{return;}})[_0xe1ac('0x16')](function(){return _0x4605d0[_0xe1ac('0x17')]({'read':!![]});})[_0xe1ac('0x2e')](function(_0x586da4){logger[_0xe1ac('0x19')]('OpenchannelMessage,\x20%s,\x20%s',_0xe1ac('0x25'),util[_0xe1ac('0x2f')](_0x586da4,{'showHidden':![],'depth':null}));_0x5fa502();});}else{_0x5fa502();}})['finally'](function(){_0x5fa502();});}else{_0x5fa502();}}},'charset':_0xe1ac('0x30'),'collate':_0xe1ac('0x31')});};