Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / config / triggers / index.js
index b5571c6..de8d0cf 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x5c06=['OpenchannelMessage','newmessage','request','then','info','EventManager','error','code','Trigger,\x20%s','catch','channel','User','find','UserId','format','SIP/%s','name','incomingmessage','outgoingmessage','get','changed','closed','default','length','hasOwnProperty','model','event','callback','toLowerCase','condition','util','../../mysqldb','../logger','http','Chat','ChatInteraction','newinteraction','afterUpdate','closedinteraction','ChatMessage','afterCreate','Sms','SmsInteraction','SmsMessage','Whatsapp','WhatsappInteraction','WhatsappMessage','Fax','FaxInteraction','MailInteraction','Mail','MailMessage','Openchannel','OpenchannelInteraction'];(function(_0x118f34,_0x487a33){var _0x291c6f=function(_0x4b4299){while(--_0x4b4299){_0x118f34['push'](_0x118f34['shift']());}};_0x291c6f(++_0x487a33);}(_0x5c06,0x162));var _0x65c0=function(_0x618414,_0x1a7a60){_0x618414=_0x618414-0x0;var _0x21c19a=_0x5c06[_0x618414];return _0x21c19a;};'use strict';var util=require(_0x65c0('0x0'));var db=require(_0x65c0('0x1'))['db'];var jayson=require('jayson/promise');var logger=require(_0x65c0('0x2'))('triggers');var client=jayson['client'][_0x65c0('0x3')]({'port':0x232a});var triggers=[{'channel':_0x65c0('0x4'),'model':_0x65c0('0x5'),'event':'afterCreate','condition':_0x65c0('0x6'),'callback':afterCreate},{'channel':_0x65c0('0x4'),'model':_0x65c0('0x5'),'event':_0x65c0('0x7'),'condition':_0x65c0('0x8'),'callback':afterUpdate},{'channel':_0x65c0('0x4'),'model':_0x65c0('0x9'),'event':_0x65c0('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0x65c0('0xb'),'model':_0x65c0('0xc'),'event':_0x65c0('0xa'),'condition':_0x65c0('0x6'),'callback':afterCreate},{'channel':_0x65c0('0xb'),'model':_0x65c0('0xc'),'event':_0x65c0('0x7'),'condition':_0x65c0('0x8'),'callback':afterUpdate},{'channel':'Sms','model':_0x65c0('0xd'),'event':'afterCreate','condition':'newmessage','callback':afterCreateMessage},{'channel':_0x65c0('0xe'),'model':_0x65c0('0xf'),'event':_0x65c0('0xa'),'condition':_0x65c0('0x6'),'callback':afterCreate},{'channel':_0x65c0('0xe'),'model':_0x65c0('0xf'),'event':_0x65c0('0x7'),'condition':_0x65c0('0x8'),'callback':afterUpdate},{'channel':_0x65c0('0xe'),'model':_0x65c0('0x10'),'event':_0x65c0('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Fax','model':'FaxInteraction','event':_0x65c0('0xa'),'condition':'newinteraction','callback':afterCreate},{'channel':_0x65c0('0x11'),'model':_0x65c0('0x12'),'event':'afterUpdate','condition':_0x65c0('0x8'),'callback':afterUpdate},{'channel':_0x65c0('0x11'),'model':'FaxMessage','event':_0x65c0('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Mail','model':_0x65c0('0x13'),'event':_0x65c0('0xa'),'condition':_0x65c0('0x6'),'callback':afterCreate},{'channel':_0x65c0('0x14'),'model':'MailInteraction','event':_0x65c0('0x7'),'condition':'closedinteraction','callback':afterUpdate},{'channel':'Mail','model':_0x65c0('0x15'),'event':_0x65c0('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0x65c0('0x16'),'model':_0x65c0('0x17'),'event':_0x65c0('0xa'),'condition':_0x65c0('0x6'),'callback':afterCreate},{'channel':_0x65c0('0x16'),'model':_0x65c0('0x17'),'event':_0x65c0('0x7'),'condition':_0x65c0('0x8'),'callback':afterUpdate},{'channel':'Openchannel','model':_0x65c0('0x18'),'event':_0x65c0('0xa'),'condition':_0x65c0('0x19'),'callback':afterCreateMessage}];function request(_0x18d99d){return client[_0x65c0('0x1a')]('EventManager',_0x18d99d)[_0x65c0('0x1b')](function(_0x371b5f){logger[_0x65c0('0x1c')]('Trigger,\x20%s',_0x65c0('0x1d'),_0x371b5f);if(_0x371b5f['error']){if(_0x371b5f[_0x65c0('0x1e')][_0x65c0('0x1f')]===0x1f4){logger[_0x65c0('0x1e')](_0x65c0('0x20'),'EventManager',_0x371b5f[_0x65c0('0x1e')]);}}})[_0x65c0('0x21')](function(_0x47f5dc){logger['error']('Trigger,\x20%s',_0x65c0('0x1d'),_0x47f5dc);});}function afterCreateMessage(_0x594a5d,_0x338e65){return function(_0x3a25b9,_0x4876a5){_0x3a25b9=_0x3a25b9['get']({'plain':!![]});_0x3a25b9[_0x65c0('0x22')]=_0x594a5d;_0x3a25b9['event']=_0x3a25b9['direction'];if(_0x3a25b9['UserId']){return db[_0x65c0('0x23')][_0x65c0('0x24')]({'where':{'id':_0x3a25b9[_0x65c0('0x25')]},'attributes':['id','name'],'raw':!![]})[_0x65c0('0x1b')](function(_0x3c269c){_0x3a25b9['interface']=util[_0x65c0('0x26')](_0x65c0('0x27'),_0x3c269c[_0x65c0('0x28')]);_0x3a25b9[_0x65c0('0x22')]=_0x594a5d;return request({'event':_0x65c0('0x29'),'message':_0x3a25b9});})[_0x65c0('0x21')](function(_0xaf929a){console['error'](_0xaf929a);});}else{return request({'event':_0x65c0('0x2a'),'message':_0x3a25b9});}};}function afterCreate(_0xd98135,_0x5d8e2b){return function(_0x4d4040,_0x5c1f1d){_0x4d4040=_0x4d4040[_0x65c0('0x2b')]({'plain':!![]});_0x4d4040[_0x65c0('0x22')]=_0xd98135;_0x4d4040['event']='opened';return request({'event':_0x5d8e2b,'message':_0x4d4040});};}function afterUpdate(_0x30cf34,_0x1d6e7f){return function(_0x2ccdb2,_0x2a63f7){if(_0x2ccdb2[_0x65c0('0x2c')](_0x65c0('0x2d'))&&_0x2ccdb2[_0x65c0('0x2d')]){_0x2ccdb2=_0x2ccdb2[_0x65c0('0x2b')]({'plain':!![]});_0x2ccdb2[_0x65c0('0x22')]=_0x30cf34;_0x2ccdb2['event']=_0x65c0('0x2d');if(_0x2ccdb2[_0x65c0('0x25')]){return db[_0x65c0('0x23')][_0x65c0('0x24')]({'where':{'id':_0x2ccdb2[_0x65c0('0x25')]},'attributes':['id',_0x65c0('0x28')],'raw':!![]})[_0x65c0('0x1b')](function(_0xf07fdf){_0x2ccdb2['interface']=util[_0x65c0('0x26')](_0x65c0('0x27'),_0xf07fdf['name']);return request({'event':_0x1d6e7f,'message':_0x2ccdb2});})[_0x65c0('0x21')](function(_0x8b86be){console['error'](_0x8b86be);});}else{return request({'event':_0x1d6e7f,'message':_0x2ccdb2});}}};}exports[_0x65c0('0x2e')]=function(){for(var _0x1e99d8=0x0;_0x1e99d8<triggers[_0x65c0('0x2f')];_0x1e99d8+=0x1){if(db[_0x65c0('0x30')](triggers[_0x1e99d8][_0x65c0('0x31')])){db[triggers[_0x1e99d8]['model']]['hook'](triggers[_0x1e99d8][_0x65c0('0x32')],triggers[_0x1e99d8][_0x65c0('0x33')](triggers[_0x1e99d8]['channel'][_0x65c0('0x34')](),triggers[_0x1e99d8][_0x65c0('0x35')]));}}};
\ 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