4f60f69ee4dcf66718bc0cdb35e18619a69832d2
[motion2.git] / server / api / whatsappMessage / whatsappMessage.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 _0x06a6=['then','update','createdAt','error','WhatsappAccount','find','twilio','accountSid','authToken','phone','messages','create','remote','/status?token=','token','sid','catch','WhatsappMessage,\x20%s,\x20%s,\x20%s','afterCreate','inspect','finally','utf8mb4_unicode_ci','lodash','util','../../config/logger','api','moment','bluebird','request-promise','rimraf','../../config/environment','./whatsappMessage.attributes','exports','WhatsappMessage','whatsapp_messages','messageId','fti_whatsapp_messages','body','FULLTEXT','models','get','direction','toLowerCase','out','secret','isNil','UserId','WhatsappInteraction','WhatsappInteractionId'];(function(_0x56a871,_0x18b7fe){var _0x124954=function(_0x39b7a1){while(--_0x39b7a1){_0x56a871['push'](_0x56a871['shift']());}};_0x124954(++_0x18b7fe);}(_0x06a6,0xa9));var _0x606a=function(_0x30c3c2,_0x330cca){_0x30c3c2=_0x30c3c2-0x0;var _0x738110=_0x06a6[_0x30c3c2];return _0x738110;};'use strict';var _=require(_0x606a('0x0'));var util=require(_0x606a('0x1'));var logger=require(_0x606a('0x2'))(_0x606a('0x3'));var moment=require(_0x606a('0x4'));var BPromise=require(_0x606a('0x5'));var rp=require(_0x606a('0x6'));var fs=require('fs');var path=require('path');var rimraf=require(_0x606a('0x7'));var config=require(_0x606a('0x8'));var attributes=require(_0x606a('0x9'));module[_0x606a('0xa')]=function(_0x3bdb40,_0x18d8c9){return _0x3bdb40['define'](_0x606a('0xb'),attributes,{'tableName':_0x606a('0xc'),'paranoid':![],'indexes':[{'name':_0x606a('0xd'),'fields':[_0x606a('0xd')]},{'name':_0x606a('0xe'),'fields':[_0x606a('0xf')],'type':_0x606a('0x10')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x5ed044,_0x5879a2,_0x4e8174){var _0x308d72=_0x3bdb40[_0x606a('0x11')];var _0x2b1b1f=_0x5ed044[_0x606a('0x12')]({'plain':!![]});if(_0x2b1b1f[_0x606a('0x13')][_0x606a('0x14')]()==='in'||_0x2b1b1f[_0x606a('0x13')][_0x606a('0x14')]()===_0x606a('0x15')&&!_0x2b1b1f[_0x606a('0x16')]&&!_[_0x606a('0x17')](_0x2b1b1f[_0x606a('0x18')])){_0x308d72[_0x606a('0x19')]['findOne']({'where':{'id':_0x2b1b1f[_0x606a('0x1a')]}})[_0x606a('0x1b')](function(_0xe33579){if(_0xe33579){_0xe33579[_0x606a('0x1c')]({'lastMsgAt':_0x2b1b1f[_0x606a('0x1d')],'lastMsgDirection':_0x2b1b1f[_0x606a('0x13')][_0x606a('0x14')]()});}})['catch'](function(_0x2b1bf5){console[_0x606a('0x1e')](_0x2b1bf5);});}if(_0x2b1b1f[_0x606a('0x13')]==='out'&&!_0x2b1b1f['secret']){var _0x392981;_0x308d72[_0x606a('0x1f')][_0x606a('0x20')]({'where':{'id':_0x2b1b1f['WhatsappAccountId']},'raw':!![]})['then'](function(_0x224790){_0x392981=_0x224790;if(_0x392981&&_0x392981['type']){switch(_0x392981['type']){case _0x606a('0x21'):var _0x5c2f1d=require(_0x606a('0x21'));if(_0x392981[_0x606a('0x22')]&&_0x392981[_0x606a('0x23')]&&_0x392981[_0x606a('0x24')]){var _0x7a0c7d=new _0x5c2f1d(_0x392981['accountSid'],_0x392981[_0x606a('0x23')]);_0x7a0c7d[_0x606a('0x25')][_0x606a('0x26')]({'body':_0x2b1b1f[_0x606a('0xf')],'to':'whatsapp:'+_0x2b1b1f['phone'],'from':'whatsapp:'+_0x392981[_0x606a('0x24')],'statusCallback':_0x392981[_0x606a('0x27')]+'/api/whatsapp/messages/'+_0x2b1b1f['id']+_0x606a('0x28')+_0x392981[_0x606a('0x29')]})['then'](function(_0x54cc61){if(_0x54cc61[_0x606a('0x2a')]){return _0x5ed044[_0x606a('0x1c')]({'messageId':_0x54cc61[_0x606a('0x2a')]});}})[_0x606a('0x2b')](function(_0x263ae2){logger[_0x606a('0x1e')](_0x606a('0x2c'),_0x606a('0x2d'),_0x606a('0x21'),util[_0x606a('0x2e')](_0x263ae2,{'showHidden':![],'depth':null}));});}else{logger['error'](_0x606a('0x2c'),_0x606a('0x2d'),_0x606a('0x21'),'Missing\x20parameters:\x20phone,\x20accountSid\x20or\x20authToken');}break;}}})[_0x606a('0x2f')](function(){_0x4e8174();});}else{_0x4e8174();}}},'charset':'utf8mb4','collate':_0x606a('0x30')});};