bd412adae8d9c39681cc81a25b48d44d25d636bb
[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 _0xd848=['POST','method','afterCreate','Message\x20%d\x20forwarded\x20to\x20%s','threadId','finally','utf8mb4','utf8mb4_unicode_ci','../../config/logger','api','moment','bluebird','request-promise','path','rimraf','./openchannelMessage.attributes','exports','define','openchannel_messages','body','FULLTEXT','models','direction','toLowerCase','out','secret','isNil','UserId','OpenchannelInteraction','findOne','OpenchannelInteractionId','then','update','createdAt','catch','error','CmContact','describe','find','OpenchannelAccountId','Interactions','Contact','get','replyUri','info','OpenchannelMessage,\x20%s,\x20%s','format','Forwarding\x20message\x20%d\x20to\x20%s','length','Interaction','omit'];(function(_0x5438b6,_0x446306){var _0x4680fa=function(_0x52b998){while(--_0x52b998){_0x5438b6['push'](_0x5438b6['shift']());}};_0x4680fa(++_0x446306);}(_0xd848,0xa1));var _0x8d84=function(_0x1fd155,_0x340af9){_0x1fd155=_0x1fd155-0x0;var _0x250e2f=_0xd848[_0x1fd155];return _0x250e2f;};'use strict';var _=require('lodash');var util=require('util');var logger=require(_0x8d84('0x0'))(_0x8d84('0x1'));var moment=require(_0x8d84('0x2'));var BPromise=require(_0x8d84('0x3'));var rp=require(_0x8d84('0x4'));var fs=require('fs');var path=require(_0x8d84('0x5'));var rimraf=require(_0x8d84('0x6'));var config=require('../../config/environment');var attributes=require(_0x8d84('0x7'));module[_0x8d84('0x8')]=function(_0x34b141,_0x17fca6){return _0x34b141[_0x8d84('0x9')]('OpenchannelMessage',attributes,{'tableName':_0x8d84('0xa'),'paranoid':![],'indexes':[{'name':'fti_openchannel_messages','fields':[_0x8d84('0xb')],'type':_0x8d84('0xc')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x7745a5,_0x229a23,_0x33b5ac){var _0x32a357=_0x34b141[_0x8d84('0xd')];var _0x547e30=_0x7745a5['get']({'plain':!![]});if(_0x547e30[_0x8d84('0xe')][_0x8d84('0xf')]()==='in'||_0x547e30[_0x8d84('0xe')][_0x8d84('0xf')]()===_0x8d84('0x10')&&!_0x547e30[_0x8d84('0x11')]&&!_[_0x8d84('0x12')](_0x547e30[_0x8d84('0x13')])){_0x32a357[_0x8d84('0x14')][_0x8d84('0x15')]({'where':{'id':_0x547e30[_0x8d84('0x16')]}})[_0x8d84('0x17')](function(_0x5e5170){if(_0x5e5170){_0x5e5170[_0x8d84('0x18')]({'lastMsgAt':_0x547e30[_0x8d84('0x19')],'lastMsgDirection':_0x547e30[_0x8d84('0xe')][_0x8d84('0xf')]()});}})[_0x8d84('0x1a')](function(_0x5333d8){console[_0x8d84('0x1b')](_0x5333d8);});}if(_0x547e30[_0x8d84('0xe')]===_0x8d84('0x10')&&!_0x547e30[_0x8d84('0x11')]){var _0x159602;_0x32a357[_0x8d84('0x1c')][_0x8d84('0x1d')]()['then'](function(_0x354338){return _0x32a357['OpenchannelAccount'][_0x8d84('0x1e')]({'where':{'id':_0x547e30[_0x8d84('0x1f')]},'include':[{'model':_0x32a357[_0x8d84('0x14')],'as':_0x8d84('0x20'),'where':{'id':_0x547e30['OpenchannelInteractionId']},'limit':0x1,'include':[{'model':_0x32a357[_0x8d84('0x1c')],'as':_0x8d84('0x21'),'attributes':_['keys'](_0x354338)}]}]});})[_0x8d84('0x17')](function(_0x22d9c4){_0x159602=_0x22d9c4[_0x8d84('0x22')]({'plain':!![]});if(_0x159602&&_0x159602[_0x8d84('0x23')]){logger[_0x8d84('0x24')](_0x8d84('0x25'),'afterCreate',util[_0x8d84('0x26')](_0x8d84('0x27'),_0x547e30['id'],_0x159602[_0x8d84('0x23')]));if(_0x159602[_0x8d84('0x20')]&&_0x159602[_0x8d84('0x20')][_0x8d84('0x28')]){_0x547e30[_0x8d84('0x29')]=_[_0x8d84('0x2a')](_0x159602[_0x8d84('0x20')][0x0],'Contact');_0x547e30[_0x8d84('0x21')]=_0x159602['Interactions'][0x0]['Contact'];}var _0x229a23={'method':_0x8d84('0x2b'),'uri':encodeURI(_0x159602[_0x8d84('0x23')]),'json':!![],'resolveWithFullResponse':!![]};switch(_0x229a23[_0x8d84('0x2c')]){case'GET':_0x229a23['qs']=_0x547e30;break;case _0x8d84('0x2b'):_0x229a23['body']=_0x547e30;break;}return rp(_0x229a23)[_0x8d84('0x17')](function(_0x14dea3){logger[_0x8d84('0x24')](_0x8d84('0x25'),_0x8d84('0x2d'),util[_0x8d84('0x26')](_0x8d84('0x2e'),_0x547e30['id'],_0x159602[_0x8d84('0x23')]));if(_0x14dea3[_0x8d84('0xb')][_0x8d84('0x2f')]&&_0x14dea3['body'][_0x8d84('0x2f')]!=_0x547e30['Interaction']['threadId']){return _0x32a357[_0x8d84('0x14')][_0x8d84('0x18')]({'threadId':_0x14dea3[_0x8d84('0xb')][_0x8d84('0x2f')]},{'logging':!![],'where':{'id':_0x547e30[_0x8d84('0x29')]['id']}});}else{return;}})[_0x8d84('0x17')](function(){return _0x7745a5[_0x8d84('0x18')]({'read':!![]});})['catch'](function(_0x265921){logger[_0x8d84('0x1b')](_0x8d84('0x25'),'afterCreate',util['inspect'](_0x265921,{'showHidden':![],'depth':null}));_0x33b5ac();});}else{_0x33b5ac();}})[_0x8d84('0x30')](function(){_0x33b5ac();});}else{_0x33b5ac();}}},'charset':_0x8d84('0x31'),'collate':_0x8d84('0x32')});};