Built motion from commit (unavailable).|2.5.4
[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 _0xc9f5=['util','../../config/logger','moment','bluebird','request-promise','../../config/environment','exports','define','OpenchannelMessage','openchannel_messages','fti_openchannel_messages','body','FULLTEXT','models','get','direction','toLowerCase','out','secret','isNil','UserId','OpenchannelInteraction','findOne','then','update','createdAt','catch','error','OpenchannelAccount','Interactions','OpenchannelInteractionId','CmContact','Contact','keys','replyUri','OpenchannelMessage,\x20%s,\x20%s','afterCreate','format','Forwarding\x20message\x20%d\x20to\x20%s','POST','method','GET','info','Message\x20%d\x20forwarded\x20to\x20%s','threadId','Interaction','inspect','finally','utf8mb4'];(function(_0x4f72c4,_0x414764){var _0x41e0a3=function(_0x12a802){while(--_0x12a802){_0x4f72c4['push'](_0x4f72c4['shift']());}};_0x41e0a3(++_0x414764);}(_0xc9f5,0xc4));var _0x5c9f=function(_0x5b8310,_0x77ea6f){_0x5b8310=_0x5b8310-0x0;var _0xd3ebc1=_0xc9f5[_0x5b8310];return _0xd3ebc1;};'use strict';var _=require('lodash');var util=require(_0x5c9f('0x0'));var logger=require(_0x5c9f('0x1'))('api');var moment=require(_0x5c9f('0x2'));var BPromise=require(_0x5c9f('0x3'));var rp=require(_0x5c9f('0x4'));var fs=require('fs');var path=require('path');var rimraf=require('rimraf');var config=require(_0x5c9f('0x5'));var attributes=require('./openchannelMessage.attributes');module[_0x5c9f('0x6')]=function(_0x563d0c,_0x3100cf){return _0x563d0c[_0x5c9f('0x7')](_0x5c9f('0x8'),attributes,{'tableName':_0x5c9f('0x9'),'paranoid':![],'indexes':[{'name':_0x5c9f('0xa'),'fields':[_0x5c9f('0xb')],'type':_0x5c9f('0xc')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x258fe5,_0x279b07,_0x3d782a){var _0x397c29=_0x563d0c[_0x5c9f('0xd')];var _0xd735fd=_0x258fe5[_0x5c9f('0xe')]({'plain':!![]});if(_0xd735fd[_0x5c9f('0xf')][_0x5c9f('0x10')]()==='in'||_0xd735fd[_0x5c9f('0xf')]['toLowerCase']()===_0x5c9f('0x11')&&!_0xd735fd[_0x5c9f('0x12')]&&!_[_0x5c9f('0x13')](_0xd735fd[_0x5c9f('0x14')])){_0x397c29[_0x5c9f('0x15')][_0x5c9f('0x16')]({'where':{'id':_0xd735fd['OpenchannelInteractionId']}})[_0x5c9f('0x17')](function(_0xa185ab){if(_0xa185ab){_0xa185ab[_0x5c9f('0x18')]({'lastMsgAt':_0xd735fd[_0x5c9f('0x19')],'lastMsgDirection':_0xd735fd[_0x5c9f('0xf')][_0x5c9f('0x10')]()});}})[_0x5c9f('0x1a')](function(_0x281b49){console[_0x5c9f('0x1b')](_0x281b49);});}if(_0xd735fd['direction']==='out'&&!_0xd735fd['secret']){var _0x48feaf;_0x397c29['CmContact']['describe']()['then'](function(_0x918ad3){return _0x397c29[_0x5c9f('0x1c')]['find']({'where':{'id':_0xd735fd['OpenchannelAccountId']},'include':[{'model':_0x397c29[_0x5c9f('0x15')],'as':_0x5c9f('0x1d'),'where':{'id':_0xd735fd[_0x5c9f('0x1e')]},'limit':0x1,'include':[{'model':_0x397c29[_0x5c9f('0x1f')],'as':_0x5c9f('0x20'),'attributes':_[_0x5c9f('0x21')](_0x918ad3)}]}]});})[_0x5c9f('0x17')](function(_0x2e7ba4){_0x48feaf=_0x2e7ba4[_0x5c9f('0xe')]({'plain':!![]});if(_0x48feaf&&_0x48feaf[_0x5c9f('0x22')]){logger['info'](_0x5c9f('0x23'),_0x5c9f('0x24'),util[_0x5c9f('0x25')](_0x5c9f('0x26'),_0xd735fd['id'],_0x48feaf[_0x5c9f('0x22')]));if(_0x48feaf['Interactions']&&_0x48feaf[_0x5c9f('0x1d')]['length']){_0xd735fd['Interaction']=_['omit'](_0x48feaf['Interactions'][0x0],_0x5c9f('0x20'));_0xd735fd[_0x5c9f('0x20')]=_0x48feaf['Interactions'][0x0][_0x5c9f('0x20')];}var _0x279b07={'method':_0x5c9f('0x27'),'uri':encodeURI(_0x48feaf['replyUri']),'json':!![],'resolveWithFullResponse':!![]};switch(_0x279b07[_0x5c9f('0x28')]){case _0x5c9f('0x29'):_0x279b07['qs']=_0xd735fd;break;case'POST':_0x279b07[_0x5c9f('0xb')]=_0xd735fd;break;}return rp(_0x279b07)['then'](function(_0x16a695){logger[_0x5c9f('0x2a')](_0x5c9f('0x23'),'afterCreate',util[_0x5c9f('0x25')](_0x5c9f('0x2b'),_0xd735fd['id'],_0x48feaf[_0x5c9f('0x22')]));if(_0x16a695[_0x5c9f('0xb')]['threadId']&&_0x16a695[_0x5c9f('0xb')][_0x5c9f('0x2c')]!=_0xd735fd[_0x5c9f('0x2d')][_0x5c9f('0x2c')]){return _0x397c29[_0x5c9f('0x15')]['update']({'threadId':_0x16a695[_0x5c9f('0xb')]['threadId']},{'logging':!![],'where':{'id':_0xd735fd[_0x5c9f('0x2d')]['id']}});}else{return;}})[_0x5c9f('0x17')](function(){return _0x258fe5['update']({'read':!![]});})[_0x5c9f('0x1a')](function(_0x55cec9){logger[_0x5c9f('0x1b')]('OpenchannelMessage,\x20%s,\x20%s',_0x5c9f('0x24'),util[_0x5c9f('0x2e')](_0x55cec9,{'showHidden':![],'depth':null}));_0x3d782a();});}else{_0x3d782a();}})[_0x5c9f('0x2f')](function(){_0x3d782a();});}else{_0x3d782a();}}},'charset':_0x5c9f('0x30'),'collate':'utf8mb4_unicode_ci'});};