Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / config / triggers / index.js
index 22bd9f0..7014eab 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x74df=['afterUpdate','closedinteraction','ChatMessage','newmessage','Sms','SmsInteraction','newinteraction','Fax','FaxInteraction','MailInteraction','MailMessage','OpenchannelInteraction','Openchannel','OpenchannelMessage','request','then','info','EventManager','error','Trigger,\x20%s','get','channel','event','UserId','User','find','name','interface','format','incomingmessage','catch','outgoingmessage','opened','closed','SIP/%s','default','length','hasOwnProperty','model','hook','condition','util','jayson/promise','triggers','client','http','Chat','ChatInteraction','afterCreate'];(function(_0x26e780,_0x5465ba){var _0x2e9594=function(_0x5212df){while(--_0x5212df){_0x26e780['push'](_0x26e780['shift']());}};_0x2e9594(++_0x5465ba);}(_0x74df,0x8b));var _0xf74d=function(_0x479022,_0x51273b){_0x479022=_0x479022-0x0;var _0x496de1=_0x74df[_0x479022];return _0x496de1;};'use strict';var util=require(_0xf74d('0x0'));var db=require('../../mysqldb')['db'];var jayson=require(_0xf74d('0x1'));var logger=require('../logger')(_0xf74d('0x2'));var client=jayson[_0xf74d('0x3')][_0xf74d('0x4')]({'port':0x232a});var triggers=[{'channel':_0xf74d('0x5'),'model':_0xf74d('0x6'),'event':_0xf74d('0x7'),'condition':'newinteraction','callback':afterCreate},{'channel':_0xf74d('0x5'),'model':'ChatInteraction','event':_0xf74d('0x8'),'condition':_0xf74d('0x9'),'callback':afterUpdate},{'channel':_0xf74d('0x5'),'model':_0xf74d('0xa'),'event':_0xf74d('0x7'),'condition':_0xf74d('0xb'),'callback':afterCreateMessage},{'channel':_0xf74d('0xc'),'model':_0xf74d('0xd'),'event':'afterCreate','condition':_0xf74d('0xe'),'callback':afterCreate},{'channel':_0xf74d('0xc'),'model':_0xf74d('0xd'),'event':'afterUpdate','condition':_0xf74d('0x9'),'callback':afterUpdate},{'channel':'Sms','model':'SmsMessage','event':_0xf74d('0x7'),'condition':_0xf74d('0xb'),'callback':afterCreateMessage},{'channel':_0xf74d('0xf'),'model':_0xf74d('0x10'),'event':_0xf74d('0x7'),'condition':_0xf74d('0xe'),'callback':afterCreate},{'channel':_0xf74d('0xf'),'model':_0xf74d('0x10'),'event':'afterUpdate','condition':_0xf74d('0x9'),'callback':afterUpdate},{'channel':'Fax','model':'FaxMessage','event':_0xf74d('0x7'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Mail','model':_0xf74d('0x11'),'event':_0xf74d('0x7'),'condition':_0xf74d('0xe'),'callback':afterCreate},{'channel':'Mail','model':_0xf74d('0x11'),'event':_0xf74d('0x8'),'condition':_0xf74d('0x9'),'callback':afterUpdate},{'channel':'Mail','model':_0xf74d('0x12'),'event':_0xf74d('0x7'),'condition':_0xf74d('0xb'),'callback':afterCreateMessage},{'channel':'Openchannel','model':_0xf74d('0x13'),'event':'afterCreate','condition':_0xf74d('0xe'),'callback':afterCreate},{'channel':_0xf74d('0x14'),'model':_0xf74d('0x13'),'event':_0xf74d('0x8'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0xf74d('0x14'),'model':_0xf74d('0x15'),'event':_0xf74d('0x7'),'condition':_0xf74d('0xb'),'callback':afterCreateMessage}];function request(_0x20d982){return client[_0xf74d('0x16')]('EventManager',_0x20d982)[_0xf74d('0x17')](function(_0x9dc01b){logger[_0xf74d('0x18')]('Trigger,\x20%s',_0xf74d('0x19'),_0x9dc01b);if(_0x9dc01b[_0xf74d('0x1a')]){if(_0x9dc01b[_0xf74d('0x1a')]['code']===0x1f4){logger[_0xf74d('0x1a')]('Trigger,\x20%s',_0xf74d('0x19'),_0x9dc01b['error']);}}})['catch'](function(_0x440e5d){logger['error'](_0xf74d('0x1b'),_0xf74d('0x19'),_0x440e5d);});}function afterCreateMessage(_0x11bf92,_0x1c0031){return function(_0x22f26e,_0x1c5006){_0x22f26e=_0x22f26e[_0xf74d('0x1c')]({'plain':!![]});_0x22f26e[_0xf74d('0x1d')]=_0x11bf92;_0x22f26e[_0xf74d('0x1e')]=_0x22f26e['direction'];if(_0x22f26e[_0xf74d('0x1f')]){return db[_0xf74d('0x20')][_0xf74d('0x21')]({'where':{'id':_0x22f26e[_0xf74d('0x1f')]},'attributes':['id',_0xf74d('0x22')],'raw':!![]})[_0xf74d('0x17')](function(_0x210e4e){_0x22f26e[_0xf74d('0x23')]=util[_0xf74d('0x24')]('SIP/%s',_0x210e4e[_0xf74d('0x22')]);_0x22f26e[_0xf74d('0x1d')]=_0x11bf92;return request({'event':_0xf74d('0x25'),'message':_0x22f26e});})[_0xf74d('0x26')](function(_0x2ef792){console[_0xf74d('0x1a')](_0x2ef792);});}else{return request({'event':_0xf74d('0x27'),'message':_0x22f26e});}};}function afterCreate(_0x3a3654,_0x340aae){return function(_0x38a73f,_0x51a217){_0x38a73f=_0x38a73f['get']({'plain':!![]});_0x38a73f['channel']=_0x3a3654;_0x38a73f[_0xf74d('0x1e')]=_0xf74d('0x28');return request({'event':_0x340aae,'message':_0x38a73f});};}function afterUpdate(_0x228441,_0x116f56){return function(_0xe88dd,_0x3a0732){if(_0xe88dd['changed'](_0xf74d('0x29'))&&_0xe88dd[_0xf74d('0x29')]){_0xe88dd=_0xe88dd[_0xf74d('0x1c')]({'plain':!![]});_0xe88dd[_0xf74d('0x1d')]=_0x228441;_0xe88dd['event']=_0xf74d('0x29');if(_0xe88dd[_0xf74d('0x1f')]){return db[_0xf74d('0x20')][_0xf74d('0x21')]({'where':{'id':_0xe88dd[_0xf74d('0x1f')]},'attributes':['id',_0xf74d('0x22')],'raw':!![]})[_0xf74d('0x17')](function(_0x28c82a){_0xe88dd[_0xf74d('0x23')]=util[_0xf74d('0x24')](_0xf74d('0x2a'),_0x28c82a[_0xf74d('0x22')]);return request({'event':_0x116f56,'message':_0xe88dd});})[_0xf74d('0x26')](function(_0x4cbba2){console[_0xf74d('0x1a')](_0x4cbba2);});}else{return request({'event':_0x116f56,'message':_0xe88dd});}}};}exports[_0xf74d('0x2b')]=function(){for(var _0x5eced3=0x0;_0x5eced3<triggers[_0xf74d('0x2c')];_0x5eced3+=0x1){if(db[_0xf74d('0x2d')](triggers[_0x5eced3][_0xf74d('0x2e')])){db[triggers[_0x5eced3][_0xf74d('0x2e')]][_0xf74d('0x2f')](triggers[_0x5eced3]['event'],triggers[_0x5eced3]['callback'](triggers[_0x5eced3][_0xf74d('0x1d')]['toLowerCase'](),triggers[_0x5eced3][_0xf74d('0x30')]));}}};
\ No newline at end of file
+var _0xbb6d=['request','EventManager','then','info','Trigger,\x20%s','error','code','catch','get','channel','motionChannel','event','direction','resolve','ContactId','undefined','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','QueryTypes','contact','UserId','interface','SIP/%s','name','agent','incomingmessage','outgoingmessage','opened','query','Sequelize','SELECT','AfterCreate','changed','closed','substatus','format','AfterUpdate','User','find','fullname','email','internal','default','length','model','callback','condition','../../mysqldb','jayson/promise','../logger','client','Chat','ChatInteraction','afterCreate','newinteraction','closedinteraction','ChatMessage','newmessage','Sms','SmsInteraction','afterUpdate','Whatsapp','WhatsappInteraction','Fax','FaxInteraction','FaxMessage','Mail','MailInteraction','MailMessage','Openchannel','OpenchannelInteraction','OpenchannelMessage'];(function(_0xbc2cfa,_0x4adaa8){var _0x28244f=function(_0x592415){while(--_0x592415){_0xbc2cfa['push'](_0xbc2cfa['shift']());}};_0x28244f(++_0x4adaa8);}(_0xbb6d,0x107));var _0xdbb6=function(_0x365da3,_0x54ffd5){_0x365da3=_0x365da3-0x0;var _0x142b8c=_0xbb6d[_0x365da3];return _0x142b8c;};'use strict';var util=require('util');var db=require(_0xdbb6('0x0'))['db'];var jayson=require(_0xdbb6('0x1'));var logger=require(_0xdbb6('0x2'))('triggers');var client=jayson[_0xdbb6('0x3')]['http']({'port':0x232a});var triggers=[{'channel':_0xdbb6('0x4'),'model':_0xdbb6('0x5'),'event':_0xdbb6('0x6'),'condition':_0xdbb6('0x7'),'callback':afterCreate},{'channel':_0xdbb6('0x4'),'model':_0xdbb6('0x5'),'event':'afterUpdate','condition':_0xdbb6('0x8'),'callback':afterUpdate},{'channel':_0xdbb6('0x4'),'model':_0xdbb6('0x9'),'event':_0xdbb6('0x6'),'condition':_0xdbb6('0xa'),'callback':afterCreateMessage},{'channel':_0xdbb6('0x4'),'model':'ChatOfflineMessage','event':'afterCreate','condition':_0xdbb6('0xa'),'callback':afterCreateOfflineMessage},{'channel':_0xdbb6('0xb'),'model':_0xdbb6('0xc'),'event':_0xdbb6('0x6'),'condition':'newinteraction','callback':afterCreate},{'channel':_0xdbb6('0xb'),'model':_0xdbb6('0xc'),'event':_0xdbb6('0xd'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0xdbb6('0xb'),'model':'SmsMessage','event':_0xdbb6('0x6'),'condition':_0xdbb6('0xa'),'callback':afterCreateMessage},{'channel':_0xdbb6('0xe'),'model':_0xdbb6('0xf'),'event':_0xdbb6('0x6'),'condition':_0xdbb6('0x7'),'callback':afterCreate},{'channel':_0xdbb6('0xe'),'model':_0xdbb6('0xf'),'event':_0xdbb6('0xd'),'condition':_0xdbb6('0x8'),'callback':afterUpdate},{'channel':_0xdbb6('0xe'),'model':'WhatsappMessage','event':_0xdbb6('0x6'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0xdbb6('0x10'),'model':_0xdbb6('0x11'),'event':'afterCreate','condition':_0xdbb6('0x7'),'callback':afterCreate},{'channel':_0xdbb6('0x10'),'model':_0xdbb6('0x11'),'event':_0xdbb6('0xd'),'condition':_0xdbb6('0x8'),'callback':afterUpdate},{'channel':_0xdbb6('0x10'),'model':_0xdbb6('0x12'),'event':'afterCreate','condition':'newmessage','callback':afterCreateMessage},{'channel':_0xdbb6('0x13'),'model':_0xdbb6('0x14'),'event':_0xdbb6('0x6'),'condition':_0xdbb6('0x7'),'callback':afterCreate},{'channel':_0xdbb6('0x13'),'model':_0xdbb6('0x14'),'event':_0xdbb6('0xd'),'condition':_0xdbb6('0x8'),'callback':afterUpdate},{'channel':_0xdbb6('0x13'),'model':_0xdbb6('0x15'),'event':_0xdbb6('0x6'),'condition':_0xdbb6('0xa'),'callback':afterCreateMessage},{'channel':_0xdbb6('0x16'),'model':_0xdbb6('0x17'),'event':_0xdbb6('0x6'),'condition':'newinteraction','callback':afterCreate},{'channel':'Openchannel','model':_0xdbb6('0x17'),'event':'afterUpdate','condition':_0xdbb6('0x8'),'callback':afterUpdate},{'channel':'Openchannel','model':_0xdbb6('0x18'),'event':_0xdbb6('0x6'),'condition':_0xdbb6('0xa'),'callback':afterCreateMessage}];function request(_0xc7e78e){return client[_0xdbb6('0x19')](_0xdbb6('0x1a'),_0xc7e78e)[_0xdbb6('0x1b')](function(_0x2991c0){logger[_0xdbb6('0x1c')](_0xdbb6('0x1d'),_0xdbb6('0x1a'),_0x2991c0);if(_0x2991c0[_0xdbb6('0x1e')]){if(_0x2991c0[_0xdbb6('0x1e')][_0xdbb6('0x1f')]===0x1f4){logger['error'](_0xdbb6('0x1d'),_0xdbb6('0x1a'),_0x2991c0['error']);}}})[_0xdbb6('0x20')](function(_0x2a76c1){logger['error'](_0xdbb6('0x1d'),_0xdbb6('0x1a'),_0x2a76c1);});}function afterCreateMessage(_0xbcbf7f){return function(_0x44b119){_0x44b119=_0x44b119[_0xdbb6('0x21')]({'plain':!![]});_0x44b119[_0xdbb6('0x22')]=_0xbcbf7f;_0x44b119[_0xdbb6('0x23')]=_0xbcbf7f;_0x44b119[_0xdbb6('0x24')]=_0x44b119[_0xdbb6('0x25')];Promise[_0xdbb6('0x26')]()['then'](function(){if(typeof _0x44b119[_0xdbb6('0x27')]===_0xdbb6('0x28'))return null;var _0x2f9a04=_0xdbb6('0x29')+_0x44b119[_0xdbb6('0x27')];return db[_0xdbb6('0x2a')]['query'](_0x2f9a04,{'type':db['Sequelize'][_0xdbb6('0x2b')]['SELECT'],'raw':!![]});})[_0xdbb6('0x1b')](function(_0x311f46){if(_0x311f46){_0x44b119[_0xdbb6('0x2c')]=_0x311f46[0x0];}if(typeof _0x44b119[_0xdbb6('0x2d')]==='undefined')return;return getAgent(_0x44b119['UserId']);})['then'](function(_0x46928a){if(_0x46928a){_0x44b119[_0xdbb6('0x2e')]=util['format'](_0xdbb6('0x2f'),_0x46928a[_0xdbb6('0x30')]);_0x44b119[_0xdbb6('0x31')]=_0x46928a;_0x44b119[_0xdbb6('0x22')]=_0xbcbf7f;return request({'event':_0xdbb6('0x32'),'message':_0x44b119});}else{return request({'event':_0xdbb6('0x33'),'message':_0x44b119});}})[_0xdbb6('0x20')](function(_0x3d761d){logger[_0xdbb6('0x1e')](_0xdbb6('0x1d'),'AfterCreateMessage',_0x3d761d);});};}function afterCreateOfflineMessage(_0x5f0361){return function(_0x5a3c05){_0x5a3c05=_0x5a3c05[_0xdbb6('0x21')]({'plain':!![]});_0x5a3c05[_0xdbb6('0x22')]=_0x5f0361;_0x5a3c05[_0xdbb6('0x23')]=_0x5f0361;_0x5a3c05['event']='offlineMessage';return request({'event':_0x5a3c05[_0xdbb6('0x24')],'message':_0x5a3c05});};}function afterCreate(_0x1e464c,_0x3a26f4){return function(_0x141380){_0x141380=_0x141380[_0xdbb6('0x21')]({'plain':!![]});_0x141380[_0xdbb6('0x22')]=_0x1e464c;_0x141380[_0xdbb6('0x23')]=_0x1e464c;_0x141380[_0xdbb6('0x24')]=_0xdbb6('0x34');Promise[_0xdbb6('0x26')]()[_0xdbb6('0x1b')](function(){var _0x80f66f=_0xdbb6('0x29')+_0x141380['ContactId'];return db[_0xdbb6('0x2a')][_0xdbb6('0x35')](_0x80f66f,{'type':db[_0xdbb6('0x36')]['QueryTypes'][_0xdbb6('0x37')],'raw':!![]});})['then'](function(_0x5c7b19){if(_0x5c7b19){_0x141380[_0xdbb6('0x2c')]=_0x5c7b19[0x0];}if(typeof _0x141380[_0xdbb6('0x2d')]===_0xdbb6('0x28'))return;return getAgent(_0x141380[_0xdbb6('0x2d')]);})['then'](function(_0x11d2d4){if(_0x11d2d4){_0x141380[_0xdbb6('0x2e')]=util['format'](_0xdbb6('0x2f'),_0x11d2d4[_0xdbb6('0x30')]);_0x141380[_0xdbb6('0x31')]=_0x11d2d4;}return request({'event':_0x3a26f4,'message':_0x141380});})['catch'](function(_0x249ee9){logger[_0xdbb6('0x1e')](_0xdbb6('0x1d'),_0xdbb6('0x38'),_0x249ee9);});};}function afterUpdate(_0x385fad){return function(_0x44fb8c){var _0x5b824d=_0x44fb8c[_0xdbb6('0x39')]('closed')&&_0x44fb8c[_0xdbb6('0x3a')];var _0x5293e8=_0x44fb8c['changed'](_0xdbb6('0x3b'));if(_0x5b824d||_0x5293e8){var _0x37cc8c=_0x5b824d?_0xdbb6('0x8'):_0xdbb6('0x3b');var _0x268efc=_0x44fb8c[_0xdbb6('0x21')]({'plain':!![]});_0x268efc[_0xdbb6('0x22')]=_0x385fad;_0x268efc[_0xdbb6('0x23')]=_0x385fad;_0x268efc[_0xdbb6('0x24')]=_0x5b824d?'closed':'substatus';var _0xc741c=_0xdbb6('0x29')+_0x268efc[_0xdbb6('0x27')];return db[_0xdbb6('0x2a')][_0xdbb6('0x35')](_0xc741c,{'type':db[_0xdbb6('0x36')][_0xdbb6('0x2b')][_0xdbb6('0x37')],'raw':!![]})[_0xdbb6('0x1b')](function(_0x2d95b0){if(_0x2d95b0){_0x268efc[_0xdbb6('0x2c')]=_0x2d95b0[0x0];}if(typeof _0x268efc[_0xdbb6('0x2d')]===_0xdbb6('0x28'))return;return getAgent(_0x268efc[_0xdbb6('0x2d')]);})[_0xdbb6('0x1b')](function(_0x150b0c){if(_0x150b0c){_0x268efc[_0xdbb6('0x2e')]=util[_0xdbb6('0x3c')](_0xdbb6('0x2f'),_0x150b0c[_0xdbb6('0x30')]);_0x268efc['agent']=_0x150b0c;}return request({'event':_0x37cc8c,'message':_0x268efc});})['catch'](function(_0x336c93){logger['error']('Trigger,\x20%s',_0xdbb6('0x3d'),_0x336c93);});}};}function getAgent(_0x44cb71){return db[_0xdbb6('0x3e')][_0xdbb6('0x3f')]({'where':{'id':_0x44cb71},'attributes':['id',_0xdbb6('0x30'),_0xdbb6('0x40'),_0xdbb6('0x41'),_0xdbb6('0x42')],'raw':!![]})[_0xdbb6('0x1b')](function(_0x5b9dcd){return _0x5b9dcd;});}exports[_0xdbb6('0x43')]=function(){for(var _0x512a5b=0x0;_0x512a5b<triggers[_0xdbb6('0x44')];_0x512a5b+=0x1){if(db['hasOwnProperty'](triggers[_0x512a5b][_0xdbb6('0x45')])){db[triggers[_0x512a5b][_0xdbb6('0x45')]]['hook'](triggers[_0x512a5b][_0xdbb6('0x24')],triggers[_0x512a5b][_0xdbb6('0x46')](triggers[_0x512a5b][_0xdbb6('0x22')]['toLowerCase'](),triggers[_0x512a5b][_0xdbb6('0x47')]));}}};
\ No newline at end of file