Built motion from commit 775e2a94.|2.6.3
[motion2.git] / server / config / triggers / index.js
index 98cc0cb..3aa2b18 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1a51=['opened','Sequelize','QueryTypes','closed','ContactId','length','hasOwnProperty','model','callback','toLowerCase','condition','util','../../mysqldb','jayson/promise','../logger','triggers','lodash','client','Chat','afterCreate','newinteraction','ChatInteraction','afterUpdate','closedinteraction','ChatMessage','Sms','SmsInteraction','WhatsappInteraction','Whatsapp','WhatsappMessage','newmessage','Fax','FaxInteraction','FaxMessage','Mail','MailInteraction','Openchannel','OpenchannelInteraction','OpenchannelMessage','EventManager','then','info','Trigger,\x20%s','error','get','channel','event','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','query','SELECT','contact','UserId','find','name','fullname','email','internal','interface','format','SIP/%s','agent','incomingmessage','outgoingmessage'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x1a51,0x1cb));var _0x11a5=function(_0xecb573,_0x40513d){_0xecb573=_0xecb573-0x0;var _0x24e538=_0x1a51[_0xecb573];return _0x24e538;};'use strict';var util=require(_0x11a5('0x0'));var db=require(_0x11a5('0x1'))['db'];var jayson=require(_0x11a5('0x2'));var logger=require(_0x11a5('0x3'))(_0x11a5('0x4'));var _=require(_0x11a5('0x5'));var client=jayson[_0x11a5('0x6')]['http']({'port':0x232a});var triggers=[{'channel':_0x11a5('0x7'),'model':'ChatInteraction','event':_0x11a5('0x8'),'condition':_0x11a5('0x9'),'callback':afterCreate},{'channel':'Chat','model':_0x11a5('0xa'),'event':_0x11a5('0xb'),'condition':_0x11a5('0xc'),'callback':afterUpdate},{'channel':'Chat','model':_0x11a5('0xd'),'event':_0x11a5('0x8'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0x11a5('0xe'),'model':_0x11a5('0xf'),'event':_0x11a5('0x8'),'condition':_0x11a5('0x9'),'callback':afterCreate},{'channel':_0x11a5('0xe'),'model':_0x11a5('0xf'),'event':_0x11a5('0xb'),'condition':_0x11a5('0xc'),'callback':afterUpdate},{'channel':_0x11a5('0xe'),'model':'SmsMessage','event':_0x11a5('0x8'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Whatsapp','model':_0x11a5('0x10'),'event':_0x11a5('0x8'),'condition':_0x11a5('0x9'),'callback':afterCreate},{'channel':_0x11a5('0x11'),'model':_0x11a5('0x10'),'event':_0x11a5('0xb'),'condition':_0x11a5('0xc'),'callback':afterUpdate},{'channel':_0x11a5('0x11'),'model':_0x11a5('0x12'),'event':_0x11a5('0x8'),'condition':_0x11a5('0x13'),'callback':afterCreateMessage},{'channel':_0x11a5('0x14'),'model':'FaxInteraction','event':'afterCreate','condition':_0x11a5('0x9'),'callback':afterCreate},{'channel':_0x11a5('0x14'),'model':_0x11a5('0x15'),'event':'afterUpdate','condition':_0x11a5('0xc'),'callback':afterUpdate},{'channel':_0x11a5('0x14'),'model':_0x11a5('0x16'),'event':_0x11a5('0x8'),'condition':_0x11a5('0x13'),'callback':afterCreateMessage},{'channel':_0x11a5('0x17'),'model':_0x11a5('0x18'),'event':'afterCreate','condition':_0x11a5('0x9'),'callback':afterCreate},{'channel':_0x11a5('0x17'),'model':'MailInteraction','event':_0x11a5('0xb'),'condition':_0x11a5('0xc'),'callback':afterUpdate},{'channel':_0x11a5('0x17'),'model':'MailMessage','event':_0x11a5('0x8'),'condition':_0x11a5('0x13'),'callback':afterCreateMessage},{'channel':_0x11a5('0x19'),'model':_0x11a5('0x1a'),'event':_0x11a5('0x8'),'condition':_0x11a5('0x9'),'callback':afterCreate},{'channel':_0x11a5('0x19'),'model':'OpenchannelInteraction','event':_0x11a5('0xb'),'condition':_0x11a5('0xc'),'callback':afterUpdate},{'channel':_0x11a5('0x19'),'model':_0x11a5('0x1b'),'event':_0x11a5('0x8'),'condition':_0x11a5('0x13'),'callback':afterCreateMessage}];function request(_0x6061a3){return client['request'](_0x11a5('0x1c'),_0x6061a3)[_0x11a5('0x1d')](function(_0x2fff93){logger[_0x11a5('0x1e')](_0x11a5('0x1f'),'EventManager',_0x2fff93);if(_0x2fff93['error']){if(_0x2fff93[_0x11a5('0x20')]['code']===0x1f4){logger['error'](_0x11a5('0x1f'),_0x11a5('0x1c'),_0x2fff93[_0x11a5('0x20')]);}}})['catch'](function(_0x2d87dc){logger['error'](_0x11a5('0x1f'),_0x11a5('0x1c'),_0x2d87dc);});}function afterCreateMessage(_0x50e785,_0x3a6d05){return function(_0x61c2fe,_0x1e00ac){_0x61c2fe=_0x61c2fe[_0x11a5('0x21')]({'plain':!![]});_0x61c2fe[_0x11a5('0x22')]=_0x50e785;_0x61c2fe[_0x11a5('0x23')]=_0x61c2fe['direction'];var _0x15fce6=_0x11a5('0x24')+_0x61c2fe['ContactId'];return db[_0x11a5('0x25')][_0x11a5('0x26')](_0x15fce6,{'type':db['Sequelize']['QueryTypes'][_0x11a5('0x27')],'raw':!![]})[_0x11a5('0x1d')](function(_0x1d8d24){return _0x1d8d24;})[_0x11a5('0x1d')](function(_0x53d161){if(_0x53d161){_0x61c2fe[_0x11a5('0x28')]=_0x53d161[0x0];}if(_0x61c2fe[_0x11a5('0x29')]){return db['User'][_0x11a5('0x2a')]({'where':{'id':_0x61c2fe[_0x11a5('0x29')]},'attributes':['id',_0x11a5('0x2b'),_0x11a5('0x2c'),_0x11a5('0x2d'),_0x11a5('0x2e')],'raw':!![]})['then'](function(_0x45cf8c){_0x61c2fe[_0x11a5('0x2f')]=util[_0x11a5('0x30')](_0x11a5('0x31'),_0x45cf8c[_0x11a5('0x2b')]);_0x61c2fe[_0x11a5('0x22')]=_0x50e785;_0x61c2fe[_0x11a5('0x32')]=_0x45cf8c;return request({'event':_0x11a5('0x33'),'message':_0x61c2fe});})['catch'](function(_0x3168f7){console[_0x11a5('0x20')](_0x3168f7);});}else{return request({'event':_0x11a5('0x34'),'message':_0x61c2fe});}});};}function afterCreate(_0x4c6a1d,_0x138248){return function(_0x4352ea,_0x27f665){_0x4352ea=_0x4352ea['get']({'plain':!![]});_0x4352ea[_0x11a5('0x22')]=_0x4c6a1d;_0x4352ea[_0x11a5('0x23')]=_0x11a5('0x35');var _0x44e575=_0x11a5('0x24')+_0x4352ea['ContactId'];return db[_0x11a5('0x25')][_0x11a5('0x26')](_0x44e575,{'type':db[_0x11a5('0x36')][_0x11a5('0x37')][_0x11a5('0x27')],'raw':!![]})[_0x11a5('0x1d')](function(_0x3736ed){return _0x3736ed;})[_0x11a5('0x1d')](function(_0x1dabf7){if(_0x1dabf7){_0x4352ea['contact']=_0x1dabf7[0x0];}return request({'event':_0x138248,'message':_0x4352ea});});};}function afterUpdate(_0x117f7c,_0xa9b7f4){return function(_0x357a99,_0x53ec3a){if(_0x357a99['changed'](_0x11a5('0x38'))&&_0x357a99[_0x11a5('0x38')]){_0x357a99=_0x357a99['get']({'plain':!![]});_0x357a99[_0x11a5('0x22')]=_0x117f7c;_0x357a99[_0x11a5('0x23')]=_0x11a5('0x38');var _0x4e0e59=_0x11a5('0x24')+_0x357a99[_0x11a5('0x39')];return db['sequelize'][_0x11a5('0x26')](_0x4e0e59,{'type':db[_0x11a5('0x36')][_0x11a5('0x37')][_0x11a5('0x27')],'raw':!![]})['then'](function(_0x1a4c40){return _0x1a4c40;})[_0x11a5('0x1d')](function(_0xe4d72){if(_0xe4d72){_0x357a99[_0x11a5('0x28')]=_0xe4d72[0x0];}if(_0x357a99[_0x11a5('0x29')]){return db['User']['find']({'where':{'id':_0x357a99[_0x11a5('0x29')]},'attributes':['id',_0x11a5('0x2b'),'fullname',_0x11a5('0x2d'),_0x11a5('0x2e')],'raw':!![]})[_0x11a5('0x1d')](function(_0x273606){_0x357a99[_0x11a5('0x2f')]=util[_0x11a5('0x30')](_0x11a5('0x31'),_0x273606[_0x11a5('0x2b')]);_0x357a99[_0x11a5('0x32')]=_0x273606;return request({'event':_0xa9b7f4,'message':_0x357a99});})['catch'](function(_0x1e9eb4){console[_0x11a5('0x20')](_0x1e9eb4);});}else{return request({'event':_0xa9b7f4,'message':_0x357a99});}});}};}exports['default']=function(){for(var _0x1c0cbd=0x0;_0x1c0cbd<triggers[_0x11a5('0x3a')];_0x1c0cbd+=0x1){if(db[_0x11a5('0x3b')](triggers[_0x1c0cbd][_0x11a5('0x3c')])){db[triggers[_0x1c0cbd][_0x11a5('0x3c')]]['hook'](triggers[_0x1c0cbd][_0x11a5('0x23')],triggers[_0x1c0cbd][_0x11a5('0x3d')](triggers[_0x1c0cbd][_0x11a5('0x22')][_0x11a5('0x3e')](),triggers[_0x1c0cbd][_0x11a5('0x3f')]));}}};
\ No newline at end of file
+var _0x47bd=['afterUpdate','closedinteraction','ChatMessage','afterCreate','ChatOfflineMessage','Sms','SmsInteraction','SmsMessage','Whatsapp','WhatsappInteraction','WhatsappMessage','newmessage','Fax','FaxInteraction','Mail','MailInteraction','MailMessage','Openchannel','OpenchannelInteraction','request','EventManager','then','info','Trigger,\x20%s','error','code','catch','channel','event','resolve','ContactId','undefined','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','query','SELECT','contact','UserId','SIP/%s','agent','incomingmessage','outgoingmessage','AfterCreateMessage','get','motionChannel','opened','sequelize','Sequelize','QueryTypes','format','name','AfterCreate','changed','closed','substatus','interface','AfterUpdate','User','internal','default','length','hasOwnProperty','model','callback','toLowerCase','condition','util','../../mysqldb','client','http','ChatInteraction','newinteraction','Chat'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x47bd,0x1f1));var _0xd47b=function(_0x1d6d1b,_0x40f583){_0x1d6d1b=_0x1d6d1b-0x0;var _0x124fa3=_0x47bd[_0x1d6d1b];return _0x124fa3;};'use strict';var util=require(_0xd47b('0x0'));var db=require(_0xd47b('0x1'))['db'];var jayson=require('jayson/promise');var logger=require('../logger')('triggers');var client=jayson[_0xd47b('0x2')][_0xd47b('0x3')]({'port':0x232a});var triggers=[{'channel':'Chat','model':_0xd47b('0x4'),'event':'afterCreate','condition':_0xd47b('0x5'),'callback':afterCreate},{'channel':_0xd47b('0x6'),'model':_0xd47b('0x4'),'event':_0xd47b('0x7'),'condition':_0xd47b('0x8'),'callback':afterUpdate},{'channel':_0xd47b('0x6'),'model':_0xd47b('0x9'),'event':_0xd47b('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0xd47b('0x6'),'model':_0xd47b('0xb'),'event':_0xd47b('0xa'),'condition':'newmessage','callback':afterCreateOfflineMessage},{'channel':_0xd47b('0xc'),'model':_0xd47b('0xd'),'event':_0xd47b('0xa'),'condition':'newinteraction','callback':afterCreate},{'channel':_0xd47b('0xc'),'model':_0xd47b('0xd'),'event':'afterUpdate','condition':'closedinteraction','callback':afterUpdate},{'channel':_0xd47b('0xc'),'model':_0xd47b('0xe'),'event':_0xd47b('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0xd47b('0xf'),'model':_0xd47b('0x10'),'event':_0xd47b('0xa'),'condition':_0xd47b('0x5'),'callback':afterCreate},{'channel':_0xd47b('0xf'),'model':_0xd47b('0x10'),'event':_0xd47b('0x7'),'condition':_0xd47b('0x8'),'callback':afterUpdate},{'channel':_0xd47b('0xf'),'model':_0xd47b('0x11'),'event':'afterCreate','condition':_0xd47b('0x12'),'callback':afterCreateMessage},{'channel':_0xd47b('0x13'),'model':_0xd47b('0x14'),'event':_0xd47b('0xa'),'condition':_0xd47b('0x5'),'callback':afterCreate},{'channel':_0xd47b('0x13'),'model':_0xd47b('0x14'),'event':_0xd47b('0x7'),'condition':_0xd47b('0x8'),'callback':afterUpdate},{'channel':_0xd47b('0x13'),'model':'FaxMessage','event':_0xd47b('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0xd47b('0x15'),'model':_0xd47b('0x16'),'event':_0xd47b('0xa'),'condition':'newinteraction','callback':afterCreate},{'channel':_0xd47b('0x15'),'model':'MailInteraction','event':'afterUpdate','condition':'closedinteraction','callback':afterUpdate},{'channel':_0xd47b('0x15'),'model':_0xd47b('0x17'),'event':_0xd47b('0xa'),'condition':_0xd47b('0x12'),'callback':afterCreateMessage},{'channel':_0xd47b('0x18'),'model':_0xd47b('0x19'),'event':_0xd47b('0xa'),'condition':'newinteraction','callback':afterCreate},{'channel':_0xd47b('0x18'),'model':_0xd47b('0x19'),'event':_0xd47b('0x7'),'condition':'closedinteraction','callback':afterUpdate},{'channel':'Openchannel','model':'OpenchannelMessage','event':_0xd47b('0xa'),'condition':_0xd47b('0x12'),'callback':afterCreateMessage}];function request(_0x2147a5){return client[_0xd47b('0x1a')](_0xd47b('0x1b'),_0x2147a5)[_0xd47b('0x1c')](function(_0x2bfac6){logger[_0xd47b('0x1d')](_0xd47b('0x1e'),_0xd47b('0x1b'),_0x2bfac6);if(_0x2bfac6[_0xd47b('0x1f')]){if(_0x2bfac6[_0xd47b('0x1f')][_0xd47b('0x20')]===0x1f4){logger[_0xd47b('0x1f')](_0xd47b('0x1e'),_0xd47b('0x1b'),_0x2bfac6['error']);}}})[_0xd47b('0x21')](function(_0x2c98ce){logger[_0xd47b('0x1f')](_0xd47b('0x1e'),'EventManager',_0x2c98ce);});}function afterCreateMessage(_0x35617b){return function(_0xd7afeb){_0xd7afeb=_0xd7afeb['get']({'plain':!![]});_0xd7afeb[_0xd47b('0x22')]=_0x35617b;_0xd7afeb['motionChannel']=_0x35617b;_0xd7afeb[_0xd47b('0x23')]=_0xd7afeb['direction'];Promise[_0xd47b('0x24')]()[_0xd47b('0x1c')](function(){if(typeof _0xd7afeb[_0xd47b('0x25')]===_0xd47b('0x26'))return null;var _0x2dc40b=_0xd47b('0x27')+_0xd7afeb[_0xd47b('0x25')];return db['sequelize'][_0xd47b('0x28')](_0x2dc40b,{'type':db['Sequelize']['QueryTypes'][_0xd47b('0x29')],'raw':!![]});})[_0xd47b('0x1c')](function(_0x16d744){if(_0x16d744){_0xd7afeb[_0xd47b('0x2a')]=_0x16d744[0x0];}if(typeof _0xd7afeb[_0xd47b('0x2b')]===_0xd47b('0x26'))return;return getAgent(_0xd7afeb[_0xd47b('0x2b')]);})[_0xd47b('0x1c')](function(_0x10ae08){if(_0x10ae08){_0xd7afeb['interface']=util['format'](_0xd47b('0x2c'),_0x10ae08['name']);_0xd7afeb[_0xd47b('0x2d')]=_0x10ae08;_0xd7afeb[_0xd47b('0x22')]=_0x35617b;return request({'event':_0xd47b('0x2e'),'message':_0xd7afeb});}else{return request({'event':_0xd47b('0x2f'),'message':_0xd7afeb});}})[_0xd47b('0x21')](function(_0x2c0236){logger[_0xd47b('0x1f')](_0xd47b('0x1e'),_0xd47b('0x30'),_0x2c0236);});};}function afterCreateOfflineMessage(_0x4b833c){return function(_0x41e63b){_0x41e63b=_0x41e63b[_0xd47b('0x31')]({'plain':!![]});_0x41e63b[_0xd47b('0x22')]=_0x4b833c;_0x41e63b['motionChannel']=_0x4b833c;_0x41e63b[_0xd47b('0x23')]='offlineMessage';return request({'event':_0x41e63b['event'],'message':_0x41e63b});};}function afterCreate(_0x52ad58,_0x33edc4){return function(_0x4837e8){_0x4837e8=_0x4837e8[_0xd47b('0x31')]({'plain':!![]});_0x4837e8['channel']=_0x52ad58;_0x4837e8[_0xd47b('0x32')]=_0x52ad58;_0x4837e8[_0xd47b('0x23')]=_0xd47b('0x33');Promise['resolve']()[_0xd47b('0x1c')](function(){var _0x46138f='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x4837e8[_0xd47b('0x25')];return db[_0xd47b('0x34')][_0xd47b('0x28')](_0x46138f,{'type':db[_0xd47b('0x35')][_0xd47b('0x36')][_0xd47b('0x29')],'raw':!![]});})['then'](function(_0x3ab8ed){if(_0x3ab8ed){_0x4837e8[_0xd47b('0x2a')]=_0x3ab8ed[0x0];}if(typeof _0x4837e8['UserId']===_0xd47b('0x26'))return;return getAgent(_0x4837e8[_0xd47b('0x2b')]);})[_0xd47b('0x1c')](function(_0x3c4a15){if(_0x3c4a15){_0x4837e8['interface']=util[_0xd47b('0x37')](_0xd47b('0x2c'),_0x3c4a15[_0xd47b('0x38')]);_0x4837e8[_0xd47b('0x2d')]=_0x3c4a15;}return request({'event':_0x33edc4,'message':_0x4837e8});})['catch'](function(_0x42bd17){logger['error'](_0xd47b('0x1e'),_0xd47b('0x39'),_0x42bd17);});};}function afterUpdate(_0x491e07){return function(_0x1ab803){var _0x2bbad3=_0x1ab803[_0xd47b('0x3a')](_0xd47b('0x3b'))&&_0x1ab803[_0xd47b('0x3b')];var _0x2041b0=_0x1ab803[_0xd47b('0x3a')](_0xd47b('0x3c'));if(_0x2bbad3||_0x2041b0){var _0x8f3aee=_0x2bbad3?_0xd47b('0x8'):'substatus';var _0xf4b8a6=_0x1ab803[_0xd47b('0x31')]({'plain':!![]});_0xf4b8a6[_0xd47b('0x22')]=_0x491e07;_0xf4b8a6['motionChannel']=_0x491e07;_0xf4b8a6[_0xd47b('0x23')]=_0x2bbad3?_0xd47b('0x3b'):_0xd47b('0x3c');var _0x53a0d8='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0xf4b8a6['ContactId'];return db['sequelize'][_0xd47b('0x28')](_0x53a0d8,{'type':db['Sequelize'][_0xd47b('0x36')]['SELECT'],'raw':!![]})[_0xd47b('0x1c')](function(_0x221435){if(_0x221435){_0xf4b8a6[_0xd47b('0x2a')]=_0x221435[0x0];}if(typeof _0xf4b8a6[_0xd47b('0x2b')]===_0xd47b('0x26'))return;return getAgent(_0xf4b8a6['UserId']);})[_0xd47b('0x1c')](function(_0x1791cf){if(_0x1791cf){_0xf4b8a6[_0xd47b('0x3d')]=util[_0xd47b('0x37')]('SIP/%s',_0x1791cf[_0xd47b('0x38')]);_0xf4b8a6[_0xd47b('0x2d')]=_0x1791cf;}return request({'event':_0x8f3aee,'message':_0xf4b8a6});})[_0xd47b('0x21')](function(_0x44d820){logger[_0xd47b('0x1f')](_0xd47b('0x1e'),_0xd47b('0x3e'),_0x44d820);});}};}function getAgent(_0x374b63){return db[_0xd47b('0x3f')]['find']({'where':{'id':_0x374b63},'attributes':['id','name','fullname','email',_0xd47b('0x40')],'raw':!![]})['then'](function(_0x5e59ff){return _0x5e59ff;});}exports[_0xd47b('0x41')]=function(){for(var _0x41aa71=0x0;_0x41aa71<triggers[_0xd47b('0x42')];_0x41aa71+=0x1){if(db[_0xd47b('0x43')](triggers[_0x41aa71]['model'])){db[triggers[_0x41aa71][_0xd47b('0x44')]]['hook'](triggers[_0x41aa71][_0xd47b('0x23')],triggers[_0x41aa71][_0xd47b('0x45')](triggers[_0x41aa71][_0xd47b('0x22')][_0xd47b('0x46')](),triggers[_0x41aa71][_0xd47b('0x47')]));}}};
\ No newline at end of file