Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / config / triggers / index.js
index 80df067..de8d0cf 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 _0x7a93=['FaxInteraction','Fax','Mail','MailInteraction','MailMessage','Openchannel','OpenchannelInteraction','OpenchannelMessage','request','EventManager','then','info','Trigger,\x20%s','error','catch','get','channel','motionChannel','event','resolve','ContactId','undefined','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','query','Sequelize','QueryTypes','SELECT','contact','UserId','interface','format','SIP/%s','name','agent','incomingmessage','outgoingmessage','AfterCreateMessage','opened','changed','closed','substatus','AfterUpdate','User','find','fullname','internal','default','length','hasOwnProperty','model','hook','callback','toLowerCase','../../mysqldb','jayson/promise','triggers','client','http','Chat','ChatInteraction','afterCreate','newinteraction','newmessage','ChatOfflineMessage','Sms','SmsInteraction','afterUpdate','closedinteraction','SmsMessage','Whatsapp','WhatsappInteraction','WhatsappMessage'];(function(_0x4fadaf,_0x179d85){var _0x4738a8=function(_0x34ce7b){while(--_0x34ce7b){_0x4fadaf['push'](_0x4fadaf['shift']());}};_0x4738a8(++_0x179d85);}(_0x7a93,0x1a3));var _0x37a9=function(_0x1015ec,_0x56facf){_0x1015ec=_0x1015ec-0x0;var _0x3ac0f7=_0x7a93[_0x1015ec];return _0x3ac0f7;};'use strict';var util=require('util');var db=require(_0x37a9('0x0'))['db'];var jayson=require(_0x37a9('0x1'));var logger=require('../logger')(_0x37a9('0x2'));var client=jayson[_0x37a9('0x3')][_0x37a9('0x4')]({'port':0x232a});var triggers=[{'channel':_0x37a9('0x5'),'model':_0x37a9('0x6'),'event':_0x37a9('0x7'),'condition':_0x37a9('0x8'),'callback':afterCreate},{'channel':_0x37a9('0x5'),'model':_0x37a9('0x6'),'event':'afterUpdate','condition':'closedinteraction','callback':afterUpdate},{'channel':_0x37a9('0x5'),'model':'ChatMessage','event':_0x37a9('0x7'),'condition':_0x37a9('0x9'),'callback':afterCreateMessage},{'channel':_0x37a9('0x5'),'model':_0x37a9('0xa'),'event':_0x37a9('0x7'),'condition':_0x37a9('0x9'),'callback':afterCreateOfflineMessage},{'channel':_0x37a9('0xb'),'model':_0x37a9('0xc'),'event':_0x37a9('0x7'),'condition':'newinteraction','callback':afterCreate},{'channel':_0x37a9('0xb'),'model':_0x37a9('0xc'),'event':_0x37a9('0xd'),'condition':_0x37a9('0xe'),'callback':afterUpdate},{'channel':_0x37a9('0xb'),'model':_0x37a9('0xf'),'event':'afterCreate','condition':_0x37a9('0x9'),'callback':afterCreateMessage},{'channel':_0x37a9('0x10'),'model':_0x37a9('0x11'),'event':_0x37a9('0x7'),'condition':'newinteraction','callback':afterCreate},{'channel':_0x37a9('0x10'),'model':_0x37a9('0x11'),'event':'afterUpdate','condition':_0x37a9('0xe'),'callback':afterUpdate},{'channel':_0x37a9('0x10'),'model':_0x37a9('0x12'),'event':_0x37a9('0x7'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Fax','model':_0x37a9('0x13'),'event':_0x37a9('0x7'),'condition':'newinteraction','callback':afterCreate},{'channel':_0x37a9('0x14'),'model':'FaxInteraction','event':_0x37a9('0xd'),'condition':_0x37a9('0xe'),'callback':afterUpdate},{'channel':'Fax','model':'FaxMessage','event':_0x37a9('0x7'),'condition':_0x37a9('0x9'),'callback':afterCreateMessage},{'channel':'Mail','model':'MailInteraction','event':_0x37a9('0x7'),'condition':_0x37a9('0x8'),'callback':afterCreate},{'channel':_0x37a9('0x15'),'model':_0x37a9('0x16'),'event':'afterUpdate','condition':_0x37a9('0xe'),'callback':afterUpdate},{'channel':'Mail','model':_0x37a9('0x17'),'event':_0x37a9('0x7'),'condition':_0x37a9('0x9'),'callback':afterCreateMessage},{'channel':_0x37a9('0x18'),'model':_0x37a9('0x19'),'event':_0x37a9('0x7'),'condition':_0x37a9('0x8'),'callback':afterCreate},{'channel':_0x37a9('0x18'),'model':_0x37a9('0x19'),'event':_0x37a9('0xd'),'condition':_0x37a9('0xe'),'callback':afterUpdate},{'channel':'Openchannel','model':_0x37a9('0x1a'),'event':_0x37a9('0x7'),'condition':_0x37a9('0x9'),'callback':afterCreateMessage}];function request(_0x26c295){return client[_0x37a9('0x1b')](_0x37a9('0x1c'),_0x26c295)[_0x37a9('0x1d')](function(_0x1ff437){logger[_0x37a9('0x1e')](_0x37a9('0x1f'),_0x37a9('0x1c'),_0x1ff437);if(_0x1ff437[_0x37a9('0x20')]){if(_0x1ff437[_0x37a9('0x20')]['code']===0x1f4){logger[_0x37a9('0x20')](_0x37a9('0x1f'),'EventManager',_0x1ff437[_0x37a9('0x20')]);}}})[_0x37a9('0x21')](function(_0x379098){logger[_0x37a9('0x20')]('Trigger,\x20%s','EventManager',_0x379098);});}function afterCreateMessage(_0x54f331){return function(_0xd4936c){_0xd4936c=_0xd4936c[_0x37a9('0x22')]({'plain':!![]});_0xd4936c[_0x37a9('0x23')]=_0x54f331;_0xd4936c[_0x37a9('0x24')]=_0x54f331;_0xd4936c[_0x37a9('0x25')]=_0xd4936c['direction'];Promise[_0x37a9('0x26')]()['then'](function(){if(typeof _0xd4936c[_0x37a9('0x27')]===_0x37a9('0x28'))return null;var _0x54f7c9=_0x37a9('0x29')+_0xd4936c[_0x37a9('0x27')];return db[_0x37a9('0x2a')][_0x37a9('0x2b')](_0x54f7c9,{'type':db[_0x37a9('0x2c')][_0x37a9('0x2d')][_0x37a9('0x2e')],'raw':!![]});})[_0x37a9('0x1d')](function(_0x462136){if(_0x462136){_0xd4936c[_0x37a9('0x2f')]=_0x462136[0x0];}if(typeof _0xd4936c['UserId']===_0x37a9('0x28'))return;return getAgent(_0xd4936c[_0x37a9('0x30')]);})[_0x37a9('0x1d')](function(_0xe26033){if(_0xe26033){_0xd4936c[_0x37a9('0x31')]=util[_0x37a9('0x32')](_0x37a9('0x33'),_0xe26033[_0x37a9('0x34')]);_0xd4936c[_0x37a9('0x35')]=_0xe26033;_0xd4936c[_0x37a9('0x23')]=_0x54f331;return request({'event':_0x37a9('0x36'),'message':_0xd4936c});}else{return request({'event':_0x37a9('0x37'),'message':_0xd4936c});}})[_0x37a9('0x21')](function(_0x5fa19d){logger[_0x37a9('0x20')](_0x37a9('0x1f'),_0x37a9('0x38'),_0x5fa19d);});};}function afterCreateOfflineMessage(_0xd453a7){return function(_0x22f379){_0x22f379=_0x22f379[_0x37a9('0x22')]({'plain':!![]});_0x22f379[_0x37a9('0x23')]=_0xd453a7;_0x22f379['motionChannel']=_0xd453a7;_0x22f379[_0x37a9('0x25')]='offlineMessage';return request({'event':_0x22f379[_0x37a9('0x25')],'message':_0x22f379});};}function afterCreate(_0x3e1afa,_0x8cd239){return function(_0x170044){_0x170044=_0x170044[_0x37a9('0x22')]({'plain':!![]});_0x170044[_0x37a9('0x23')]=_0x3e1afa;_0x170044[_0x37a9('0x24')]=_0x3e1afa;_0x170044['event']=_0x37a9('0x39');Promise['resolve']()[_0x37a9('0x1d')](function(){var _0x39acb7=_0x37a9('0x29')+_0x170044['ContactId'];return db[_0x37a9('0x2a')]['query'](_0x39acb7,{'type':db[_0x37a9('0x2c')][_0x37a9('0x2d')][_0x37a9('0x2e')],'raw':!![]});})['then'](function(_0x345324){if(_0x345324){_0x170044[_0x37a9('0x2f')]=_0x345324[0x0];}if(typeof _0x170044[_0x37a9('0x30')]===_0x37a9('0x28'))return;return getAgent(_0x170044['UserId']);})[_0x37a9('0x1d')](function(_0x27ea8d){if(_0x27ea8d){_0x170044['interface']=util[_0x37a9('0x32')](_0x37a9('0x33'),_0x27ea8d['name']);_0x170044[_0x37a9('0x35')]=_0x27ea8d;}return request({'event':_0x8cd239,'message':_0x170044});})[_0x37a9('0x21')](function(_0x30b945){logger[_0x37a9('0x20')]('Trigger,\x20%s','AfterCreate',_0x30b945);});};}function afterUpdate(_0x1cd2ef){return function(_0x5a301a){var _0x5b9c69=_0x5a301a[_0x37a9('0x3a')](_0x37a9('0x3b'))&&_0x5a301a['closed'];var _0x12396e=_0x5a301a[_0x37a9('0x3a')](_0x37a9('0x3c'));if(_0x5b9c69||_0x12396e){var _0x3d6327=_0x5b9c69?'closedinteraction':_0x37a9('0x3c');var _0x1c4a79=_0x5a301a[_0x37a9('0x22')]({'plain':!![]});_0x1c4a79['channel']=_0x1cd2ef;_0x1c4a79['motionChannel']=_0x1cd2ef;_0x1c4a79[_0x37a9('0x25')]=_0x5b9c69?'closed':_0x37a9('0x3c');var _0x53538a='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x1c4a79[_0x37a9('0x27')];return db['sequelize']['query'](_0x53538a,{'type':db[_0x37a9('0x2c')][_0x37a9('0x2d')]['SELECT'],'raw':!![]})[_0x37a9('0x1d')](function(_0x2ebc7){if(_0x2ebc7){_0x1c4a79['contact']=_0x2ebc7[0x0];}if(typeof _0x1c4a79['UserId']===_0x37a9('0x28'))return;return getAgent(_0x1c4a79[_0x37a9('0x30')]);})[_0x37a9('0x1d')](function(_0x5bae67){if(_0x5bae67){_0x1c4a79[_0x37a9('0x31')]=util[_0x37a9('0x32')]('SIP/%s',_0x5bae67[_0x37a9('0x34')]);_0x1c4a79[_0x37a9('0x35')]=_0x5bae67;}return request({'event':_0x3d6327,'message':_0x1c4a79});})[_0x37a9('0x21')](function(_0xc3cf30){logger[_0x37a9('0x20')](_0x37a9('0x1f'),_0x37a9('0x3d'),_0xc3cf30);});}};}function getAgent(_0x11a3d2){return db[_0x37a9('0x3e')][_0x37a9('0x3f')]({'where':{'id':_0x11a3d2},'attributes':['id','name',_0x37a9('0x40'),'email',_0x37a9('0x41')],'raw':!![]})['then'](function(_0x166105){return _0x166105;});}exports[_0x37a9('0x42')]=function(){for(var _0x4a7da9=0x0;_0x4a7da9<triggers[_0x37a9('0x43')];_0x4a7da9+=0x1){if(db[_0x37a9('0x44')](triggers[_0x4a7da9][_0x37a9('0x45')])){db[triggers[_0x4a7da9][_0x37a9('0x45')]][_0x37a9('0x46')](triggers[_0x4a7da9][_0x37a9('0x25')],triggers[_0x4a7da9][_0x37a9('0x47')](triggers[_0x4a7da9]['channel'][_0x37a9('0x48')](),triggers[_0x4a7da9]['condition']));}}};
\ No newline at end of file