Built motion from commit da617fac.|2.6.6
[motion2.git] / server / config / triggers / index.js
index 80df067..e70d64d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1a80=['MailMessage','OpenchannelInteraction','Openchannel','OpenchannelMessage','EventManager','then','info','error','Trigger,\x20%s','catch','channel','direction','UserId','User','find','interface','SIP/%s','name','incomingmessage','outgoingmessage','get','event','changed','closed','format','default','length','hasOwnProperty','model','hook','callback','util','jayson/promise','triggers','http','Chat','ChatInteraction','afterCreate','newinteraction','afterUpdate','closedinteraction','ChatMessage','newmessage','SmsInteraction','Sms','Fax','FaxInteraction','FaxMessage','Mail','MailInteraction'];(function(_0x17406a,_0x1e2320){var _0x1501ff=function(_0x4b075a){while(--_0x4b075a){_0x17406a['push'](_0x17406a['shift']());}};_0x1501ff(++_0x1e2320);}(_0x1a80,0x1e1));var _0x01a8=function(_0x24076a,_0x9371cb){_0x24076a=_0x24076a-0x0;var _0x2ac591=_0x1a80[_0x24076a];return _0x2ac591;};'use strict';var util=require(_0x01a8('0x0'));var db=require('../../mysqldb')['db'];var jayson=require(_0x01a8('0x1'));var logger=require('../logger')(_0x01a8('0x2'));var client=jayson['client'][_0x01a8('0x3')]({'port':0x232a});var triggers=[{'channel':_0x01a8('0x4'),'model':_0x01a8('0x5'),'event':_0x01a8('0x6'),'condition':_0x01a8('0x7'),'callback':afterCreate},{'channel':_0x01a8('0x4'),'model':'ChatInteraction','event':_0x01a8('0x8'),'condition':_0x01a8('0x9'),'callback':afterUpdate},{'channel':'Chat','model':_0x01a8('0xa'),'event':_0x01a8('0x6'),'condition':_0x01a8('0xb'),'callback':afterCreateMessage},{'channel':'Sms','model':_0x01a8('0xc'),'event':'afterCreate','condition':_0x01a8('0x7'),'callback':afterCreate},{'channel':_0x01a8('0xd'),'model':_0x01a8('0xc'),'event':_0x01a8('0x8'),'condition':_0x01a8('0x9'),'callback':afterUpdate},{'channel':'Sms','model':'SmsMessage','event':_0x01a8('0x6'),'condition':_0x01a8('0xb'),'callback':afterCreateMessage},{'channel':_0x01a8('0xe'),'model':_0x01a8('0xf'),'event':_0x01a8('0x6'),'condition':_0x01a8('0x7'),'callback':afterCreate},{'channel':_0x01a8('0xe'),'model':_0x01a8('0xf'),'event':'afterUpdate','condition':_0x01a8('0x9'),'callback':afterUpdate},{'channel':_0x01a8('0xe'),'model':_0x01a8('0x10'),'event':_0x01a8('0x6'),'condition':_0x01a8('0xb'),'callback':afterCreateMessage},{'channel':_0x01a8('0x11'),'model':'MailInteraction','event':_0x01a8('0x6'),'condition':_0x01a8('0x7'),'callback':afterCreate},{'channel':'Mail','model':_0x01a8('0x12'),'event':_0x01a8('0x8'),'condition':_0x01a8('0x9'),'callback':afterUpdate},{'channel':_0x01a8('0x11'),'model':_0x01a8('0x13'),'event':'afterCreate','condition':'newmessage','callback':afterCreateMessage},{'channel':'Openchannel','model':_0x01a8('0x14'),'event':'afterCreate','condition':_0x01a8('0x7'),'callback':afterCreate},{'channel':'Openchannel','model':_0x01a8('0x14'),'event':_0x01a8('0x8'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0x01a8('0x15'),'model':_0x01a8('0x16'),'event':_0x01a8('0x6'),'condition':'newmessage','callback':afterCreateMessage}];function request(_0x20d7d8){return client['request'](_0x01a8('0x17'),_0x20d7d8)[_0x01a8('0x18')](function(_0x3049e5){logger[_0x01a8('0x19')]('Trigger,\x20%s','EventManager',_0x3049e5);if(_0x3049e5['error']){if(_0x3049e5[_0x01a8('0x1a')]['code']===0x1f4){logger[_0x01a8('0x1a')](_0x01a8('0x1b'),_0x01a8('0x17'),_0x3049e5[_0x01a8('0x1a')]);}}})[_0x01a8('0x1c')](function(_0x367ef9){logger[_0x01a8('0x1a')](_0x01a8('0x1b'),_0x01a8('0x17'),_0x367ef9);});}function afterCreateMessage(_0x336e64,_0x116625){return function(_0x374cba,_0x30e63a){_0x374cba=_0x374cba['get']({'plain':!![]});_0x374cba[_0x01a8('0x1d')]=_0x336e64;_0x374cba['event']=_0x374cba[_0x01a8('0x1e')];if(_0x374cba[_0x01a8('0x1f')]){return db[_0x01a8('0x20')][_0x01a8('0x21')]({'where':{'id':_0x374cba['UserId']},'attributes':['id','name'],'raw':!![]})['then'](function(_0x35a318){_0x374cba[_0x01a8('0x22')]=util['format'](_0x01a8('0x23'),_0x35a318[_0x01a8('0x24')]);_0x374cba[_0x01a8('0x1d')]=_0x336e64;return request({'event':_0x01a8('0x25'),'message':_0x374cba});})['catch'](function(_0x32b4d5){console[_0x01a8('0x1a')](_0x32b4d5);});}else{return request({'event':_0x01a8('0x26'),'message':_0x374cba});}};}function afterCreate(_0x36801d,_0x5017bb){return function(_0x4afac4,_0x577d8d){_0x4afac4=_0x4afac4[_0x01a8('0x27')]({'plain':!![]});_0x4afac4[_0x01a8('0x1d')]=_0x36801d;_0x4afac4[_0x01a8('0x28')]='opened';return request({'event':_0x5017bb,'message':_0x4afac4});};}function afterUpdate(_0x624506,_0xe85b88){return function(_0x33f6e7,_0x2cbf92){if(_0x33f6e7[_0x01a8('0x29')]('closed')&&_0x33f6e7[_0x01a8('0x2a')]){_0x33f6e7=_0x33f6e7[_0x01a8('0x27')]({'plain':!![]});_0x33f6e7[_0x01a8('0x1d')]=_0x624506;_0x33f6e7['event']='closed';if(_0x33f6e7[_0x01a8('0x1f')]){return db[_0x01a8('0x20')][_0x01a8('0x21')]({'where':{'id':_0x33f6e7[_0x01a8('0x1f')]},'attributes':['id',_0x01a8('0x24')],'raw':!![]})[_0x01a8('0x18')](function(_0xbd6039){_0x33f6e7[_0x01a8('0x22')]=util[_0x01a8('0x2b')](_0x01a8('0x23'),_0xbd6039[_0x01a8('0x24')]);return request({'event':_0xe85b88,'message':_0x33f6e7});})[_0x01a8('0x1c')](function(_0x46afbf){console[_0x01a8('0x1a')](_0x46afbf);});}else{return request({'event':_0xe85b88,'message':_0x33f6e7});}}};}exports[_0x01a8('0x2c')]=function(){for(var _0x3ad48f=0x0;_0x3ad48f<triggers[_0x01a8('0x2d')];_0x3ad48f+=0x1){if(db[_0x01a8('0x2e')](triggers[_0x3ad48f]['model'])){db[triggers[_0x3ad48f][_0x01a8('0x2f')]][_0x01a8('0x30')](triggers[_0x3ad48f]['event'],triggers[_0x3ad48f][_0x01a8('0x31')](triggers[_0x3ad48f][_0x01a8('0x1d')]['toLowerCase'](),triggers[_0x3ad48f]['condition']));}}};
\ No newline at end of file
+var _0x3b48=['util','../../mysqldb','jayson/promise','../logger','triggers','client','ChatInteraction','afterCreate','newinteraction','Chat','afterUpdate','closedinteraction','ChatMessage','newmessage','ChatOfflineMessage','Sms','SmsInteraction','SmsMessage','WhatsappInteraction','Whatsapp','WhatsappMessage','FaxInteraction','Fax','FaxMessage','Mail','MailInteraction','MailMessage','Openchannel','OpenchannelInteraction','request','EventManager','then','info','Trigger,\x20%s','error','code','catch','get','channel','motionChannel','event','direction','resolve','ContactId','sequelize','query','QueryTypes','contact','UserId','SIP/%s','name','agent','incomingmessage','AfterCreateMessage','offlineMessage','opened','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','Sequelize','undefined','format','AfterCreate','changed','closed','substatus','SELECT','AfterUpdate','find','fullname','internal','default','length','hasOwnProperty','model','toLowerCase','condition'];(function(_0xfa131e,_0x4b1912){var _0x3146b4=function(_0x5e2ede){while(--_0x5e2ede){_0xfa131e['push'](_0xfa131e['shift']());}};_0x3146b4(++_0x4b1912);}(_0x3b48,0x1c2));var _0x83b4=function(_0x3820ba,_0x52c5c5){_0x3820ba=_0x3820ba-0x0;var _0x3c70ee=_0x3b48[_0x3820ba];return _0x3c70ee;};'use strict';var util=require(_0x83b4('0x0'));var db=require(_0x83b4('0x1'))['db'];var jayson=require(_0x83b4('0x2'));var logger=require(_0x83b4('0x3'))(_0x83b4('0x4'));var client=jayson[_0x83b4('0x5')]['http']({'port':0x232a});var triggers=[{'channel':'Chat','model':_0x83b4('0x6'),'event':_0x83b4('0x7'),'condition':_0x83b4('0x8'),'callback':afterCreate},{'channel':_0x83b4('0x9'),'model':_0x83b4('0x6'),'event':_0x83b4('0xa'),'condition':_0x83b4('0xb'),'callback':afterUpdate},{'channel':_0x83b4('0x9'),'model':_0x83b4('0xc'),'event':_0x83b4('0x7'),'condition':_0x83b4('0xd'),'callback':afterCreateMessage},{'channel':_0x83b4('0x9'),'model':_0x83b4('0xe'),'event':_0x83b4('0x7'),'condition':_0x83b4('0xd'),'callback':afterCreateOfflineMessage},{'channel':_0x83b4('0xf'),'model':_0x83b4('0x10'),'event':_0x83b4('0x7'),'condition':'newinteraction','callback':afterCreate},{'channel':_0x83b4('0xf'),'model':_0x83b4('0x10'),'event':'afterUpdate','condition':_0x83b4('0xb'),'callback':afterUpdate},{'channel':_0x83b4('0xf'),'model':_0x83b4('0x11'),'event':_0x83b4('0x7'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Whatsapp','model':_0x83b4('0x12'),'event':_0x83b4('0x7'),'condition':_0x83b4('0x8'),'callback':afterCreate},{'channel':_0x83b4('0x13'),'model':_0x83b4('0x12'),'event':_0x83b4('0xa'),'condition':'closedinteraction','callback':afterUpdate},{'channel':'Whatsapp','model':_0x83b4('0x14'),'event':_0x83b4('0x7'),'condition':_0x83b4('0xd'),'callback':afterCreateMessage},{'channel':'Fax','model':_0x83b4('0x15'),'event':_0x83b4('0x7'),'condition':_0x83b4('0x8'),'callback':afterCreate},{'channel':_0x83b4('0x16'),'model':_0x83b4('0x15'),'event':_0x83b4('0xa'),'condition':_0x83b4('0xb'),'callback':afterUpdate},{'channel':_0x83b4('0x16'),'model':_0x83b4('0x17'),'event':'afterCreate','condition':_0x83b4('0xd'),'callback':afterCreateMessage},{'channel':_0x83b4('0x18'),'model':'MailInteraction','event':_0x83b4('0x7'),'condition':_0x83b4('0x8'),'callback':afterCreate},{'channel':_0x83b4('0x18'),'model':_0x83b4('0x19'),'event':'afterUpdate','condition':_0x83b4('0xb'),'callback':afterUpdate},{'channel':_0x83b4('0x18'),'model':_0x83b4('0x1a'),'event':'afterCreate','condition':_0x83b4('0xd'),'callback':afterCreateMessage},{'channel':_0x83b4('0x1b'),'model':_0x83b4('0x1c'),'event':_0x83b4('0x7'),'condition':_0x83b4('0x8'),'callback':afterCreate},{'channel':_0x83b4('0x1b'),'model':'OpenchannelInteraction','event':'afterUpdate','condition':_0x83b4('0xb'),'callback':afterUpdate},{'channel':'Openchannel','model':'OpenchannelMessage','event':_0x83b4('0x7'),'condition':_0x83b4('0xd'),'callback':afterCreateMessage}];function request(_0x51cb7d){return client[_0x83b4('0x1d')](_0x83b4('0x1e'),_0x51cb7d)[_0x83b4('0x1f')](function(_0x14f8ac){logger[_0x83b4('0x20')](_0x83b4('0x21'),_0x83b4('0x1e'),_0x14f8ac);if(_0x14f8ac['error']){if(_0x14f8ac[_0x83b4('0x22')][_0x83b4('0x23')]===0x1f4){logger[_0x83b4('0x22')](_0x83b4('0x21'),_0x83b4('0x1e'),_0x14f8ac[_0x83b4('0x22')]);}}})[_0x83b4('0x24')](function(_0x22f3d3){logger[_0x83b4('0x22')](_0x83b4('0x21'),_0x83b4('0x1e'),_0x22f3d3);});}function afterCreateMessage(_0x114ffb){return function(_0x2c3963){_0x2c3963=_0x2c3963[_0x83b4('0x25')]({'plain':!![]});_0x2c3963[_0x83b4('0x26')]=_0x114ffb;_0x2c3963[_0x83b4('0x27')]=_0x114ffb;_0x2c3963[_0x83b4('0x28')]=_0x2c3963[_0x83b4('0x29')];Promise[_0x83b4('0x2a')]()[_0x83b4('0x1f')](function(){if(typeof _0x2c3963[_0x83b4('0x2b')]==='undefined')return null;var _0x422fa4='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x2c3963[_0x83b4('0x2b')];return db[_0x83b4('0x2c')][_0x83b4('0x2d')](_0x422fa4,{'type':db['Sequelize'][_0x83b4('0x2e')]['SELECT'],'raw':!![]});})[_0x83b4('0x1f')](function(_0x54ffaa){if(_0x54ffaa){_0x2c3963[_0x83b4('0x2f')]=_0x54ffaa[0x0];}if(typeof _0x2c3963['UserId']==='undefined')return;return getAgent(_0x2c3963[_0x83b4('0x30')]);})['then'](function(_0x19e376){if(_0x19e376){_0x2c3963['interface']=util['format'](_0x83b4('0x31'),_0x19e376[_0x83b4('0x32')]);_0x2c3963[_0x83b4('0x33')]=_0x19e376;_0x2c3963[_0x83b4('0x26')]=_0x114ffb;return request({'event':_0x83b4('0x34'),'message':_0x2c3963});}else{return request({'event':'outgoingmessage','message':_0x2c3963});}})['catch'](function(_0x373591){logger[_0x83b4('0x22')](_0x83b4('0x21'),_0x83b4('0x35'),_0x373591);});};}function afterCreateOfflineMessage(_0x350f45){return function(_0x39f0ae){_0x39f0ae=_0x39f0ae['get']({'plain':!![]});_0x39f0ae[_0x83b4('0x26')]=_0x350f45;_0x39f0ae['motionChannel']=_0x350f45;_0x39f0ae['event']=_0x83b4('0x36');return request({'event':_0x39f0ae[_0x83b4('0x28')],'message':_0x39f0ae});};}function afterCreate(_0x401744,_0x407a3b){return function(_0x5a3e35){_0x5a3e35=_0x5a3e35[_0x83b4('0x25')]({'plain':!![]});_0x5a3e35[_0x83b4('0x26')]=_0x401744;_0x5a3e35[_0x83b4('0x27')]=_0x401744;_0x5a3e35[_0x83b4('0x28')]=_0x83b4('0x37');Promise['resolve']()[_0x83b4('0x1f')](function(){var _0x40ab07=_0x83b4('0x38')+_0x5a3e35['ContactId'];return db[_0x83b4('0x2c')][_0x83b4('0x2d')](_0x40ab07,{'type':db[_0x83b4('0x39')][_0x83b4('0x2e')]['SELECT'],'raw':!![]});})[_0x83b4('0x1f')](function(_0x321351){if(_0x321351){_0x5a3e35['contact']=_0x321351[0x0];}if(typeof _0x5a3e35[_0x83b4('0x30')]===_0x83b4('0x3a'))return;return getAgent(_0x5a3e35[_0x83b4('0x30')]);})[_0x83b4('0x1f')](function(_0x4a6a65){if(_0x4a6a65){_0x5a3e35['interface']=util[_0x83b4('0x3b')](_0x83b4('0x31'),_0x4a6a65['name']);_0x5a3e35[_0x83b4('0x33')]=_0x4a6a65;}return request({'event':_0x407a3b,'message':_0x5a3e35});})['catch'](function(_0x5f1340){logger['error'](_0x83b4('0x21'),_0x83b4('0x3c'),_0x5f1340);});};}function afterUpdate(_0x1816fa){return function(_0x57c812){var _0x103ef6=_0x57c812[_0x83b4('0x3d')](_0x83b4('0x3e'))&&_0x57c812['closed'];var _0x791a9c=_0x57c812[_0x83b4('0x3d')]('substatus');if(_0x103ef6||_0x791a9c){var _0x5d43e3=_0x103ef6?_0x83b4('0xb'):_0x83b4('0x3f');var _0x4bb010=_0x57c812[_0x83b4('0x25')]({'plain':!![]});_0x4bb010[_0x83b4('0x26')]=_0x1816fa;_0x4bb010[_0x83b4('0x27')]=_0x1816fa;_0x4bb010[_0x83b4('0x28')]=_0x103ef6?_0x83b4('0x3e'):'substatus';var _0x1c77e7=_0x83b4('0x38')+_0x4bb010[_0x83b4('0x2b')];return db[_0x83b4('0x2c')][_0x83b4('0x2d')](_0x1c77e7,{'type':db['Sequelize']['QueryTypes'][_0x83b4('0x40')],'raw':!![]})[_0x83b4('0x1f')](function(_0x445c5e){if(_0x445c5e){_0x4bb010['contact']=_0x445c5e[0x0];}if(typeof _0x4bb010['UserId']===_0x83b4('0x3a'))return;return getAgent(_0x4bb010[_0x83b4('0x30')]);})[_0x83b4('0x1f')](function(_0x266209){if(_0x266209){_0x4bb010['interface']=util[_0x83b4('0x3b')](_0x83b4('0x31'),_0x266209[_0x83b4('0x32')]);_0x4bb010[_0x83b4('0x33')]=_0x266209;}return request({'event':_0x5d43e3,'message':_0x4bb010});})[_0x83b4('0x24')](function(_0x7acfd2){logger[_0x83b4('0x22')](_0x83b4('0x21'),_0x83b4('0x41'),_0x7acfd2);});}};}function getAgent(_0x42c3ef){return db['User'][_0x83b4('0x42')]({'where':{'id':_0x42c3ef},'attributes':['id',_0x83b4('0x32'),_0x83b4('0x43'),'email',_0x83b4('0x44')],'raw':!![]})[_0x83b4('0x1f')](function(_0x3c6697){return _0x3c6697;});}exports[_0x83b4('0x45')]=function(){for(var _0x48b62f=0x0;_0x48b62f<triggers[_0x83b4('0x46')];_0x48b62f+=0x1){if(db[_0x83b4('0x47')](triggers[_0x48b62f][_0x83b4('0x48')])){db[triggers[_0x48b62f][_0x83b4('0x48')]]['hook'](triggers[_0x48b62f]['event'],triggers[_0x48b62f]['callback'](triggers[_0x48b62f][_0x83b4('0x26')][_0x83b4('0x49')](),triggers[_0x48b62f][_0x83b4('0x4a')]));}}};
\ No newline at end of file