8f22c78dad750c2a7d53287dbbea38685deeb7c3
[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 _0x0924=['error','CmContact','describe','OpenchannelAccount','find','OpenchannelAccountId','Interactions','Contact','keys','info','OpenchannelMessage,\x20%s,\x20%s','Forwarding\x20message\x20%d\x20to\x20%s','length','Interaction','omit','GET','afterCreate','format','Message\x20%d\x20forwarded\x20to\x20%s','replyUri','threadId','inspect','utf8mb4','utf8mb4_unicode_ci','util','../../config/logger','bluebird','request-promise','rimraf','../../config/environment','./openchannelMessage.attributes','exports','define','OpenchannelMessage','openchannel_messages','body','FULLTEXT','models','get','direction','toLowerCase','out','secret','isNil','UserId','OpenchannelInteraction','findOne','OpenchannelInteractionId','then','update','catch'];(function(_0xb16676,_0x5589a6){var _0x3adcdf=function(_0x2a3a1b){while(--_0x2a3a1b){_0xb16676['push'](_0xb16676['shift']());}};_0x3adcdf(++_0x5589a6);}(_0x0924,0x17d));var _0x4092=function(_0x3c1a53,_0x583c4a){_0x3c1a53=_0x3c1a53-0x0;var _0x2bbfd5=_0x0924[_0x3c1a53];return _0x2bbfd5;};'use strict';var _=require('lodash');var util=require(_0x4092('0x0'));var logger=require(_0x4092('0x1'))('api');var moment=require('moment');var BPromise=require(_0x4092('0x2'));var rp=require(_0x4092('0x3'));var fs=require('fs');var path=require('path');var rimraf=require(_0x4092('0x4'));var config=require(_0x4092('0x5'));var attributes=require(_0x4092('0x6'));module[_0x4092('0x7')]=function(_0x507e1f,_0x219e29){return _0x507e1f[_0x4092('0x8')](_0x4092('0x9'),attributes,{'tableName':_0x4092('0xa'),'paranoid':![],'indexes':[{'name':'fti_openchannel_messages','fields':[_0x4092('0xb')],'type':_0x4092('0xc')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x5671ec,_0x1c6388,_0x38ccd7){var _0xe7f6b2=_0x507e1f[_0x4092('0xd')];var _0x3f55b8=_0x5671ec[_0x4092('0xe')]({'plain':!![]});if(_0x3f55b8[_0x4092('0xf')]['toLowerCase']()==='in'||_0x3f55b8[_0x4092('0xf')][_0x4092('0x10')]()===_0x4092('0x11')&&!_0x3f55b8[_0x4092('0x12')]&&!_[_0x4092('0x13')](_0x3f55b8[_0x4092('0x14')])){_0xe7f6b2[_0x4092('0x15')][_0x4092('0x16')]({'where':{'id':_0x3f55b8[_0x4092('0x17')]}})[_0x4092('0x18')](function(_0x123ab2){if(_0x123ab2){_0x123ab2[_0x4092('0x19')]({'lastMsgAt':_0x3f55b8['createdAt'],'lastMsgDirection':_0x3f55b8[_0x4092('0xf')][_0x4092('0x10')]()});}})[_0x4092('0x1a')](function(_0x2e257f){console[_0x4092('0x1b')](_0x2e257f);});}if(_0x3f55b8[_0x4092('0xf')]===_0x4092('0x11')&&!_0x3f55b8['secret']){var _0x135b97;_0xe7f6b2[_0x4092('0x1c')][_0x4092('0x1d')]()[_0x4092('0x18')](function(_0x10c6ac){return _0xe7f6b2[_0x4092('0x1e')][_0x4092('0x1f')]({'where':{'id':_0x3f55b8[_0x4092('0x20')]},'include':[{'model':_0xe7f6b2['OpenchannelInteraction'],'as':_0x4092('0x21'),'where':{'id':_0x3f55b8[_0x4092('0x17')]},'limit':0x1,'include':[{'model':_0xe7f6b2[_0x4092('0x1c')],'as':_0x4092('0x22'),'attributes':_[_0x4092('0x23')](_0x10c6ac)}]}]});})[_0x4092('0x18')](function(_0x3dc1dc){_0x135b97=_0x3dc1dc[_0x4092('0xe')]({'plain':!![]});if(_0x135b97&&_0x135b97['replyUri']){logger[_0x4092('0x24')](_0x4092('0x25'),'afterCreate',util['format'](_0x4092('0x26'),_0x3f55b8['id'],_0x135b97['replyUri']));if(_0x135b97[_0x4092('0x21')]&&_0x135b97[_0x4092('0x21')][_0x4092('0x27')]){_0x3f55b8[_0x4092('0x28')]=_[_0x4092('0x29')](_0x135b97[_0x4092('0x21')][0x0],_0x4092('0x22'));_0x3f55b8[_0x4092('0x22')]=_0x135b97['Interactions'][0x0][_0x4092('0x22')];}var _0x1c6388={'method':'POST','uri':encodeURI(_0x135b97['replyUri']),'json':!![],'resolveWithFullResponse':!![]};switch(_0x1c6388['method']){case _0x4092('0x2a'):_0x1c6388['qs']=_0x3f55b8;break;case'POST':_0x1c6388[_0x4092('0xb')]=_0x3f55b8;break;}return rp(_0x1c6388)[_0x4092('0x18')](function(_0x4cf75e){logger[_0x4092('0x24')](_0x4092('0x25'),_0x4092('0x2b'),util[_0x4092('0x2c')](_0x4092('0x2d'),_0x3f55b8['id'],_0x135b97[_0x4092('0x2e')]));if(_0x4cf75e['body'][_0x4092('0x2f')]&&_0x4cf75e[_0x4092('0xb')][_0x4092('0x2f')]!=_0x3f55b8[_0x4092('0x28')][_0x4092('0x2f')]){return _0xe7f6b2[_0x4092('0x15')]['update']({'threadId':_0x4cf75e[_0x4092('0xb')]['threadId']},{'logging':!![],'where':{'id':_0x3f55b8[_0x4092('0x28')]['id']}});}else{return;}})[_0x4092('0x18')](function(){return _0x5671ec['update']({'read':!![]});})[_0x4092('0x1a')](function(_0x53a34e){logger[_0x4092('0x1b')](_0x4092('0x25'),_0x4092('0x2b'),util[_0x4092('0x30')](_0x53a34e,{'showHidden':![],'depth':null}));_0x38ccd7();});}else{_0x38ccd7();}})['finally'](function(){_0x38ccd7();});}else{_0x38ccd7();}}},'charset':_0x4092('0x31'),'collate':_0x4092('0x32')});};