Built motion from commit (unavailable).|2.5.11
[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 _0xd70f=['utf8mb4','utf8mb4_unicode_ci','lodash','util','../../config/logger','moment','bluebird','rimraf','../../config/environment','./openchannelMessage.attributes','exports','define','openchannel_messages','fti_openchannel_messages','body','models','get','direction','toLowerCase','secret','isNil','OpenchannelInteraction','findOne','then','update','createdAt','catch','error','CmContact','describe','OpenchannelAccount','OpenchannelAccountId','OpenchannelInteractionId','keys','replyUri','info','afterCreate','format','Interactions','length','Interaction','Contact','POST','method','Message\x20%d\x20forwarded\x20to\x20%s','threadId','OpenchannelMessage,\x20%s,\x20%s','inspect'];(function(_0x4deff,_0x42c328){var _0x440123=function(_0x2d7dde){while(--_0x2d7dde){_0x4deff['push'](_0x4deff['shift']());}};_0x440123(++_0x42c328);}(_0xd70f,0xc2));var _0xfd70=function(_0x1389a4,_0x3f411d){_0x1389a4=_0x1389a4-0x0;var _0x44b4c9=_0xd70f[_0x1389a4];return _0x44b4c9;};'use strict';var _=require(_0xfd70('0x0'));var util=require(_0xfd70('0x1'));var logger=require(_0xfd70('0x2'))('api');var moment=require(_0xfd70('0x3'));var BPromise=require(_0xfd70('0x4'));var rp=require('request-promise');var fs=require('fs');var path=require('path');var rimraf=require(_0xfd70('0x5'));var config=require(_0xfd70('0x6'));var attributes=require(_0xfd70('0x7'));module[_0xfd70('0x8')]=function(_0x2b97ec,_0x47c50f){return _0x2b97ec[_0xfd70('0x9')]('OpenchannelMessage',attributes,{'tableName':_0xfd70('0xa'),'paranoid':![],'indexes':[{'name':_0xfd70('0xb'),'fields':[_0xfd70('0xc')],'type':'FULLTEXT'}],'timestamps':!![],'hooks':{'afterCreate':function(_0x31ac4e,_0x1196d4,_0x78708b){var _0x2a0b5b=_0x2b97ec[_0xfd70('0xd')];var _0x81124=_0x31ac4e[_0xfd70('0xe')]({'plain':!![]});if(_0x81124[_0xfd70('0xf')]['toLowerCase']()==='in'||_0x81124[_0xfd70('0xf')][_0xfd70('0x10')]()==='out'&&!_0x81124[_0xfd70('0x11')]&&!_[_0xfd70('0x12')](_0x81124['UserId'])){_0x2a0b5b[_0xfd70('0x13')][_0xfd70('0x14')]({'where':{'id':_0x81124['OpenchannelInteractionId']}})[_0xfd70('0x15')](function(_0x50b387){if(_0x50b387){_0x50b387[_0xfd70('0x16')]({'lastMsgAt':_0x81124[_0xfd70('0x17')],'lastMsgDirection':_0x81124[_0xfd70('0xf')][_0xfd70('0x10')]()});}})[_0xfd70('0x18')](function(_0x5cb32a){console[_0xfd70('0x19')](_0x5cb32a);});}if(_0x81124['direction']==='out'&&!_0x81124[_0xfd70('0x11')]){var _0x45ac18;_0x2a0b5b[_0xfd70('0x1a')][_0xfd70('0x1b')]()['then'](function(_0x397df2){return _0x2a0b5b[_0xfd70('0x1c')]['find']({'where':{'id':_0x81124[_0xfd70('0x1d')]},'include':[{'model':_0x2a0b5b[_0xfd70('0x13')],'as':'Interactions','where':{'id':_0x81124[_0xfd70('0x1e')]},'limit':0x1,'include':[{'model':_0x2a0b5b[_0xfd70('0x1a')],'as':'Contact','attributes':_[_0xfd70('0x1f')](_0x397df2)}]}]});})['then'](function(_0xd24edd){_0x45ac18=_0xd24edd[_0xfd70('0xe')]({'plain':!![]});if(_0x45ac18&&_0x45ac18[_0xfd70('0x20')]){logger[_0xfd70('0x21')]('OpenchannelMessage,\x20%s,\x20%s',_0xfd70('0x22'),util[_0xfd70('0x23')]('Forwarding\x20message\x20%d\x20to\x20%s',_0x81124['id'],_0x45ac18['replyUri']));if(_0x45ac18['Interactions']&&_0x45ac18[_0xfd70('0x24')][_0xfd70('0x25')]){_0x81124[_0xfd70('0x26')]=_['omit'](_0x45ac18[_0xfd70('0x24')][0x0],'Contact');_0x81124[_0xfd70('0x27')]=_0x45ac18[_0xfd70('0x24')][0x0][_0xfd70('0x27')];}var _0x1196d4={'method':_0xfd70('0x28'),'uri':encodeURI(_0x45ac18['replyUri']),'json':!![],'resolveWithFullResponse':!![]};switch(_0x1196d4[_0xfd70('0x29')]){case'GET':_0x1196d4['qs']=_0x81124;break;case'POST':_0x1196d4[_0xfd70('0xc')]=_0x81124;break;}return rp(_0x1196d4)[_0xfd70('0x15')](function(_0xe43279){logger[_0xfd70('0x21')]('OpenchannelMessage,\x20%s,\x20%s',_0xfd70('0x22'),util[_0xfd70('0x23')](_0xfd70('0x2a'),_0x81124['id'],_0x45ac18['replyUri']));if(_0xe43279['body'][_0xfd70('0x2b')]&&_0xe43279['body'][_0xfd70('0x2b')]!=_0x81124[_0xfd70('0x26')]['threadId']){return _0x2a0b5b[_0xfd70('0x13')][_0xfd70('0x16')]({'threadId':_0xe43279[_0xfd70('0xc')]['threadId']},{'logging':!![],'where':{'id':_0x81124[_0xfd70('0x26')]['id']}});}else{return;}})[_0xfd70('0x15')](function(){return _0x31ac4e[_0xfd70('0x16')]({'read':!![]});})['catch'](function(_0x1fb955){logger[_0xfd70('0x19')](_0xfd70('0x2c'),_0xfd70('0x22'),util[_0xfd70('0x2d')](_0x1fb955,{'showHidden':![],'depth':null}));_0x78708b();});}else{_0x78708b();}})['finally'](function(){_0x78708b();});}else{_0x78708b();}}},'charset':_0xfd70('0x2e'),'collate':_0xfd70('0x2f')});};