27a36a96f5a359fb619bc70028cb04359fa36282
[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 _0x0093=['get','direction','toLowerCase','out','secret','isNil','UserId','findOne','OpenchannelInteractionId','update','createdAt','error','CmContact','describe','then','OpenchannelAccount','find','OpenchannelInteraction','Interactions','Contact','keys','info','OpenchannelMessage,\x20%s,\x20%s','Forwarding\x20message\x20%d\x20to\x20%s','replyUri','length','Interaction','omit','POST','method','GET','body','afterCreate','Message\x20%d\x20forwarded\x20to\x20%s','threadId','inspect','utf8mb4','utf8mb4_unicode_ci','lodash','../../config/logger','api','bluebird','request-promise','path','rimraf','./openchannelMessage.attributes','exports','define','OpenchannelMessage','openchannel_messages','fti_openchannel_messages','FULLTEXT','models'];(function(_0x1a5d07,_0x3dc909){var _0x36ccea=function(_0x539691){while(--_0x539691){_0x1a5d07['push'](_0x1a5d07['shift']());}};_0x36ccea(++_0x3dc909);}(_0x0093,0x164));var _0x3009=function(_0x1db1f2,_0x238fb1){_0x1db1f2=_0x1db1f2-0x0;var _0x530e85=_0x0093[_0x1db1f2];return _0x530e85;};'use strict';var _=require(_0x3009('0x0'));var util=require('util');var logger=require(_0x3009('0x1'))(_0x3009('0x2'));var moment=require('moment');var BPromise=require(_0x3009('0x3'));var rp=require(_0x3009('0x4'));var fs=require('fs');var path=require(_0x3009('0x5'));var rimraf=require(_0x3009('0x6'));var config=require('../../config/environment');var attributes=require(_0x3009('0x7'));module[_0x3009('0x8')]=function(_0xc8b457,_0x48a353){return _0xc8b457[_0x3009('0x9')](_0x3009('0xa'),attributes,{'tableName':_0x3009('0xb'),'paranoid':![],'indexes':[{'name':_0x3009('0xc'),'fields':['body'],'type':_0x3009('0xd')}],'timestamps':!![],'hooks':{'afterCreate':function(_0xe98efb,_0xeb1c27,_0x4cba25){var _0x2c1784=_0xc8b457[_0x3009('0xe')];var _0x204a29=_0xe98efb[_0x3009('0xf')]({'plain':!![]});if(_0x204a29[_0x3009('0x10')][_0x3009('0x11')]()==='in'||_0x204a29['direction'][_0x3009('0x11')]()===_0x3009('0x12')&&!_0x204a29[_0x3009('0x13')]&&!_[_0x3009('0x14')](_0x204a29[_0x3009('0x15')])){_0x2c1784['OpenchannelInteraction'][_0x3009('0x16')]({'where':{'id':_0x204a29[_0x3009('0x17')]}})['then'](function(_0x22fcfa){if(_0x22fcfa){_0x22fcfa[_0x3009('0x18')]({'lastMsgAt':_0x204a29[_0x3009('0x19')],'lastMsgDirection':_0x204a29[_0x3009('0x10')][_0x3009('0x11')]()});}})['catch'](function(_0x289eb3){console[_0x3009('0x1a')](_0x289eb3);});}if(_0x204a29[_0x3009('0x10')]===_0x3009('0x12')&&!_0x204a29[_0x3009('0x13')]){var _0x25ba34;_0x2c1784[_0x3009('0x1b')][_0x3009('0x1c')]()[_0x3009('0x1d')](function(_0x103ba7){return _0x2c1784[_0x3009('0x1e')][_0x3009('0x1f')]({'where':{'id':_0x204a29['OpenchannelAccountId']},'include':[{'model':_0x2c1784[_0x3009('0x20')],'as':_0x3009('0x21'),'where':{'id':_0x204a29[_0x3009('0x17')]},'limit':0x1,'include':[{'model':_0x2c1784[_0x3009('0x1b')],'as':_0x3009('0x22'),'attributes':_[_0x3009('0x23')](_0x103ba7)}]}]});})[_0x3009('0x1d')](function(_0x2ac547){_0x25ba34=_0x2ac547[_0x3009('0xf')]({'plain':!![]});if(_0x25ba34&&_0x25ba34['replyUri']){logger[_0x3009('0x24')](_0x3009('0x25'),'afterCreate',util['format'](_0x3009('0x26'),_0x204a29['id'],_0x25ba34[_0x3009('0x27')]));if(_0x25ba34[_0x3009('0x21')]&&_0x25ba34[_0x3009('0x21')][_0x3009('0x28')]){_0x204a29[_0x3009('0x29')]=_[_0x3009('0x2a')](_0x25ba34['Interactions'][0x0],_0x3009('0x22'));_0x204a29['Contact']=_0x25ba34['Interactions'][0x0]['Contact'];}var _0xeb1c27={'method':_0x3009('0x2b'),'uri':encodeURI(_0x25ba34[_0x3009('0x27')]),'json':!![],'resolveWithFullResponse':!![]};switch(_0xeb1c27[_0x3009('0x2c')]){case _0x3009('0x2d'):_0xeb1c27['qs']=_0x204a29;break;case'POST':_0xeb1c27[_0x3009('0x2e')]=_0x204a29;break;}return rp(_0xeb1c27)[_0x3009('0x1d')](function(_0x1b46cd){logger[_0x3009('0x24')](_0x3009('0x25'),_0x3009('0x2f'),util['format'](_0x3009('0x30'),_0x204a29['id'],_0x25ba34[_0x3009('0x27')]));if(_0x1b46cd[_0x3009('0x2e')]['threadId']&&_0x1b46cd[_0x3009('0x2e')][_0x3009('0x31')]!=_0x204a29[_0x3009('0x29')][_0x3009('0x31')]){return _0x2c1784[_0x3009('0x20')][_0x3009('0x18')]({'threadId':_0x1b46cd[_0x3009('0x2e')][_0x3009('0x31')]},{'logging':!![],'where':{'id':_0x204a29['Interaction']['id']}});}else{return;}})[_0x3009('0x1d')](function(){return _0xe98efb['update']({'read':!![]});})['catch'](function(_0x56346a){logger['error'](_0x3009('0x25'),_0x3009('0x2f'),util[_0x3009('0x32')](_0x56346a,{'showHidden':![],'depth':null}));_0x4cba25();});}else{_0x4cba25();}})['finally'](function(){_0x4cba25();});}else{_0x4cba25();}}},'charset':_0x3009('0x33'),'collate':_0x3009('0x34')});};