Built motion from commit (unavailable).|2.5.14
[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 _0xa239=['OpenchannelAccount','find','OpenchannelAccountId','OpenchannelInteraction','Interactions','Contact','keys','get','replyUri','info','OpenchannelMessage,\x20%s,\x20%s','format','length','Interaction','omit','method','GET','afterCreate','Message\x20%d\x20forwarded\x20to\x20%s','threadId','inspect','utf8mb4','utf8mb4_unicode_ci','lodash','../../config/logger','moment','bluebird','request-promise','path','rimraf','./openchannelMessage.attributes','exports','OpenchannelMessage','openchannel_messages','fti_openchannel_messages','body','models','direction','toLowerCase','out','secret','isNil','UserId','findOne','OpenchannelInteractionId','then','update','createdAt','catch','error','CmContact'];(function(_0x33bdbd,_0x3eac1c){var _0xba62a8=function(_0x15ebe2){while(--_0x15ebe2){_0x33bdbd['push'](_0x33bdbd['shift']());}};_0xba62a8(++_0x3eac1c);}(_0xa239,0xe3));var _0x9a23=function(_0x3f5eaf,_0x644c76){_0x3f5eaf=_0x3f5eaf-0x0;var _0x3df3a1=_0xa239[_0x3f5eaf];return _0x3df3a1;};'use strict';var _=require(_0x9a23('0x0'));var util=require('util');var logger=require(_0x9a23('0x1'))('api');var moment=require(_0x9a23('0x2'));var BPromise=require(_0x9a23('0x3'));var rp=require(_0x9a23('0x4'));var fs=require('fs');var path=require(_0x9a23('0x5'));var rimraf=require(_0x9a23('0x6'));var config=require('../../config/environment');var attributes=require(_0x9a23('0x7'));module[_0x9a23('0x8')]=function(_0x375ab5,_0x2af33c){return _0x375ab5['define'](_0x9a23('0x9'),attributes,{'tableName':_0x9a23('0xa'),'paranoid':![],'indexes':[{'name':_0x9a23('0xb'),'fields':[_0x9a23('0xc')],'type':'FULLTEXT'}],'timestamps':!![],'hooks':{'afterCreate':function(_0x273107,_0x19907d,_0x5d43dc){var _0x468906=_0x375ab5[_0x9a23('0xd')];var _0x513667=_0x273107['get']({'plain':!![]});if(_0x513667[_0x9a23('0xe')]['toLowerCase']()==='in'||_0x513667[_0x9a23('0xe')][_0x9a23('0xf')]()===_0x9a23('0x10')&&!_0x513667[_0x9a23('0x11')]&&!_[_0x9a23('0x12')](_0x513667[_0x9a23('0x13')])){_0x468906['OpenchannelInteraction'][_0x9a23('0x14')]({'where':{'id':_0x513667[_0x9a23('0x15')]}})[_0x9a23('0x16')](function(_0x20fcfc){if(_0x20fcfc){_0x20fcfc[_0x9a23('0x17')]({'lastMsgAt':_0x513667[_0x9a23('0x18')],'lastMsgDirection':_0x513667[_0x9a23('0xe')][_0x9a23('0xf')]()});}})[_0x9a23('0x19')](function(_0x918fb5){console[_0x9a23('0x1a')](_0x918fb5);});}if(_0x513667[_0x9a23('0xe')]===_0x9a23('0x10')&&!_0x513667['secret']){var _0x160260;_0x468906[_0x9a23('0x1b')]['describe']()[_0x9a23('0x16')](function(_0x110138){return _0x468906[_0x9a23('0x1c')][_0x9a23('0x1d')]({'where':{'id':_0x513667[_0x9a23('0x1e')]},'include':[{'model':_0x468906[_0x9a23('0x1f')],'as':_0x9a23('0x20'),'where':{'id':_0x513667[_0x9a23('0x15')]},'limit':0x1,'include':[{'model':_0x468906['CmContact'],'as':_0x9a23('0x21'),'attributes':_[_0x9a23('0x22')](_0x110138)}]}]});})['then'](function(_0x2f727d){_0x160260=_0x2f727d[_0x9a23('0x23')]({'plain':!![]});if(_0x160260&&_0x160260[_0x9a23('0x24')]){logger[_0x9a23('0x25')](_0x9a23('0x26'),'afterCreate',util[_0x9a23('0x27')]('Forwarding\x20message\x20%d\x20to\x20%s',_0x513667['id'],_0x160260['replyUri']));if(_0x160260['Interactions']&&_0x160260[_0x9a23('0x20')][_0x9a23('0x28')]){_0x513667[_0x9a23('0x29')]=_[_0x9a23('0x2a')](_0x160260[_0x9a23('0x20')][0x0],_0x9a23('0x21'));_0x513667[_0x9a23('0x21')]=_0x160260[_0x9a23('0x20')][0x0][_0x9a23('0x21')];}var _0x19907d={'method':'POST','uri':encodeURI(_0x160260[_0x9a23('0x24')]),'json':!![],'resolveWithFullResponse':!![]};switch(_0x19907d[_0x9a23('0x2b')]){case _0x9a23('0x2c'):_0x19907d['qs']=_0x513667;break;case'POST':_0x19907d[_0x9a23('0xc')]=_0x513667;break;}return rp(_0x19907d)['then'](function(_0x5a697a){logger[_0x9a23('0x25')](_0x9a23('0x26'),_0x9a23('0x2d'),util[_0x9a23('0x27')](_0x9a23('0x2e'),_0x513667['id'],_0x160260[_0x9a23('0x24')]));if(_0x5a697a[_0x9a23('0xc')][_0x9a23('0x2f')]&&_0x5a697a['body']['threadId']!=_0x513667[_0x9a23('0x29')][_0x9a23('0x2f')]){return _0x468906[_0x9a23('0x1f')][_0x9a23('0x17')]({'threadId':_0x5a697a[_0x9a23('0xc')][_0x9a23('0x2f')]},{'logging':!![],'where':{'id':_0x513667[_0x9a23('0x29')]['id']}});}else{return;}})['then'](function(){return _0x273107['update']({'read':!![]});})[_0x9a23('0x19')](function(_0x58f481){logger['error'](_0x9a23('0x26'),_0x9a23('0x2d'),util[_0x9a23('0x30')](_0x58f481,{'showHidden':![],'depth':null}));_0x5d43dc();});}else{_0x5d43dc();}})['finally'](function(){_0x5d43dc();});}else{_0x5d43dc();}}},'charset':_0x9a23('0x31'),'collate':_0x9a23('0x32')});};