Built motion from commit (unavailable).|2.5.21
[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 _0x1140=['replyUri','OpenchannelMessage,\x20%s,\x20%s','afterCreate','format','Forwarding\x20message\x20%d\x20to\x20%s','Interactions','length','omit','POST','method','GET','info','Message\x20%d\x20forwarded\x20to\x20%s','threadId','Interaction','inspect','finally','utf8mb4','utf8mb4_unicode_ci','lodash','util','../../config/logger','api','moment','bluebird','request-promise','path','../../config/environment','./openchannelMessage.attributes','exports','define','OpenchannelMessage','body','FULLTEXT','models','get','direction','toLowerCase','out','secret','isNil','OpenchannelInteraction','OpenchannelInteractionId','update','createdAt','catch','error','then','OpenchannelAccountId','Contact','keys'];(function(_0x2ba9ac,_0xa1fdc4){var _0x1b0fc9=function(_0x4343de){while(--_0x4343de){_0x2ba9ac['push'](_0x2ba9ac['shift']());}};_0x1b0fc9(++_0xa1fdc4);}(_0x1140,0xac));var _0x0114=function(_0xf96a8,_0x4ecdb6){_0xf96a8=_0xf96a8-0x0;var _0x24e1ab=_0x1140[_0xf96a8];return _0x24e1ab;};'use strict';var _=require(_0x0114('0x0'));var util=require(_0x0114('0x1'));var logger=require(_0x0114('0x2'))(_0x0114('0x3'));var moment=require(_0x0114('0x4'));var BPromise=require(_0x0114('0x5'));var rp=require(_0x0114('0x6'));var fs=require('fs');var path=require(_0x0114('0x7'));var rimraf=require('rimraf');var config=require(_0x0114('0x8'));var attributes=require(_0x0114('0x9'));module[_0x0114('0xa')]=function(_0x118aa7,_0x26dabc){return _0x118aa7[_0x0114('0xb')](_0x0114('0xc'),attributes,{'tableName':'openchannel_messages','paranoid':![],'indexes':[{'name':'fti_openchannel_messages','fields':[_0x0114('0xd')],'type':_0x0114('0xe')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x1e5eb6,_0x49bb22,_0x557b6e){var _0x30f3f4=_0x118aa7[_0x0114('0xf')];var _0x41b1fb=_0x1e5eb6[_0x0114('0x10')]({'plain':!![]});if(_0x41b1fb[_0x0114('0x11')][_0x0114('0x12')]()==='in'||_0x41b1fb[_0x0114('0x11')]['toLowerCase']()===_0x0114('0x13')&&!_0x41b1fb[_0x0114('0x14')]&&!_[_0x0114('0x15')](_0x41b1fb['UserId'])){_0x30f3f4[_0x0114('0x16')]['findOne']({'where':{'id':_0x41b1fb[_0x0114('0x17')]}})['then'](function(_0x253a27){if(_0x253a27){_0x253a27[_0x0114('0x18')]({'lastMsgAt':_0x41b1fb[_0x0114('0x19')],'lastMsgDirection':_0x41b1fb[_0x0114('0x11')][_0x0114('0x12')]()});}})[_0x0114('0x1a')](function(_0x5c78f0){console[_0x0114('0x1b')](_0x5c78f0);});}if(_0x41b1fb['direction']===_0x0114('0x13')&&!_0x41b1fb[_0x0114('0x14')]){var _0x37e014;_0x30f3f4['CmContact']['describe']()[_0x0114('0x1c')](function(_0x3ffdd1){return _0x30f3f4['OpenchannelAccount']['find']({'where':{'id':_0x41b1fb[_0x0114('0x1d')]},'include':[{'model':_0x30f3f4['OpenchannelInteraction'],'as':'Interactions','where':{'id':_0x41b1fb[_0x0114('0x17')]},'limit':0x1,'include':[{'model':_0x30f3f4['CmContact'],'as':_0x0114('0x1e'),'attributes':_[_0x0114('0x1f')](_0x3ffdd1)}]}]});})[_0x0114('0x1c')](function(_0x25b0e9){_0x37e014=_0x25b0e9[_0x0114('0x10')]({'plain':!![]});if(_0x37e014&&_0x37e014[_0x0114('0x20')]){logger['info'](_0x0114('0x21'),_0x0114('0x22'),util[_0x0114('0x23')](_0x0114('0x24'),_0x41b1fb['id'],_0x37e014[_0x0114('0x20')]));if(_0x37e014[_0x0114('0x25')]&&_0x37e014[_0x0114('0x25')][_0x0114('0x26')]){_0x41b1fb['Interaction']=_[_0x0114('0x27')](_0x37e014[_0x0114('0x25')][0x0],'Contact');_0x41b1fb[_0x0114('0x1e')]=_0x37e014[_0x0114('0x25')][0x0]['Contact'];}var _0x49bb22={'method':_0x0114('0x28'),'uri':encodeURI(_0x37e014[_0x0114('0x20')]),'json':!![],'resolveWithFullResponse':!![]};switch(_0x49bb22[_0x0114('0x29')]){case _0x0114('0x2a'):_0x49bb22['qs']=_0x41b1fb;break;case _0x0114('0x28'):_0x49bb22[_0x0114('0xd')]=_0x41b1fb;break;}return rp(_0x49bb22)[_0x0114('0x1c')](function(_0x365a85){logger[_0x0114('0x2b')](_0x0114('0x21'),_0x0114('0x22'),util['format'](_0x0114('0x2c'),_0x41b1fb['id'],_0x37e014[_0x0114('0x20')]));if(_0x365a85[_0x0114('0xd')][_0x0114('0x2d')]&&_0x365a85['body'][_0x0114('0x2d')]!=_0x41b1fb[_0x0114('0x2e')][_0x0114('0x2d')]){return _0x30f3f4[_0x0114('0x16')][_0x0114('0x18')]({'threadId':_0x365a85[_0x0114('0xd')][_0x0114('0x2d')]},{'logging':!![],'where':{'id':_0x41b1fb[_0x0114('0x2e')]['id']}});}else{return;}})[_0x0114('0x1c')](function(){return _0x1e5eb6['update']({'read':!![]});})[_0x0114('0x1a')](function(_0x13dc05){logger[_0x0114('0x1b')]('OpenchannelMessage,\x20%s,\x20%s',_0x0114('0x22'),util[_0x0114('0x2f')](_0x13dc05,{'showHidden':![],'depth':null}));_0x557b6e();});}else{_0x557b6e();}})[_0x0114('0x30')](function(){_0x557b6e();});}else{_0x557b6e();}}},'charset':_0x0114('0x31'),'collate':_0x0114('0x32')});};