Built motion from commit 44377920.|2.6.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 _0x040a=['format','Forwarding\x20message\x20%d\x20to\x20%s','length','Interaction','omit','POST','method','GET','threadId','inspect','finally','utf8mb4','utf8mb4_unicode_ci','lodash','api','moment','request-promise','path','../../config/environment','./openchannelMessage.attributes','exports','define','OpenchannelMessage','openchannel_messages','fti_openchannel_messages','body','FULLTEXT','get','direction','toLowerCase','out','secret','isNil','UserId','OpenchannelInteractionId','update','createdAt','catch','error','CmContact','find','OpenchannelAccountId','OpenchannelInteraction','Interactions','Contact','keys','then','replyUri','info','OpenchannelMessage,\x20%s,\x20%s','afterCreate'];(function(_0x129839,_0x12aedb){var _0x36634f=function(_0x36f495){while(--_0x36f495){_0x129839['push'](_0x129839['shift']());}};_0x36634f(++_0x12aedb);}(_0x040a,0x13f));var _0xa040=function(_0x35d4e9,_0x298c61){_0x35d4e9=_0x35d4e9-0x0;var _0x5c2770=_0x040a[_0x35d4e9];return _0x5c2770;};'use strict';var _=require(_0xa040('0x0'));var util=require('util');var logger=require('../../config/logger')(_0xa040('0x1'));var moment=require(_0xa040('0x2'));var BPromise=require('bluebird');var rp=require(_0xa040('0x3'));var fs=require('fs');var path=require(_0xa040('0x4'));var rimraf=require('rimraf');var config=require(_0xa040('0x5'));var attributes=require(_0xa040('0x6'));module[_0xa040('0x7')]=function(_0x58ac97,_0xdd23f5){return _0x58ac97[_0xa040('0x8')](_0xa040('0x9'),attributes,{'tableName':_0xa040('0xa'),'paranoid':![],'indexes':[{'name':_0xa040('0xb'),'fields':[_0xa040('0xc')],'type':_0xa040('0xd')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x2a9eab,_0xa07e9f,_0x238276){var _0x4b2f1d=_0x58ac97['models'];var _0x48a1da=_0x2a9eab[_0xa040('0xe')]({'plain':!![]});if(_0x48a1da[_0xa040('0xf')][_0xa040('0x10')]()==='in'||_0x48a1da[_0xa040('0xf')][_0xa040('0x10')]()===_0xa040('0x11')&&!_0x48a1da[_0xa040('0x12')]&&!_[_0xa040('0x13')](_0x48a1da[_0xa040('0x14')])){_0x4b2f1d['OpenchannelInteraction']['findOne']({'where':{'id':_0x48a1da[_0xa040('0x15')]}})['then'](function(_0x39a691){if(_0x39a691){_0x39a691[_0xa040('0x16')]({'lastMsgAt':_0x48a1da[_0xa040('0x17')],'lastMsgDirection':_0x48a1da[_0xa040('0xf')][_0xa040('0x10')]()});}})[_0xa040('0x18')](function(_0x31e0a1){console[_0xa040('0x19')](_0x31e0a1);});}if(_0x48a1da[_0xa040('0xf')]==='out'&&!_0x48a1da[_0xa040('0x12')]){var _0x4f2e42;_0x4b2f1d[_0xa040('0x1a')]['describe']()['then'](function(_0x2cbeae){return _0x4b2f1d['OpenchannelAccount'][_0xa040('0x1b')]({'where':{'id':_0x48a1da[_0xa040('0x1c')]},'include':[{'model':_0x4b2f1d[_0xa040('0x1d')],'as':_0xa040('0x1e'),'where':{'id':_0x48a1da[_0xa040('0x15')]},'limit':0x1,'include':[{'model':_0x4b2f1d[_0xa040('0x1a')],'as':_0xa040('0x1f'),'attributes':_[_0xa040('0x20')](_0x2cbeae)}]}]});})[_0xa040('0x21')](function(_0x50562b){_0x4f2e42=_0x50562b['get']({'plain':!![]});if(_0x4f2e42&&_0x4f2e42[_0xa040('0x22')]){logger[_0xa040('0x23')](_0xa040('0x24'),_0xa040('0x25'),util[_0xa040('0x26')](_0xa040('0x27'),_0x48a1da['id'],_0x4f2e42[_0xa040('0x22')]));if(_0x4f2e42[_0xa040('0x1e')]&&_0x4f2e42[_0xa040('0x1e')][_0xa040('0x28')]){_0x48a1da[_0xa040('0x29')]=_[_0xa040('0x2a')](_0x4f2e42['Interactions'][0x0],'Contact');_0x48a1da[_0xa040('0x1f')]=_0x4f2e42[_0xa040('0x1e')][0x0]['Contact'];}var _0xa07e9f={'method':_0xa040('0x2b'),'uri':encodeURI(_0x4f2e42[_0xa040('0x22')]),'json':!![],'resolveWithFullResponse':!![]};switch(_0xa07e9f[_0xa040('0x2c')]){case _0xa040('0x2d'):_0xa07e9f['qs']=_0x48a1da;break;case'POST':_0xa07e9f['body']=_0x48a1da;break;}return rp(_0xa07e9f)[_0xa040('0x21')](function(_0x4492ba){logger[_0xa040('0x23')](_0xa040('0x24'),_0xa040('0x25'),util[_0xa040('0x26')]('Message\x20%d\x20forwarded\x20to\x20%s',_0x48a1da['id'],_0x4f2e42[_0xa040('0x22')]));if(_0x4492ba[_0xa040('0xc')][_0xa040('0x2e')]&&_0x4492ba[_0xa040('0xc')][_0xa040('0x2e')]!=_0x48a1da['Interaction'][_0xa040('0x2e')]){return _0x4b2f1d[_0xa040('0x1d')][_0xa040('0x16')]({'threadId':_0x4492ba[_0xa040('0xc')][_0xa040('0x2e')]},{'where':{'id':_0x48a1da[_0xa040('0x29')]['id']}});}else{return;}})[_0xa040('0x21')](function(){return _0x2a9eab['update']({'read':!![]});})[_0xa040('0x18')](function(_0x4a8e78){logger['error'](_0xa040('0x24'),'afterCreate',util[_0xa040('0x2f')](_0x4a8e78,{'showHidden':![],'depth':null}));_0x238276();});}else{_0x238276();}})[_0xa040('0x30')](function(){_0x238276();});}else{_0x238276();}}},'charset':_0xa040('0x31'),'collate':_0xa040('0x32')});};