Built motion from commit (unavailable).|2.5.0
[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 _0xb466=['utf8mb4','utf8mb4_unicode_ci','api','moment','bluebird','request-promise','path','rimraf','../../config/environment','./whatsappMessage.attributes','exports','WhatsappMessage','whatsapp_messages','messageId','fti_whatsapp_messages','body','FULLTEXT','direction','toLowerCase','out','secret','isNil','WhatsappInteraction','findOne','WhatsappInteractionId','then','update','createdAt','catch','error','WhatsappAccount','find','type','twilio','accountSid','authToken','phone','create','whatsapp:','remote','/api/whatsapp/messages/','/status?token=','token','sid','WhatsappMessage,\x20%s,\x20%s,\x20%s','afterCreate','inspect','Missing\x20parameters:\x20phone,\x20accountSid\x20or\x20authToken'];(function(_0x1c12e4,_0x7ea559){var _0x47fb5a=function(_0x52c224){while(--_0x52c224){_0x1c12e4['push'](_0x1c12e4['shift']());}};_0x47fb5a(++_0x7ea559);}(_0xb466,0x182));var _0x6b46=function(_0x318b46,_0x2bccbc){_0x318b46=_0x318b46-0x0;var _0x227a3f=_0xb466[_0x318b46];return _0x227a3f;};'use strict';var _=require('lodash');var util=require('util');var logger=require('../../config/logger')(_0x6b46('0x0'));var moment=require(_0x6b46('0x1'));var BPromise=require(_0x6b46('0x2'));var rp=require(_0x6b46('0x3'));var fs=require('fs');var path=require(_0x6b46('0x4'));var rimraf=require(_0x6b46('0x5'));var config=require(_0x6b46('0x6'));var attributes=require(_0x6b46('0x7'));module[_0x6b46('0x8')]=function(_0x5c9c3c,_0x39ee31){return _0x5c9c3c['define'](_0x6b46('0x9'),attributes,{'tableName':_0x6b46('0xa'),'paranoid':![],'indexes':[{'name':_0x6b46('0xb'),'fields':[_0x6b46('0xb')]},{'name':_0x6b46('0xc'),'fields':[_0x6b46('0xd')],'type':_0x6b46('0xe')}],'timestamps':!![],'hooks':{'afterCreate':function(_0xf3d0a,_0x297848,_0x13ee0a){var _0x39a0ef=_0x5c9c3c['models'];var _0x4615d6=_0xf3d0a['get']({'plain':!![]});if(_0x4615d6[_0x6b46('0xf')]['toLowerCase']()==='in'||_0x4615d6[_0x6b46('0xf')][_0x6b46('0x10')]()===_0x6b46('0x11')&&!_0x4615d6[_0x6b46('0x12')]&&!_[_0x6b46('0x13')](_0x4615d6['UserId'])){_0x39a0ef[_0x6b46('0x14')][_0x6b46('0x15')]({'where':{'id':_0x4615d6[_0x6b46('0x16')]}})[_0x6b46('0x17')](function(_0x9bf111){if(_0x9bf111){_0x9bf111[_0x6b46('0x18')]({'lastMsgAt':_0x4615d6[_0x6b46('0x19')],'lastMsgDirection':_0x4615d6[_0x6b46('0xf')][_0x6b46('0x10')]()});}})[_0x6b46('0x1a')](function(_0x46fff6){console[_0x6b46('0x1b')](_0x46fff6);});}if(_0x4615d6['direction']===_0x6b46('0x11')&&!_0x4615d6[_0x6b46('0x12')]){var _0x40b949;_0x39a0ef[_0x6b46('0x1c')][_0x6b46('0x1d')]({'where':{'id':_0x4615d6['WhatsappAccountId']},'raw':!![]})[_0x6b46('0x17')](function(_0x9ba260){_0x40b949=_0x9ba260;if(_0x40b949&&_0x40b949[_0x6b46('0x1e')]){switch(_0x40b949[_0x6b46('0x1e')]){case _0x6b46('0x1f'):var _0x726ffa=require(_0x6b46('0x1f'));if(_0x40b949[_0x6b46('0x20')]&&_0x40b949[_0x6b46('0x21')]&&_0x40b949[_0x6b46('0x22')]){var _0x53f5b8=new _0x726ffa(_0x40b949[_0x6b46('0x20')],_0x40b949[_0x6b46('0x21')]);_0x53f5b8['messages'][_0x6b46('0x23')]({'body':_0x4615d6[_0x6b46('0xd')],'to':_0x6b46('0x24')+_0x4615d6[_0x6b46('0x22')],'from':'whatsapp:'+_0x40b949[_0x6b46('0x22')],'statusCallback':_0x40b949[_0x6b46('0x25')]+_0x6b46('0x26')+_0x4615d6['id']+_0x6b46('0x27')+_0x40b949[_0x6b46('0x28')]})[_0x6b46('0x17')](function(_0x511258){if(_0x511258[_0x6b46('0x29')]){return _0xf3d0a[_0x6b46('0x18')]({'messageId':_0x511258['sid']});}})[_0x6b46('0x1a')](function(_0x3c7c23){logger[_0x6b46('0x1b')](_0x6b46('0x2a'),_0x6b46('0x2b'),'twilio',util[_0x6b46('0x2c')](_0x3c7c23,{'showHidden':![],'depth':null}));});}else{logger['error'](_0x6b46('0x2a'),_0x6b46('0x2b'),'twilio',_0x6b46('0x2d'));}break;}}})['finally'](function(){_0x13ee0a();});}else{_0x13ee0a();}}},'charset':_0x6b46('0x2e'),'collate':_0x6b46('0x2f')});};