b7af486776fb637d1484a64282e5f7c92fc9f43f
[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 _0x6337=['afterCreate','inspect','Missing\x20parameters:\x20phone,\x20accountSid\x20or\x20authToken','finally','utf8mb4','lodash','util','api','moment','bluebird','request-promise','path','rimraf','../../config/environment','./whatsappMessage.attributes','exports','define','WhatsappMessage','whatsapp_messages','messageId','fti_whatsapp_messages','body','FULLTEXT','models','get','direction','toLowerCase','secret','isNil','WhatsappInteraction','findOne','WhatsappInteractionId','then','update','createdAt','catch','error','out','WhatsappAccount','find','WhatsappAccountId','type','twilio','accountSid','authToken','phone','messages','create','whatsapp:','remote','/api/whatsapp/messages/','/status?token=','token','sid','WhatsappMessage,\x20%s,\x20%s,\x20%s'];(function(_0x167cc1,_0x56ef5a){var _0x10bc4b=function(_0xd6a255){while(--_0xd6a255){_0x167cc1['push'](_0x167cc1['shift']());}};_0x10bc4b(++_0x56ef5a);}(_0x6337,0xaa));var _0x7633=function(_0xf2ead4,_0x28c704){_0xf2ead4=_0xf2ead4-0x0;var _0x3d6746=_0x6337[_0xf2ead4];return _0x3d6746;};'use strict';var _=require(_0x7633('0x0'));var util=require(_0x7633('0x1'));var logger=require('../../config/logger')(_0x7633('0x2'));var moment=require(_0x7633('0x3'));var BPromise=require(_0x7633('0x4'));var rp=require(_0x7633('0x5'));var fs=require('fs');var path=require(_0x7633('0x6'));var rimraf=require(_0x7633('0x7'));var config=require(_0x7633('0x8'));var attributes=require(_0x7633('0x9'));module[_0x7633('0xa')]=function(_0x5a8f4f,_0x3cc164){return _0x5a8f4f[_0x7633('0xb')](_0x7633('0xc'),attributes,{'tableName':_0x7633('0xd'),'paranoid':![],'indexes':[{'name':'messageId','fields':[_0x7633('0xe')]},{'name':_0x7633('0xf'),'fields':[_0x7633('0x10')],'type':_0x7633('0x11')}],'timestamps':!![],'hooks':{'afterCreate':function(_0xd70d99,_0x412ff6,_0x1a400e){var _0x224f7e=_0x5a8f4f[_0x7633('0x12')];var _0x5acbc0=_0xd70d99[_0x7633('0x13')]({'plain':!![]});if(_0x5acbc0[_0x7633('0x14')][_0x7633('0x15')]()==='in'||_0x5acbc0['direction'][_0x7633('0x15')]()==='out'&&!_0x5acbc0[_0x7633('0x16')]&&!_[_0x7633('0x17')](_0x5acbc0['UserId'])){_0x224f7e[_0x7633('0x18')][_0x7633('0x19')]({'where':{'id':_0x5acbc0[_0x7633('0x1a')]}})[_0x7633('0x1b')](function(_0x4ff2e3){if(_0x4ff2e3){_0x4ff2e3[_0x7633('0x1c')]({'lastMsgAt':_0x5acbc0[_0x7633('0x1d')],'lastMsgDirection':_0x5acbc0['direction'][_0x7633('0x15')]()});}})[_0x7633('0x1e')](function(_0x841e0f){console[_0x7633('0x1f')](_0x841e0f);});}if(_0x5acbc0[_0x7633('0x14')]===_0x7633('0x20')&&!_0x5acbc0[_0x7633('0x16')]){var _0x4f11d4;_0x224f7e[_0x7633('0x21')][_0x7633('0x22')]({'where':{'id':_0x5acbc0[_0x7633('0x23')]},'raw':!![]})['then'](function(_0x51b93d){_0x4f11d4=_0x51b93d;if(_0x4f11d4&&_0x4f11d4['type']){switch(_0x4f11d4[_0x7633('0x24')]){case _0x7633('0x25'):var _0x3064ba=require(_0x7633('0x25'));if(_0x4f11d4[_0x7633('0x26')]&&_0x4f11d4[_0x7633('0x27')]&&_0x4f11d4[_0x7633('0x28')]){var _0x1454d9=new _0x3064ba(_0x4f11d4[_0x7633('0x26')],_0x4f11d4['authToken']);_0x1454d9[_0x7633('0x29')][_0x7633('0x2a')]({'body':_0x5acbc0['body'],'to':_0x7633('0x2b')+_0x5acbc0[_0x7633('0x28')],'from':_0x7633('0x2b')+_0x4f11d4[_0x7633('0x28')],'statusCallback':_0x4f11d4[_0x7633('0x2c')]+_0x7633('0x2d')+_0x5acbc0['id']+_0x7633('0x2e')+_0x4f11d4[_0x7633('0x2f')]})['then'](function(_0x28cd12){if(_0x28cd12['sid']){return _0xd70d99[_0x7633('0x1c')]({'messageId':_0x28cd12[_0x7633('0x30')]});}})[_0x7633('0x1e')](function(_0x19e1fe){logger[_0x7633('0x1f')](_0x7633('0x31'),_0x7633('0x32'),_0x7633('0x25'),util[_0x7633('0x33')](_0x19e1fe,{'showHidden':![],'depth':null}));});}else{logger['error'](_0x7633('0x31'),_0x7633('0x32'),_0x7633('0x25'),_0x7633('0x34'));}break;}}})[_0x7633('0x35')](function(){_0x1a400e();});}else{_0x1a400e();}}},'charset':_0x7633('0x36'),'collate':'utf8mb4_unicode_ci'});};