Built motion from commit da24aabd.|2.6.20
[motion2.git] / server / api / smsMessage / smsMessage.model.js
index 6109ab3..0cefb44 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2213=['update','error','SmsAccount','find','SmsAccountId','type','twilio','phone','authToken','messages','create','body','remote','/api/sms/messages/','token','sid','catch','inspect','SmsMessage,\x20%s,\x20%s,\x20%s','afterCreate','Missing\x20parameters:\x20phone,\x20accountSid\x20or\x20authToken','skebby','https://api.skebby.it/API/v1.0/REST/','password','smsMethod','sender','login?username=','username','split','sms','POST','user_key','session_key','total_sent','internal_order_id','deliveryReport','read','connectel','senderString','https://smsapi.connectel.se/api/v2/send/','requestid','Missing\x20parameters:\x20authToken','xCALLY\x20Motion','%s:%s','https://rest.clicksend.com/v3/sms/send','format','Basic\x20%s','toString','base64','http_code','data','message_id','clickSend','Missing\x20parameters:\x20username,\x20password','/status?token=','https://api.plivo.com/v1/Account/%s/Message/','message_uuid','plivo','Missing\x20parameters:\x20authId,\x20authToken','baseUrl','/auth/1/session','/sms/2/text/advanced','application/json','IBSSO\x20','infobip','apiKey','login','text','timestamp','keys','sort','length','createHash','md5','hex','GET','/external/get/send.php?','id_sms','csc','Missing\x20parameters:\x20apiKey','clickatell','https://platform.clickatell.com/messages','uuid','UTF-8','apiMessageId','intelepeer','https://api.intelepeer.com/_rest/v4/app/sms/send','Bearer\x20','code','message','https://api.intelepeer.com/_rest/v4/app/sms/mdr','refid','status','finally','utf8mb4','utf8mb4_unicode_ci','lodash','../../config/logger','api','moment','request-promise','path','rimraf','../../config/environment','./smsMessage.attributes','exports','define','SmsMessage','sms_messages','messageId','fti_sms_messages','models','direction','toLowerCase','out','secret','isNil','UserId','SmsInteraction','then'];(function(_0x34edca,_0x18d9eb){var _0x2e2bf3=function(_0x42f266){while(--_0x42f266){_0x34edca['push'](_0x34edca['shift']());}};_0x2e2bf3(++_0x18d9eb);}(_0x2213,0x150));var _0x3221=function(_0x330912,_0x45b260){_0x330912=_0x330912-0x0;var _0x31c674=_0x2213[_0x330912];return _0x31c674;};'use strict';var _=require(_0x3221('0x0'));var util=require('util');var logger=require(_0x3221('0x1'))(_0x3221('0x2'));var moment=require(_0x3221('0x3'));var BPromise=require('bluebird');var rp=require(_0x3221('0x4'));var fs=require('fs');var path=require(_0x3221('0x5'));var rimraf=require(_0x3221('0x6'));var config=require(_0x3221('0x7'));var attributes=require(_0x3221('0x8'));module[_0x3221('0x9')]=function(_0x2c65ad,_0x3f4479){return _0x2c65ad[_0x3221('0xa')](_0x3221('0xb'),attributes,{'tableName':_0x3221('0xc'),'paranoid':![],'indexes':[{'name':_0x3221('0xd'),'fields':[_0x3221('0xd')]},{'name':_0x3221('0xe'),'fields':['body'],'type':'FULLTEXT'}],'timestamps':!![],'hooks':{'afterCreate':function(_0x3667ba,_0x5c92f1,_0x22f49e){var _0x5880c9=_0x2c65ad[_0x3221('0xf')];var _0x3fac25=_0x3667ba['get']({'plain':!![]});if(_0x3fac25[_0x3221('0x10')][_0x3221('0x11')]()==='in'||_0x3fac25['direction'][_0x3221('0x11')]()===_0x3221('0x12')&&!_0x3fac25[_0x3221('0x13')]&&!_[_0x3221('0x14')](_0x3fac25[_0x3221('0x15')])){_0x5880c9[_0x3221('0x16')]['findOne']({'where':{'id':_0x3fac25['SmsInteractionId']}})[_0x3221('0x17')](function(_0x271186){if(_0x271186){_0x271186[_0x3221('0x18')]({'lastMsgAt':_0x3fac25['createdAt'],'lastMsgDirection':_0x3fac25['direction'][_0x3221('0x11')]()});}})['catch'](function(_0x294340){console[_0x3221('0x19')](_0x294340);});}if(_0x3fac25['direction']==='out'&&!_0x3fac25['secret']){var _0x1c79fb;_0x5880c9[_0x3221('0x1a')][_0x3221('0x1b')]({'where':{'id':_0x3fac25[_0x3221('0x1c')]},'raw':!![]})[_0x3221('0x17')](function(_0x1cbbef){_0x1c79fb=_0x1cbbef;if(_0x1c79fb&&_0x1c79fb[_0x3221('0x1d')]){switch(_0x1c79fb['type']){case _0x3221('0x1e'):var _0x27374c=require('twilio');if(_0x1c79fb['accountSid']&&_0x1c79fb['authToken']&&_0x1c79fb[_0x3221('0x1f')]){var _0x5c6875=new _0x27374c(_0x1c79fb['accountSid'],_0x1c79fb[_0x3221('0x20')]);_0x5c6875[_0x3221('0x21')][_0x3221('0x22')]({'body':_0x3fac25[_0x3221('0x23')],'to':_0x3fac25['phone'],'from':_0x1c79fb[_0x3221('0x1f')],'statusCallback':_0x1c79fb[_0x3221('0x24')]+_0x3221('0x25')+_0x3fac25['id']+'/status?token='+_0x1c79fb[_0x3221('0x26')]})[_0x3221('0x17')](function(_0x7f7c75){if(_0x7f7c75[_0x3221('0x27')]){return _0x3667ba['update']({'messageId':_0x7f7c75[_0x3221('0x27')]});}})[_0x3221('0x28')](function(_0x588063){logger[_0x3221('0x19')]('SmsMessage,\x20%s,\x20%s,\x20%s','afterCreate',_0x3221('0x1e'),util[_0x3221('0x29')](_0x588063,{'showHidden':![],'depth':null}));});}else{logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x1e'),_0x3221('0x2c'));}break;case _0x3221('0x2d'):var _0x3ca44f=_0x3221('0x2e');if(_0x1c79fb['username']&&_0x1c79fb[_0x3221('0x2f')]){var _0x24cbb5={'recipient':[_0x3fac25[_0x3221('0x1f')]],'message':_0x3fac25[_0x3221('0x23')],'message_type':_0x1c79fb[_0x3221('0x30')]};if(_0x1c79fb[_0x3221('0x30')]&&_0x1c79fb[_0x3221('0x30')]!=='SI'){_0x24cbb5[_0x3221('0x31')]=_0x1c79fb[_0x3221('0x1f')];}var _0x5924c5={'url':_0x3ca44f+_0x3221('0x32')+_0x1c79fb[_0x3221('0x33')]+'&password='+_0x1c79fb[_0x3221('0x2f')],'method':'GET'};rp(_0x5924c5)[_0x3221('0x17')](function(_0x3f6ea9){var _0x198958=_0x3f6ea9[_0x3221('0x34')](';');var _0x5706fa={'user_key':_0x198958[0x0],'session_key':_0x198958[0x1]};_0x5924c5={'url':_0x3ca44f+_0x3221('0x35'),'method':_0x3221('0x36'),'headers':{'user_key':_0x5706fa[_0x3221('0x37')],'Session_key':_0x5706fa[_0x3221('0x38')]},'json':!![],'body':_0x24cbb5};return rp(_0x5924c5);})[_0x3221('0x17')](function(_0x339dae){if(_0x339dae[_0x3221('0x39')]>=0x1){var _0x4cb7d3={'messageId':_0x339dae[_0x3221('0x3a')]};if(_0x1c79fb[_0x3221('0x30')]!=='GP'||!_0x1c79fb[_0x3221('0x3b')]){_0x4cb7d3[_0x3221('0x3c')]=!![];}return _0x3667ba[_0x3221('0x18')](_0x4cb7d3);}else{return logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x2d'),util[_0x3221('0x29')](_0x339dae,{'showHidden':![],'depth':null}));}})['catch'](function(_0x1e2db5){return logger['error'](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x2d'),util[_0x3221('0x29')](_0x1e2db5,{'showHidden':![],'depth':null}));});}else{logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),'skebby','Missing\x20parameters:\x20username,\x20password');}break;case _0x3221('0x3d'):if(_0x1c79fb[_0x3221('0x20')]){var _0x4d857f={'recipient':_0x3fac25['phone'],'message':_0x3fac25[_0x3221('0x23')],'sender':_0x1c79fb[_0x3221('0x3e')]||_0x1c79fb[_0x3221('0x1f')],'authorization':_0x1c79fb[_0x3221('0x20')]};var _0x5c92f1={'method':_0x3221('0x36'),'uri':_0x3221('0x3f'),'body':_0x4d857f,'json':!![]};rp(_0x5c92f1)['then'](function(_0x1b74c1){var _0x10242d={'messageId':_0x1b74c1[_0x3221('0x40')]};if(!_0x1c79fb[_0x3221('0x3b')]){_0x10242d['read']=!![];}return _0x3667ba['update'](_0x10242d);})['catch'](function(_0x2adc5d){logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x3d'),util['inspect'](_0x2adc5d,{'showHidden':![],'depth':null}));});}else{logger[_0x3221('0x19')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x3221('0x2b'),_0x3221('0x3d'),_0x3221('0x41'));}break;case'clicksend':if(_0x1c79fb['username']&&_0x1c79fb[_0x3221('0x2f')]){var _0x4d857f={'messages':[{'source':_0x3221('0x42'),'to':_0x3fac25[_0x3221('0x1f')],'body':_0x3fac25[_0x3221('0x23')],'from':_0x1c79fb[_0x3221('0x3e')]||_0x1c79fb[_0x3221('0x1f')]}]};var _0x48ec43=util['format'](_0x3221('0x43'),_0x1c79fb[_0x3221('0x33')],_0x1c79fb[_0x3221('0x2f')]);var _0x5c92f1={'method':_0x3221('0x36'),'uri':_0x3221('0x44'),'body':_0x4d857f,'headers':{'Authorization':util[_0x3221('0x45')](_0x3221('0x46'),new Buffer(_0x48ec43)[_0x3221('0x47')](_0x3221('0x48')))},'json':!![]};rp(_0x5c92f1)[_0x3221('0x17')](function(_0x44a5ed){if(_0x44a5ed['http_code']>=0xc8&&_0x44a5ed[_0x3221('0x49')]<=0xce){if(_0x44a5ed['data']&&_0x44a5ed[_0x3221('0x4a')]['queued_count']>0x0){var _0x866ace=_['head'](_0x44a5ed['data'][_0x3221('0x21')]);var _0x2ddd63={'messageId':_0x866ace[_0x3221('0x4b')]};if(!_0x1c79fb[_0x3221('0x3b')]){_0x2ddd63[_0x3221('0x3c')]=!![];}return _0x3667ba['update'](_0x2ddd63);}else{logger[_0x3221('0x19')](_0x3221('0x2a'),'afterCreate','clickSend',util['inspect'](_0x44a5ed,{'showHidden':![],'depth':null}));}}else{logger['error'](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x4c'),util[_0x3221('0x29')](_0x44a5ed,{'showHidden':![],'depth':null}));}})['catch'](function(_0x29e032){logger[_0x3221('0x19')](_0x3221('0x2a'),'afterCreate',_0x3221('0x4c'),util[_0x3221('0x29')](_0x29e032,{'showHidden':![],'depth':null}));});}else{logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),'clickSend',_0x3221('0x4d'));}break;case'plivo':if(_0x1c79fb['authId']&&_0x1c79fb[_0x3221('0x20')]){var _0x4d857f={'dst':_0x3fac25[_0x3221('0x1f')],'text':_0x3fac25[_0x3221('0x23')],'src':_0x1c79fb[_0x3221('0x3e')]||_0x1c79fb[_0x3221('0x1f')],'url':_0x1c79fb['remote']+_0x3221('0x25')+_0x3fac25['id']+_0x3221('0x4e')+_0x1c79fb[_0x3221('0x26')]};var _0x48ec43=util[_0x3221('0x45')](_0x3221('0x43'),_0x1c79fb['authId'],_0x1c79fb[_0x3221('0x20')]);var _0x5c92f1={'method':_0x3221('0x36'),'uri':util[_0x3221('0x45')](_0x3221('0x4f'),_0x1c79fb['authId']),'body':_0x4d857f,'headers':{'Authorization':util[_0x3221('0x45')](_0x3221('0x46'),new Buffer(_0x48ec43)[_0x3221('0x47')](_0x3221('0x48')))},'json':!![]};rp(_0x5c92f1)[_0x3221('0x17')](function(_0x210895){var _0x408c6d={'messageId':_0x210895[_0x3221('0x50')][0x0]};return _0x3667ba['update'](_0x408c6d);})[_0x3221('0x28')](function(_0x3e7d19){logger['error'](_0x3221('0x2a'),'afterCreate',_0x3221('0x51'),util[_0x3221('0x29')](_0x3e7d19,{'showHidden':![],'depth':null}));});}else{logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x51'),_0x3221('0x52'));}break;case'infobip':if(_0x1c79fb[_0x3221('0x33')]&&_0x1c79fb[_0x3221('0x2f')]){if(_0x1c79fb[_0x3221('0x53')]){var _0x4446b6={'method':_0x3221('0x36'),'uri':_0x1c79fb['baseUrl']+_0x3221('0x54'),'body':{'username':_0x1c79fb[_0x3221('0x33')],'password':_0x1c79fb[_0x3221('0x2f')]},'json':!![]};return rp(_0x4446b6)[_0x3221('0x17')](function(_0x34d982){var _0xb8dbfa={'method':_0x3221('0x36'),'uri':_0x1c79fb[_0x3221('0x53')]+_0x3221('0x55'),'body':{'messages':[{'from':_0x1c79fb[_0x3221('0x1f')],'destinations':[{'to':_0x3fac25[_0x3221('0x1f')]}],'text':_0x3fac25[_0x3221('0x23')],'notifyUrl':_0x1c79fb[_0x3221('0x24')]+_0x3221('0x25')+_0x3fac25['id']+_0x3221('0x4e')+_0x1c79fb[_0x3221('0x26')],'notifyContentType':_0x3221('0x56'),'callbackData':_0x1c79fb[_0x3221('0x1f')]+';'+_0x3fac25[_0x3221('0x23')]}]},'headers':{'Authorization':_0x3221('0x57')+_0x34d982[_0x3221('0x26')]},'json':!![]};return rp(_0xb8dbfa)[_0x3221('0x17')](function(_0x1db458){if(_0x1db458[_0x3221('0x21')]){var _0x159987={'messageId':_0x1db458[_0x3221('0x21')][0x0][_0x3221('0xd')]};if(!_0x1c79fb['deliveryReport']){_0x159987[_0x3221('0x3c')]=!![];}return _0x3667ba[_0x3221('0x18')](_0x159987);}else{return logger['error'](_0x3221('0x2a'),'afterCreate',_0x3221('0x58'),util[_0x3221('0x29')](_0x1db458,{'showHidden':![],'depth':null}));}});})[_0x3221('0x28')](function(_0x4a5fac){return logger['error'](_0x3221('0x2a'),_0x3221('0x2b'),'infobip',util[_0x3221('0x29')](_0x4a5fac,{'showHidden':![],'depth':null}));});}else{logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x58'),'Missing\x20parameters:\x20base_url');}}else{logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),'infobip',_0x3221('0x4d'));}break;case'csc':var _0x55adff=require('crypto');if(_0x1c79fb[_0x3221('0x59')]){var _0x35f60d={};_0x35f60d[_0x3221('0x5a')]=_0x1c79fb[_0x3221('0x33')];_0x35f60d[_0x3221('0x1f')]=_0x3fac25[_0x3221('0x1f')];_0x35f60d['sender']=_0x1c79fb[_0x3221('0x1f')];_0x35f60d[_0x3221('0x5b')]=_0x3fac25[_0x3221('0x23')];_0x35f60d[_0x3221('0x5c')]=+new Date();var _0x1d0a11='';var _0x1feb28='';var _0x215c16=Object[_0x3221('0x5d')](_0x35f60d);_0x215c16[_0x3221('0x5e')]();for(var _0x4e0fc9=0x0;_0x4e0fc9<_0x215c16[_0x3221('0x5f')];_0x4e0fc9++){if(_0x1d0a11!=''){_0x1d0a11+='&';}_0x1d0a11+=_0x215c16[_0x4e0fc9]+'='+encodeURIComponent(_0x35f60d[_0x215c16[_0x4e0fc9]]);_0x1feb28+=_0x35f60d[_0x215c16[_0x4e0fc9]];}_0x1feb28+=_0x1c79fb[_0x3221('0x59')];_0x1feb28=_0x55adff[_0x3221('0x60')](_0x3221('0x61'))['update'](_0x1feb28)['digest'](_0x3221('0x62'));if(_0x1d0a11!==''){_0x1d0a11+='&';}_0x1d0a11+='signature='+_0x1feb28;var _0x5924c5={'method':_0x3221('0x63'),'uri':_0x1c79fb[_0x3221('0x53')]+_0x3221('0x64')+_0x1d0a11,'json':!![]};return rp(_0x5924c5)['then'](function(_0x42b19e){var _0x866c13=Object[_0x3221('0x5d')](_0x42b19e);if(_0x42b19e[_0x866c13[0x0]][_0x3221('0x19')]&&parseInt(_0x42b19e[_0x866c13[0x0]][_0x3221('0x19')])===0x0){var _0x545185={'messageId':_0x42b19e[_0x866c13[0x0]][_0x3221('0x65')]};if(!_0x1c79fb[_0x3221('0x3b')]){_0x545185[_0x3221('0x3c')]=!![];}return _0x3667ba['update'](_0x545185);}else{return logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),'csc',util[_0x3221('0x29')](_0x42b19e[_0x3221('0x19')],{'showHidden':![],'depth':null}));}})['catch'](function(_0x2a21fb){return logger[_0x3221('0x19')](_0x3221('0x2a'),'afterCreate',_0x3221('0x66'),util[_0x3221('0x29')](_0x2a21fb,{'showHidden':![],'depth':null}));});}else{logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x66'),_0x3221('0x67'));}break;case _0x3221('0x68'):if(_0x1c79fb[_0x3221('0x59')]){var _0x369800={'method':'POST','uri':_0x3221('0x69'),'headers':{'Authorization':_0x1c79fb['apiKey']},'body':{'content':_0x3fac25[_0x3221('0x23')],'to':[_0x3fac25['phone']],'from':_0x1c79fb[_0x3221('0x1f')],'binary':![],'clientMessageId':_0x3221('0x6a'),'charset':_0x3221('0x6b')},'json':!![]};rp(_0x369800)[_0x3221('0x17')](function(_0x1d4bf9){if(!_0x1d4bf9['error']){var _0x1169c3={'messageId':_0x1d4bf9[_0x3221('0x21')][0x0][_0x3221('0x6c')]};if(!_0x1c79fb[_0x3221('0x3b')]){_0x1169c3[_0x3221('0x3c')]=!![];}return _0x3667ba[_0x3221('0x18')](_0x1169c3);}else{return logger[_0x3221('0x19')](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x68'),util['inspect'](_0x1d4bf9[_0x3221('0x19')],{'showHidden':![],'depth':null}));}})[_0x3221('0x28')](function(_0x40c658){return logger['error'](_0x3221('0x2a'),_0x3221('0x2b'),_0x3221('0x68'),util[_0x3221('0x29')](_0x40c658,{'showHidden':![],'depth':null}));});}else{logger['error']('SmsMessage,\x20%s,\x20%s,\x20%s',_0x3221('0x2b'),_0x3221('0x68'),_0x3221('0x67'));}break;case _0x3221('0x6d'):if(_0x1c79fb[_0x3221('0x59')]){var _0x1edb3e={};var _0x5924c5={'method':_0x3221('0x36'),'uri':_0x3221('0x6e'),'headers':{'Authorization':_0x3221('0x6f')+_0x1c79fb[_0x3221('0x59')],'Content-Type':_0x3221('0x56')},'body':{'from':_0x1c79fb[_0x3221('0x1f')],'to':_0x3fac25[_0x3221('0x1f')],'text':_0x3fac25[_0x3221('0x23')]},'json':!![]};return rp(_0x5924c5)[_0x3221('0x17')](function(_0x85c86f){if(_0x85c86f[_0x3221('0x70')]==0xca){_0x1edb3e[_0x3221('0x71')]=_0x85c86f;var _0x300a30={'method':_0x3221('0x36'),'uri':_0x3221('0x72'),'headers':{'Authorization':_0x3221('0x6f')+_0x1c79fb[_0x3221('0x59')],'Content-Type':'application/json'},'body':{'refid':_0x1edb3e[_0x3221('0x71')][_0x3221('0x73')]},'json':!![]};return rp(_0x300a30)['then'](function(_0x20cf7d){_0x1edb3e[_0x3221('0x74')]=_0x20cf7d;var _0x208a92={'messageId':_0x1edb3e['message'][_0x3221('0x73')],'read':!![]};return _0x3667ba[_0x3221('0x18')](_0x208a92);});}else{return logger[_0x3221('0x19')](_0x3221('0x2a'),'afterCreate',_0x3221('0x6d'),util['inspect'](_0x85c86f,{'showHidden':![],'depth':null}));}})[_0x3221('0x28')](function(_0x367aa4){return logger['error']('SmsMessage,\x20%s,\x20%s,\x20%s',_0x3221('0x2b'),_0x3221('0x6d'),util[_0x3221('0x29')](_0x367aa4,{'showHidden':![],'depth':null}));});}else{return logger['error']('SmsMessage,\x20%s,\x20%s,\x20%s','afterCreate','intelepeer','Token\x20not\x20received');}break;}}})[_0x3221('0x75')](function(){_0x22f49e();});}else{_0x22f49e();}}},'charset':_0x3221('0x76'),'collate':_0x3221('0x77')});};
\ No newline at end of file
+var _0x36a3=['Token\x20not\x20received','finally','utf8mb4','utf8mb4_unicode_ci','util','../../config/logger','moment','bluebird','request-promise','path','rimraf','../../config/environment','exports','SmsMessage','sms_messages','messageId','fti_sms_messages','body','FULLTEXT','models','direction','toLowerCase','out','secret','isNil','UserId','SmsInteraction','SmsInteractionId','then','createdAt','error','SmsAccount','SmsAccountId','type','twilio','accountSid','authToken','phone','remote','/status?token=','token','sid','SmsMessage,\x20%s,\x20%s,\x20%s','afterCreate','inspect','skebby','https://api.skebby.it/API/v1.0/REST/','password','smsMethod','sender','login?username=','username','&password=','GET','split','POST','user_key','read','update','catch','Missing\x20parameters:\x20username,\x20password','connectel','senderString','https://smsapi.connectel.se/api/v2/send/','deliveryReport','Missing\x20parameters:\x20authToken','%s:%s','format','Basic\x20%s','http_code','data','queued_count','messages','message_id','clickSend','plivo','/api/sms/messages/','authId','toString','infobip','baseUrl','/auth/1/session','/sms/2/text/advanced','Missing\x20parameters:\x20base_url','csc','apiKey','login','sort','createHash','md5','hex','signature=','/external/get/send.php?','Missing\x20parameters:\x20apiKey','clickatell','uuid','UTF-8','apiMessageId','bandwidth','https://messaging.bandwidth.com/api/v2/users/','accountId','/messages','base64','https://api.intelepeer.com/_rest/v4/app/sms/send','Bearer\x20','application/json','code','https://api.intelepeer.com/_rest/v4/app/sms/mdr','refid','status','intelepeer'];(function(_0x27af45,_0x1b57aa){var _0x18df21=function(_0x4b7679){while(--_0x4b7679){_0x27af45['push'](_0x27af45['shift']());}};_0x18df21(++_0x1b57aa);}(_0x36a3,0x151));var _0x336a=function(_0x874cf1,_0x2a4954){_0x874cf1=_0x874cf1-0x0;var _0x233579=_0x36a3[_0x874cf1];return _0x233579;};'use strict';var _=require('lodash');var util=require(_0x336a('0x0'));var logger=require(_0x336a('0x1'))('api');var moment=require(_0x336a('0x2'));var BPromise=require(_0x336a('0x3'));var rp=require(_0x336a('0x4'));var fs=require('fs');var path=require(_0x336a('0x5'));var rimraf=require(_0x336a('0x6'));var config=require(_0x336a('0x7'));var attributes=require('./smsMessage.attributes');module[_0x336a('0x8')]=function(_0x5be596,_0x1986ec){return _0x5be596['define'](_0x336a('0x9'),attributes,{'tableName':_0x336a('0xa'),'paranoid':![],'indexes':[{'name':'messageId','fields':[_0x336a('0xb')]},{'name':_0x336a('0xc'),'fields':[_0x336a('0xd')],'type':_0x336a('0xe')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x43cb75,_0x3f4dbc,_0x2d52ff){var _0x180cb3=_0x5be596[_0x336a('0xf')];var _0x4cfcd2=_0x43cb75['get']({'plain':!![]});if(_0x4cfcd2[_0x336a('0x10')]['toLowerCase']()==='in'||_0x4cfcd2[_0x336a('0x10')][_0x336a('0x11')]()===_0x336a('0x12')&&!_0x4cfcd2[_0x336a('0x13')]&&!_[_0x336a('0x14')](_0x4cfcd2[_0x336a('0x15')])&&!_[_0x336a('0x14')](_0x4cfcd2['SmsInteractionId'])){_0x180cb3[_0x336a('0x16')]['findOne']({'where':{'id':_0x4cfcd2[_0x336a('0x17')]}})[_0x336a('0x18')](function(_0x55f544){if(_0x55f544){_0x55f544['update']({'lastMsgAt':_0x4cfcd2[_0x336a('0x19')],'lastMsgDirection':_0x4cfcd2['direction'][_0x336a('0x11')]()});}})['catch'](function(_0x535cc9){console[_0x336a('0x1a')](_0x535cc9);});}if(_0x4cfcd2['direction']===_0x336a('0x12')&&!_0x4cfcd2[_0x336a('0x13')]){var _0x4b3503;_0x180cb3[_0x336a('0x1b')]['find']({'where':{'id':_0x4cfcd2[_0x336a('0x1c')]},'raw':!![]})[_0x336a('0x18')](function(_0x373a83){_0x4b3503=_0x373a83;if(_0x4b3503&&_0x4b3503[_0x336a('0x1d')]){switch(_0x4b3503[_0x336a('0x1d')]){case _0x336a('0x1e'):var _0x80f068=require(_0x336a('0x1e'));if(_0x4b3503[_0x336a('0x1f')]&&_0x4b3503[_0x336a('0x20')]&&_0x4b3503[_0x336a('0x21')]){var _0x40b9a7=new _0x80f068(_0x4b3503[_0x336a('0x1f')],_0x4b3503[_0x336a('0x20')]);_0x40b9a7['messages']['create']({'body':_0x4cfcd2[_0x336a('0xd')],'to':_0x4cfcd2[_0x336a('0x21')],'from':_0x4b3503['phone'],'statusCallback':_0x4b3503[_0x336a('0x22')]+'/api/sms/messages/'+_0x4cfcd2['id']+_0x336a('0x23')+_0x4b3503[_0x336a('0x24')]})[_0x336a('0x18')](function(_0x2ce7ae){if(_0x2ce7ae['sid']){return _0x43cb75['update']({'messageId':_0x2ce7ae[_0x336a('0x25')]});}})['catch'](function(_0x287efb){logger['error'](_0x336a('0x26'),_0x336a('0x27'),_0x336a('0x1e'),util[_0x336a('0x28')](_0x287efb,{'showHidden':![],'depth':null}));});}else{logger['error']('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),_0x336a('0x1e'),'Missing\x20parameters:\x20phone,\x20accountSid\x20or\x20authToken');}break;case _0x336a('0x29'):var _0x40a10d=_0x336a('0x2a');if(_0x4b3503['username']&&_0x4b3503[_0x336a('0x2b')]){var _0x191662={'recipient':[_0x4cfcd2[_0x336a('0x21')]],'message':_0x4cfcd2[_0x336a('0xd')],'message_type':_0x4b3503[_0x336a('0x2c')]};if(_0x4b3503[_0x336a('0x2c')]&&_0x4b3503[_0x336a('0x2c')]!=='SI'){_0x191662[_0x336a('0x2d')]=_0x4b3503[_0x336a('0x21')];}var _0x3a05db={'url':_0x40a10d+_0x336a('0x2e')+_0x4b3503[_0x336a('0x2f')]+_0x336a('0x30')+_0x4b3503[_0x336a('0x2b')],'method':_0x336a('0x31')};rp(_0x3a05db)['then'](function(_0x9f750e){var _0x1b570a=_0x9f750e[_0x336a('0x32')](';');var _0x375d5d={'user_key':_0x1b570a[0x0],'session_key':_0x1b570a[0x1]};_0x3a05db={'url':_0x40a10d+'sms','method':_0x336a('0x33'),'headers':{'user_key':_0x375d5d[_0x336a('0x34')],'Session_key':_0x375d5d['session_key']},'json':!![],'body':_0x191662};return rp(_0x3a05db);})['then'](function(_0x54f109){if(_0x54f109['total_sent']>=0x1){var _0x4a5fac={'messageId':_0x54f109['internal_order_id']};if(_0x4b3503[_0x336a('0x2c')]!=='GP'||!_0x4b3503['deliveryReport']){_0x4a5fac[_0x336a('0x35')]=!![];}return _0x43cb75[_0x336a('0x36')](_0x4a5fac);}else{return logger[_0x336a('0x1a')](_0x336a('0x26'),'afterCreate',_0x336a('0x29'),util[_0x336a('0x28')](_0x54f109,{'showHidden':![],'depth':null}));}})[_0x336a('0x37')](function(_0x49ac27){return logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),'skebby',util[_0x336a('0x28')](_0x49ac27,{'showHidden':![],'depth':null}));});}else{logger[_0x336a('0x1a')](_0x336a('0x26'),'afterCreate','skebby',_0x336a('0x38'));}break;case _0x336a('0x39'):if(_0x4b3503['authToken']){var _0x406f75={'recipient':_0x4cfcd2['phone'],'message':_0x4cfcd2[_0x336a('0xd')],'sender':_0x4b3503[_0x336a('0x3a')]||_0x4b3503[_0x336a('0x21')],'authorization':_0x4b3503[_0x336a('0x20')]};var _0x3f4dbc={'method':'POST','uri':_0x336a('0x3b'),'body':_0x406f75,'json':!![]};rp(_0x3f4dbc)[_0x336a('0x18')](function(_0x5403c9){var _0x54d855={'messageId':_0x5403c9['requestid']};if(!_0x4b3503[_0x336a('0x3c')]){_0x54d855[_0x336a('0x35')]=!![];}return _0x43cb75[_0x336a('0x36')](_0x54d855);})['catch'](function(_0x1acc92){logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),'connectel',util[_0x336a('0x28')](_0x1acc92,{'showHidden':![],'depth':null}));});}else{logger[_0x336a('0x1a')]('SmsMessage,\x20%s,\x20%s,\x20%s','afterCreate',_0x336a('0x39'),_0x336a('0x3d'));}break;case'clicksend':if(_0x4b3503[_0x336a('0x2f')]&&_0x4b3503[_0x336a('0x2b')]){var _0x406f75={'messages':[{'source':'xCALLY\x20Motion','to':_0x4cfcd2[_0x336a('0x21')],'body':_0x4cfcd2['body'],'from':_0x4b3503['senderString']||_0x4b3503['phone']}]};var _0x5986d7=util['format'](_0x336a('0x3e'),_0x4b3503['username'],_0x4b3503['password']);var _0x3f4dbc={'method':'POST','uri':'https://rest.clicksend.com/v3/sms/send','body':_0x406f75,'headers':{'Authorization':util[_0x336a('0x3f')](_0x336a('0x40'),new Buffer(_0x5986d7)['toString']('base64'))},'json':!![]};rp(_0x3f4dbc)[_0x336a('0x18')](function(_0x4a183f){if(_0x4a183f[_0x336a('0x41')]>=0xc8&&_0x4a183f['http_code']<=0xce){if(_0x4a183f[_0x336a('0x42')]&&_0x4a183f[_0x336a('0x42')][_0x336a('0x43')]>0x0){var _0x1a82ee=_['head'](_0x4a183f[_0x336a('0x42')][_0x336a('0x44')]);var _0x440c33={'messageId':_0x1a82ee[_0x336a('0x45')]};if(!_0x4b3503[_0x336a('0x3c')]){_0x440c33[_0x336a('0x35')]=!![];}return _0x43cb75[_0x336a('0x36')](_0x440c33);}else{logger[_0x336a('0x1a')](_0x336a('0x26'),'afterCreate',_0x336a('0x46'),util[_0x336a('0x28')](_0x4a183f,{'showHidden':![],'depth':null}));}}else{logger[_0x336a('0x1a')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),'clickSend',util[_0x336a('0x28')](_0x4a183f,{'showHidden':![],'depth':null}));}})[_0x336a('0x37')](function(_0x2f3dff){logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),_0x336a('0x46'),util['inspect'](_0x2f3dff,{'showHidden':![],'depth':null}));});}else{logger[_0x336a('0x1a')](_0x336a('0x26'),'afterCreate',_0x336a('0x46'),_0x336a('0x38'));}break;case _0x336a('0x47'):if(_0x4b3503['authId']&&_0x4b3503[_0x336a('0x20')]){var _0x406f75={'dst':_0x4cfcd2['phone'],'text':_0x4cfcd2[_0x336a('0xd')],'src':_0x4b3503[_0x336a('0x3a')]||_0x4b3503[_0x336a('0x21')],'url':_0x4b3503[_0x336a('0x22')]+_0x336a('0x48')+_0x4cfcd2['id']+_0x336a('0x23')+_0x4b3503[_0x336a('0x24')]};var _0x5986d7=util[_0x336a('0x3f')](_0x336a('0x3e'),_0x4b3503[_0x336a('0x49')],_0x4b3503[_0x336a('0x20')]);var _0x3f4dbc={'method':_0x336a('0x33'),'uri':util[_0x336a('0x3f')]('https://api.plivo.com/v1/Account/%s/Message/',_0x4b3503['authId']),'body':_0x406f75,'headers':{'Authorization':util[_0x336a('0x3f')]('Basic\x20%s',new Buffer(_0x5986d7)[_0x336a('0x4a')]('base64'))},'json':!![]};rp(_0x3f4dbc)[_0x336a('0x18')](function(_0xb22a29){var _0x16ebc1={'messageId':_0xb22a29['message_uuid'][0x0]};return _0x43cb75[_0x336a('0x36')](_0x16ebc1);})[_0x336a('0x37')](function(_0x1e07d5){logger[_0x336a('0x1a')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),'plivo',util[_0x336a('0x28')](_0x1e07d5,{'showHidden':![],'depth':null}));});}else{logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),_0x336a('0x47'),'Missing\x20parameters:\x20authId,\x20authToken');}break;case _0x336a('0x4b'):if(_0x4b3503[_0x336a('0x2f')]&&_0x4b3503[_0x336a('0x2b')]){if(_0x4b3503[_0x336a('0x4c')]){var _0x5a386b={'method':_0x336a('0x33'),'uri':_0x4b3503[_0x336a('0x4c')]+_0x336a('0x4d'),'body':{'username':_0x4b3503[_0x336a('0x2f')],'password':_0x4b3503['password']},'json':!![]};return rp(_0x5a386b)[_0x336a('0x18')](function(_0x22c696){var _0x12addf={'method':'POST','uri':_0x4b3503[_0x336a('0x4c')]+_0x336a('0x4e'),'body':{'messages':[{'from':_0x4b3503[_0x336a('0x21')],'destinations':[{'to':_0x4cfcd2['phone']}],'text':_0x4cfcd2['body'],'notifyUrl':_0x4b3503[_0x336a('0x22')]+_0x336a('0x48')+_0x4cfcd2['id']+_0x336a('0x23')+_0x4b3503[_0x336a('0x24')],'notifyContentType':'application/json','callbackData':_0x4b3503[_0x336a('0x21')]+';'+_0x4cfcd2[_0x336a('0xd')]}]},'headers':{'Authorization':'IBSSO\x20'+_0x22c696['token']},'json':!![]};return rp(_0x12addf)[_0x336a('0x18')](function(_0x51d100){if(_0x51d100[_0x336a('0x44')]){var _0x2ce2f7={'messageId':_0x51d100[_0x336a('0x44')][0x0][_0x336a('0xb')]};if(!_0x4b3503[_0x336a('0x3c')]){_0x2ce2f7[_0x336a('0x35')]=!![];}return _0x43cb75['update'](_0x2ce2f7);}else{return logger[_0x336a('0x1a')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),_0x336a('0x4b'),util[_0x336a('0x28')](_0x51d100,{'showHidden':![],'depth':null}));}});})[_0x336a('0x37')](function(_0x51c99d){return logger['error'](_0x336a('0x26'),'afterCreate','infobip',util[_0x336a('0x28')](_0x51c99d,{'showHidden':![],'depth':null}));});}else{logger['error']('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),_0x336a('0x4b'),_0x336a('0x4f'));}}else{logger[_0x336a('0x1a')](_0x336a('0x26'),'afterCreate',_0x336a('0x4b'),'Missing\x20parameters:\x20username,\x20password');}break;case _0x336a('0x50'):var _0x4198e5=require('crypto');if(_0x4b3503[_0x336a('0x51')]){var _0x17c2e0={};_0x17c2e0[_0x336a('0x52')]=_0x4b3503[_0x336a('0x2f')];_0x17c2e0['phone']=_0x4cfcd2[_0x336a('0x21')];_0x17c2e0['sender']=_0x4b3503[_0x336a('0x21')];_0x17c2e0['text']=_0x4cfcd2['body'];_0x17c2e0['timestamp']=+new Date();var _0x33e686='';var _0x282529='';var _0x134c4a=Object['keys'](_0x17c2e0);_0x134c4a[_0x336a('0x53')]();for(var _0x45add5=0x0;_0x45add5<_0x134c4a['length'];_0x45add5++){if(_0x33e686!=''){_0x33e686+='&';}_0x33e686+=_0x134c4a[_0x45add5]+'='+encodeURIComponent(_0x17c2e0[_0x134c4a[_0x45add5]]);_0x282529+=_0x17c2e0[_0x134c4a[_0x45add5]];}_0x282529+=_0x4b3503[_0x336a('0x51')];_0x282529=_0x4198e5[_0x336a('0x54')](_0x336a('0x55'))[_0x336a('0x36')](_0x282529)['digest'](_0x336a('0x56'));if(_0x33e686!==''){_0x33e686+='&';}_0x33e686+=_0x336a('0x57')+_0x282529;var _0x3a05db={'method':_0x336a('0x31'),'uri':_0x4b3503['baseUrl']+_0x336a('0x58')+_0x33e686,'json':!![]};return rp(_0x3a05db)['then'](function(_0x17b68e){var _0x4d77c7=Object['keys'](_0x17b68e);if(_0x17b68e[_0x4d77c7[0x0]][_0x336a('0x1a')]&&parseInt(_0x17b68e[_0x4d77c7[0x0]][_0x336a('0x1a')])===0x0){var _0x54e62b={'messageId':_0x17b68e[_0x4d77c7[0x0]]['id_sms']};if(!_0x4b3503[_0x336a('0x3c')]){_0x54e62b[_0x336a('0x35')]=!![];}return _0x43cb75['update'](_0x54e62b);}else{return logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),'csc',util[_0x336a('0x28')](_0x17b68e['error'],{'showHidden':![],'depth':null}));}})[_0x336a('0x37')](function(_0x5c0a2e){return logger['error'](_0x336a('0x26'),_0x336a('0x27'),_0x336a('0x50'),util['inspect'](_0x5c0a2e,{'showHidden':![],'depth':null}));});}else{logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),'csc',_0x336a('0x59'));}break;case _0x336a('0x5a'):if(_0x4b3503[_0x336a('0x51')]){var _0x36912e={'method':_0x336a('0x33'),'uri':'https://platform.clickatell.com/messages','headers':{'Authorization':_0x4b3503['apiKey']},'body':{'content':_0x4cfcd2[_0x336a('0xd')],'to':[_0x4cfcd2[_0x336a('0x21')]],'from':_0x4b3503[_0x336a('0x21')],'binary':![],'clientMessageId':_0x336a('0x5b'),'charset':_0x336a('0x5c')},'json':!![]};rp(_0x36912e)[_0x336a('0x18')](function(_0x18b9d4){if(!_0x18b9d4[_0x336a('0x1a')]){var _0x3c6fb4={'messageId':_0x18b9d4[_0x336a('0x44')][0x0][_0x336a('0x5d')]};if(!_0x4b3503[_0x336a('0x3c')]){_0x3c6fb4[_0x336a('0x35')]=!![];}return _0x43cb75['update'](_0x3c6fb4);}else{return logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),'clickatell',util[_0x336a('0x28')](_0x18b9d4[_0x336a('0x1a')],{'showHidden':![],'depth':null}));}})[_0x336a('0x37')](function(_0x411b79){return logger[_0x336a('0x1a')]('SmsMessage,\x20%s,\x20%s,\x20%s','afterCreate',_0x336a('0x5a'),util[_0x336a('0x28')](_0x411b79,{'showHidden':![],'depth':null}));});}else{logger['error'](_0x336a('0x26'),'afterCreate',_0x336a('0x5a'),'Missing\x20parameters:\x20apiKey');}break;case _0x336a('0x5e'):if(_0x4b3503[_0x336a('0x2f')]&&_0x4b3503[_0x336a('0x2b')]){var _0x5986d7=util[_0x336a('0x3f')](_0x336a('0x3e'),_0x4b3503[_0x336a('0x2f')],_0x4b3503[_0x336a('0x2b')]);var _0x3f4dbc={'method':_0x336a('0x33'),'uri':_0x336a('0x5f')+_0x4b3503[_0x336a('0x60')]+_0x336a('0x61'),'body':{'to':[_0x4cfcd2['phone']],'text':_0x4cfcd2[_0x336a('0xd')],'from':_0x4b3503[_0x336a('0x21')],'applicationId':_0x4b3503['applicationId']},'headers':{'Authorization':util[_0x336a('0x3f')](_0x336a('0x40'),new Buffer(_0x5986d7)[_0x336a('0x4a')](_0x336a('0x62')))},'json':!![]};rp(_0x3f4dbc)[_0x336a('0x18')](function(_0x5eb3cf){if(_0x5eb3cf['id']){var _0xfee1dd={'messageId':_0x5eb3cf['id']};return _0x43cb75[_0x336a('0x36')](_0xfee1dd);}else{logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),'bandwidth',util['inspect'](_0x5eb3cf,{'showHidden':![],'depth':null}));}})[_0x336a('0x37')](function(_0x160ffa){logger[_0x336a('0x1a')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),_0x336a('0x5e'),util['inspect'](_0x160ffa,{'showHidden':![],'depth':null}));});}else{logger[_0x336a('0x1a')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),_0x336a('0x5e'),_0x336a('0x38'));}break;case'intelepeer':if(_0x4b3503[_0x336a('0x51')]){var _0x1a2401={};var _0x3a05db={'method':_0x336a('0x33'),'uri':_0x336a('0x63'),'headers':{'Authorization':_0x336a('0x64')+_0x4b3503['apiKey'],'Content-Type':_0x336a('0x65')},'body':{'from':_0x4b3503[_0x336a('0x21')],'to':_0x4cfcd2[_0x336a('0x21')],'text':_0x4cfcd2[_0x336a('0xd')]},'json':!![]};return rp(_0x3a05db)[_0x336a('0x18')](function(_0x27d1ee){if(_0x27d1ee[_0x336a('0x66')]==0xca){_0x1a2401['message']=_0x27d1ee;var _0x1570f2={'method':_0x336a('0x33'),'uri':_0x336a('0x67'),'headers':{'Authorization':_0x336a('0x64')+_0x4b3503[_0x336a('0x51')],'Content-Type':_0x336a('0x65')},'body':{'refid':_0x1a2401['message'][_0x336a('0x68')]},'json':!![]};return rp(_0x1570f2)['then'](function(_0x4c5446){_0x1a2401[_0x336a('0x69')]=_0x4c5446;var _0x41f100={'messageId':_0x1a2401['message']['refid'],'read':!![]};return _0x43cb75[_0x336a('0x36')](_0x41f100);});}else{return logger[_0x336a('0x1a')](_0x336a('0x26'),_0x336a('0x27'),_0x336a('0x6a'),util[_0x336a('0x28')](_0x27d1ee,{'showHidden':![],'depth':null}));}})['catch'](function(_0xd0b723){return logger['error'](_0x336a('0x26'),_0x336a('0x27'),_0x336a('0x6a'),util[_0x336a('0x28')](_0xd0b723,{'showHidden':![],'depth':null}));});}else{return logger['error']('SmsMessage,\x20%s,\x20%s,\x20%s',_0x336a('0x27'),_0x336a('0x6a'),_0x336a('0x6b'));}break;}}})[_0x336a('0x6c')](function(){_0x2d52ff();});}else{_0x2d52ff();}}},'charset':_0x336a('0x6d'),'collate':_0x336a('0x6e')});};
\ No newline at end of file