Built motion from commit (unavailable).|2.4.18
[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 _0x78b7=['moment','request-promise','path','rimraf','../../config/environment','exports','define','OpenchannelMessage','openchannel_messages','fti_openchannel_messages','body','models','get','direction','toLowerCase','out','secret','UserId','then','createdAt','describe','OpenchannelAccount','OpenchannelAccountId','OpenchannelInteraction','Interactions','CmContact','Contact','info','afterCreate','format','replyUri','length','Interaction','omit','POST','method','GET','Message\x20%d\x20forwarded\x20to\x20%s','threadId','update','catch','error','OpenchannelMessage,\x20%s,\x20%s','utf8mb4','lodash','util','../../config/logger','api'];(function(_0x4f0bdf,_0x5987f3){var _0x5dddac=function(_0x36913d){while(--_0x36913d){_0x4f0bdf['push'](_0x4f0bdf['shift']());}};_0x5dddac(++_0x5987f3);}(_0x78b7,0x1dc));var _0x778b=function(_0x357588,_0x4cb7a5){_0x357588=_0x357588-0x0;var _0x118264=_0x78b7[_0x357588];return _0x118264;};'use strict';var _=require(_0x778b('0x0'));var util=require(_0x778b('0x1'));var logger=require(_0x778b('0x2'))(_0x778b('0x3'));var moment=require(_0x778b('0x4'));var BPromise=require('bluebird');var rp=require(_0x778b('0x5'));var fs=require('fs');var path=require(_0x778b('0x6'));var rimraf=require(_0x778b('0x7'));var config=require(_0x778b('0x8'));var attributes=require('./openchannelMessage.attributes');module[_0x778b('0x9')]=function(_0x3fb367,_0x42cd40){return _0x3fb367[_0x778b('0xa')](_0x778b('0xb'),attributes,{'tableName':_0x778b('0xc'),'paranoid':![],'indexes':[{'name':_0x778b('0xd'),'fields':[_0x778b('0xe')],'type':'FULLTEXT'}],'timestamps':!![],'hooks':{'afterCreate':function(_0x36dbdf,_0x4983cf,_0x509154){var _0x3a4788=_0x3fb367[_0x778b('0xf')];var _0x79065b=_0x36dbdf[_0x778b('0x10')]({'plain':!![]});if(_0x79065b[_0x778b('0x11')][_0x778b('0x12')]()==='in'||_0x79065b[_0x778b('0x11')]['toLowerCase']()===_0x778b('0x13')&&!_0x79065b[_0x778b('0x14')]&&!_['isNil'](_0x79065b[_0x778b('0x15')])){_0x3a4788['OpenchannelInteraction']['findOne']({'where':{'id':_0x79065b['OpenchannelInteractionId']}})[_0x778b('0x16')](function(_0x3f2f6c){if(_0x3f2f6c){_0x3f2f6c['update']({'lastMsgAt':_0x79065b[_0x778b('0x17')],'lastMsgDirection':_0x79065b[_0x778b('0x11')][_0x778b('0x12')]()});}})['catch'](function(_0x29e0de){console['error'](_0x29e0de);});}if(_0x79065b[_0x778b('0x11')]===_0x778b('0x13')&&!_0x79065b['secret']){var _0x3e8af4;_0x3a4788['CmContact'][_0x778b('0x18')]()['then'](function(_0xf75cb7){return _0x3a4788[_0x778b('0x19')]['find']({'where':{'id':_0x79065b[_0x778b('0x1a')]},'include':[{'model':_0x3a4788[_0x778b('0x1b')],'as':_0x778b('0x1c'),'where':{'id':_0x79065b['OpenchannelInteractionId']},'limit':0x1,'include':[{'model':_0x3a4788[_0x778b('0x1d')],'as':_0x778b('0x1e'),'attributes':_['keys'](_0xf75cb7)}]}]});})['then'](function(_0x364fd5){_0x3e8af4=_0x364fd5[_0x778b('0x10')]({'plain':!![]});if(_0x3e8af4&&_0x3e8af4['replyUri']){logger[_0x778b('0x1f')]('OpenchannelMessage,\x20%s,\x20%s',_0x778b('0x20'),util[_0x778b('0x21')]('Forwarding\x20message\x20%d\x20to\x20%s',_0x79065b['id'],_0x3e8af4[_0x778b('0x22')]));if(_0x3e8af4[_0x778b('0x1c')]&&_0x3e8af4['Interactions'][_0x778b('0x23')]){_0x79065b[_0x778b('0x24')]=_[_0x778b('0x25')](_0x3e8af4[_0x778b('0x1c')][0x0],_0x778b('0x1e'));_0x79065b['Contact']=_0x3e8af4[_0x778b('0x1c')][0x0][_0x778b('0x1e')];}var _0x4983cf={'method':_0x778b('0x26'),'uri':encodeURI(_0x3e8af4[_0x778b('0x22')]),'json':!![],'resolveWithFullResponse':!![]};switch(_0x4983cf[_0x778b('0x27')]){case _0x778b('0x28'):_0x4983cf['qs']=_0x79065b;break;case _0x778b('0x26'):_0x4983cf[_0x778b('0xe')]=_0x79065b;break;}return rp(_0x4983cf)[_0x778b('0x16')](function(_0x4e3d3d){logger[_0x778b('0x1f')]('OpenchannelMessage,\x20%s,\x20%s','afterCreate',util['format'](_0x778b('0x29'),_0x79065b['id'],_0x3e8af4[_0x778b('0x22')]));if(_0x4e3d3d[_0x778b('0xe')][_0x778b('0x2a')]&&_0x4e3d3d[_0x778b('0xe')][_0x778b('0x2a')]!=_0x79065b[_0x778b('0x24')][_0x778b('0x2a')]){return _0x3a4788[_0x778b('0x1b')][_0x778b('0x2b')]({'threadId':_0x4e3d3d['body'][_0x778b('0x2a')]},{'logging':!![],'where':{'id':_0x79065b[_0x778b('0x24')]['id']}});}else{return;}})[_0x778b('0x16')](function(){return _0x36dbdf[_0x778b('0x2b')]({'read':!![]});})[_0x778b('0x2c')](function(_0x480e25){logger[_0x778b('0x2d')](_0x778b('0x2e'),_0x778b('0x20'),util['inspect'](_0x480e25,{'showHidden':![],'depth':null}));_0x509154();});}else{_0x509154();}})['finally'](function(){_0x509154();});}else{_0x509154();}}},'charset':_0x778b('0x2f'),'collate':'utf8mb4_unicode_ci'});};