Built motion from commit da24aabd.|2.6.20
[motion2.git] / server / config / triggers / index.js
index 02cb3ca..b2f6ce5 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x6e57=['channel','motionChannel','event','direction','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','query','Sequelize','QueryTypes','SELECT','UserId','User','find','name','fullname','interface','format','SIP/%s','incomingmessage','opened','changed','closed','ContactId','email','internal','agent','default','length','hasOwnProperty','model','hook','callback','toLowerCase','condition','util','../../mysqldb','jayson/promise','../logger','triggers','client','http','afterCreate','newinteraction','Chat','ChatInteraction','afterUpdate','closedinteraction','ChatMessage','newmessage','SmsInteraction','Sms','SmsMessage','Whatsapp','WhatsappInteraction','WhatsappMessage','Fax','FaxInteraction','FaxMessage','MailInteraction','Mail','OpenchannelInteraction','Openchannel','OpenchannelMessage','request','EventManager','then','Trigger,\x20%s','error','code','catch','get'];(function(_0x2beca1,_0x10a40c){var _0x3ad206=function(_0x57469e){while(--_0x57469e){_0x2beca1['push'](_0x2beca1['shift']());}};_0x3ad206(++_0x10a40c);}(_0x6e57,0xf7));var _0x76e5=function(_0x2fa237,_0x853a10){_0x2fa237=_0x2fa237-0x0;var _0x1635dc=_0x6e57[_0x2fa237];return _0x1635dc;};'use strict';var util=require(_0x76e5('0x0'));var db=require(_0x76e5('0x1'))['db'];var jayson=require(_0x76e5('0x2'));var logger=require(_0x76e5('0x3'))(_0x76e5('0x4'));var _=require('lodash');var client=jayson[_0x76e5('0x5')][_0x76e5('0x6')]({'port':0x232a});var triggers=[{'channel':'Chat','model':'ChatInteraction','event':_0x76e5('0x7'),'condition':_0x76e5('0x8'),'callback':afterCreate},{'channel':_0x76e5('0x9'),'model':_0x76e5('0xa'),'event':_0x76e5('0xb'),'condition':_0x76e5('0xc'),'callback':afterUpdate},{'channel':'Chat','model':_0x76e5('0xd'),'event':_0x76e5('0x7'),'condition':_0x76e5('0xe'),'callback':afterCreateMessage},{'channel':'Sms','model':_0x76e5('0xf'),'event':'afterCreate','condition':_0x76e5('0x8'),'callback':afterCreate},{'channel':_0x76e5('0x10'),'model':'SmsInteraction','event':_0x76e5('0xb'),'condition':_0x76e5('0xc'),'callback':afterUpdate},{'channel':'Sms','model':_0x76e5('0x11'),'event':_0x76e5('0x7'),'condition':_0x76e5('0xe'),'callback':afterCreateMessage},{'channel':_0x76e5('0x12'),'model':_0x76e5('0x13'),'event':_0x76e5('0x7'),'condition':'newinteraction','callback':afterCreate},{'channel':'Whatsapp','model':_0x76e5('0x13'),'event':'afterUpdate','condition':_0x76e5('0xc'),'callback':afterUpdate},{'channel':_0x76e5('0x12'),'model':_0x76e5('0x14'),'event':'afterCreate','condition':_0x76e5('0xe'),'callback':afterCreateMessage},{'channel':_0x76e5('0x15'),'model':_0x76e5('0x16'),'event':_0x76e5('0x7'),'condition':'newinteraction','callback':afterCreate},{'channel':_0x76e5('0x15'),'model':_0x76e5('0x16'),'event':_0x76e5('0xb'),'condition':_0x76e5('0xc'),'callback':afterUpdate},{'channel':_0x76e5('0x15'),'model':_0x76e5('0x17'),'event':'afterCreate','condition':_0x76e5('0xe'),'callback':afterCreateMessage},{'channel':'Mail','model':_0x76e5('0x18'),'event':_0x76e5('0x7'),'condition':_0x76e5('0x8'),'callback':afterCreate},{'channel':_0x76e5('0x19'),'model':_0x76e5('0x18'),'event':_0x76e5('0xb'),'condition':_0x76e5('0xc'),'callback':afterUpdate},{'channel':_0x76e5('0x19'),'model':'MailMessage','event':_0x76e5('0x7'),'condition':_0x76e5('0xe'),'callback':afterCreateMessage},{'channel':'Openchannel','model':_0x76e5('0x1a'),'event':'afterCreate','condition':_0x76e5('0x8'),'callback':afterCreate},{'channel':'Openchannel','model':_0x76e5('0x1a'),'event':_0x76e5('0xb'),'condition':_0x76e5('0xc'),'callback':afterUpdate},{'channel':_0x76e5('0x1b'),'model':_0x76e5('0x1c'),'event':'afterCreate','condition':_0x76e5('0xe'),'callback':afterCreateMessage}];function request(_0x4644c1){return client[_0x76e5('0x1d')](_0x76e5('0x1e'),_0x4644c1)[_0x76e5('0x1f')](function(_0x1f6b0e){logger['info'](_0x76e5('0x20'),_0x76e5('0x1e'),_0x1f6b0e);if(_0x1f6b0e[_0x76e5('0x21')]){if(_0x1f6b0e['error'][_0x76e5('0x22')]===0x1f4){logger['error']('Trigger,\x20%s',_0x76e5('0x1e'),_0x1f6b0e[_0x76e5('0x21')]);}}})[_0x76e5('0x23')](function(_0x32e8c2){logger[_0x76e5('0x21')](_0x76e5('0x20'),_0x76e5('0x1e'),_0x32e8c2);});}function afterCreateMessage(_0x26fab2,_0x4172e8){return function(_0x46fe34,_0x505457){_0x46fe34=_0x46fe34[_0x76e5('0x24')]({'plain':!![]});_0x46fe34[_0x76e5('0x25')]=_0x26fab2;_0x46fe34[_0x76e5('0x26')]=_0x26fab2;_0x46fe34[_0x76e5('0x27')]=_0x46fe34[_0x76e5('0x28')];var _0x3259e1=_0x76e5('0x29')+_0x46fe34['ContactId'];return db[_0x76e5('0x2a')][_0x76e5('0x2b')](_0x3259e1,{'type':db[_0x76e5('0x2c')][_0x76e5('0x2d')][_0x76e5('0x2e')],'raw':!![]})[_0x76e5('0x1f')](function(_0x350046){return _0x350046;})[_0x76e5('0x1f')](function(_0x3235cb){if(_0x3235cb){_0x46fe34['contact']=_0x3235cb[0x0];}if(_0x46fe34[_0x76e5('0x2f')]){return db[_0x76e5('0x30')][_0x76e5('0x31')]({'where':{'id':_0x46fe34[_0x76e5('0x2f')]},'attributes':['id',_0x76e5('0x32'),_0x76e5('0x33'),'email','internal'],'raw':!![]})[_0x76e5('0x1f')](function(_0x5b92d6){_0x46fe34[_0x76e5('0x34')]=util[_0x76e5('0x35')](_0x76e5('0x36'),_0x5b92d6['name']);_0x46fe34[_0x76e5('0x25')]=_0x26fab2;_0x46fe34['agent']=_0x5b92d6;return request({'event':_0x76e5('0x37'),'message':_0x46fe34});})['catch'](function(_0x54688a){console['error'](_0x54688a);});}else{return request({'event':'outgoingmessage','message':_0x46fe34});}});};}function afterCreate(_0x3a27b2,_0x32c127){return function(_0x51dba4,_0x21d922){_0x51dba4=_0x51dba4[_0x76e5('0x24')]({'plain':!![]});_0x51dba4[_0x76e5('0x25')]=_0x3a27b2;_0x51dba4[_0x76e5('0x26')]=_0x3a27b2;_0x51dba4[_0x76e5('0x27')]=_0x76e5('0x38');var _0x5c84f2=_0x76e5('0x29')+_0x51dba4['ContactId'];return db[_0x76e5('0x2a')][_0x76e5('0x2b')](_0x5c84f2,{'type':db[_0x76e5('0x2c')][_0x76e5('0x2d')][_0x76e5('0x2e')],'raw':!![]})[_0x76e5('0x1f')](function(_0x22c640){return _0x22c640;})['then'](function(_0x3fce75){if(_0x3fce75){_0x51dba4['contact']=_0x3fce75[0x0];}return request({'event':_0x32c127,'message':_0x51dba4});});};}function afterUpdate(_0xb4be3f,_0x7a3373){return function(_0xd0d0d0,_0x160c08){if(_0xd0d0d0[_0x76e5('0x39')]('closed')&&_0xd0d0d0[_0x76e5('0x3a')]){_0xd0d0d0=_0xd0d0d0[_0x76e5('0x24')]({'plain':!![]});_0xd0d0d0['channel']=_0xb4be3f;_0xd0d0d0[_0x76e5('0x26')]=_0xb4be3f;_0xd0d0d0['event']='closed';var _0x45fb9c=_0x76e5('0x29')+_0xd0d0d0[_0x76e5('0x3b')];return db[_0x76e5('0x2a')][_0x76e5('0x2b')](_0x45fb9c,{'type':db['Sequelize'][_0x76e5('0x2d')][_0x76e5('0x2e')],'raw':!![]})[_0x76e5('0x1f')](function(_0x1091f6){return _0x1091f6;})[_0x76e5('0x1f')](function(_0xe9aeef){if(_0xe9aeef){_0xd0d0d0['contact']=_0xe9aeef[0x0];}if(_0xd0d0d0['UserId']){return db[_0x76e5('0x30')]['find']({'where':{'id':_0xd0d0d0[_0x76e5('0x2f')]},'attributes':['id',_0x76e5('0x32'),_0x76e5('0x33'),_0x76e5('0x3c'),_0x76e5('0x3d')],'raw':!![]})[_0x76e5('0x1f')](function(_0x25411c){_0xd0d0d0[_0x76e5('0x34')]=util[_0x76e5('0x35')](_0x76e5('0x36'),_0x25411c[_0x76e5('0x32')]);_0xd0d0d0[_0x76e5('0x3e')]=_0x25411c;return request({'event':_0x7a3373,'message':_0xd0d0d0});})['catch'](function(_0x38a30b){console[_0x76e5('0x21')](_0x38a30b);});}else{return request({'event':_0x7a3373,'message':_0xd0d0d0});}});}};}exports[_0x76e5('0x3f')]=function(){for(var _0x173c39=0x0;_0x173c39<triggers[_0x76e5('0x40')];_0x173c39+=0x1){if(db[_0x76e5('0x41')](triggers[_0x173c39][_0x76e5('0x42')])){db[triggers[_0x173c39][_0x76e5('0x42')]][_0x76e5('0x43')](triggers[_0x173c39][_0x76e5('0x27')],triggers[_0x173c39][_0x76e5('0x44')](triggers[_0x173c39][_0x76e5('0x25')][_0x76e5('0x45')](),triggers[_0x173c39][_0x76e5('0x46')]));}}};
\ No newline at end of file
+var _0x3468=['changed','closed','query','AfterUpdate','User','find','fullname','email','internal','default','hasOwnProperty','model','callback','toLowerCase','condition','util','../../mysqldb','jayson/promise','../logger','triggers','client','ChatInteraction','afterCreate','newinteraction','Chat','afterUpdate','closedinteraction','ChatOfflineMessage','newmessage','Sms','SmsInteraction','SmsMessage','Whatsapp','WhatsappInteraction','WhatsappMessage','FaxInteraction','Fax','Mail','MailInteraction','MailMessage','Openchannel','OpenchannelInteraction','OpenchannelMessage','request','then','info','Trigger,\x20%s','EventManager','error','code','catch','get','channel','motionChannel','event','direction','resolve','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','UserId','format','SIP/%s','name','agent','AfterCreateMessage','offlineMessage','undefined','interface','AfterCreate'];(function(_0x127a60,_0x37f33a){var _0xc1f6a3=function(_0x8ed035){while(--_0x8ed035){_0x127a60['push'](_0x127a60['shift']());}};_0xc1f6a3(++_0x37f33a);}(_0x3468,0x137));var _0x8346=function(_0x3f3eb8,_0x2fdc20){_0x3f3eb8=_0x3f3eb8-0x0;var _0x3437c1=_0x3468[_0x3f3eb8];return _0x3437c1;};'use strict';var util=require(_0x8346('0x0'));var db=require(_0x8346('0x1'))['db'];var jayson=require(_0x8346('0x2'));var logger=require(_0x8346('0x3'))(_0x8346('0x4'));var client=jayson[_0x8346('0x5')]['http']({'port':0x232a});var triggers=[{'channel':'Chat','model':_0x8346('0x6'),'event':_0x8346('0x7'),'condition':_0x8346('0x8'),'callback':afterCreate},{'channel':_0x8346('0x9'),'model':_0x8346('0x6'),'event':_0x8346('0xa'),'condition':_0x8346('0xb'),'callback':afterUpdate},{'channel':'Chat','model':'ChatMessage','event':_0x8346('0x7'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Chat','model':_0x8346('0xc'),'event':_0x8346('0x7'),'condition':_0x8346('0xd'),'callback':afterCreateOfflineMessage},{'channel':_0x8346('0xe'),'model':_0x8346('0xf'),'event':_0x8346('0x7'),'condition':_0x8346('0x8'),'callback':afterCreate},{'channel':_0x8346('0xe'),'model':_0x8346('0xf'),'event':_0x8346('0xa'),'condition':_0x8346('0xb'),'callback':afterUpdate},{'channel':_0x8346('0xe'),'model':_0x8346('0x10'),'event':'afterCreate','condition':_0x8346('0xd'),'callback':afterCreateMessage},{'channel':_0x8346('0x11'),'model':_0x8346('0x12'),'event':_0x8346('0x7'),'condition':_0x8346('0x8'),'callback':afterCreate},{'channel':_0x8346('0x11'),'model':_0x8346('0x12'),'event':_0x8346('0xa'),'condition':_0x8346('0xb'),'callback':afterUpdate},{'channel':_0x8346('0x11'),'model':_0x8346('0x13'),'event':_0x8346('0x7'),'condition':_0x8346('0xd'),'callback':afterCreateMessage},{'channel':'Fax','model':_0x8346('0x14'),'event':_0x8346('0x7'),'condition':_0x8346('0x8'),'callback':afterCreate},{'channel':_0x8346('0x15'),'model':_0x8346('0x14'),'event':_0x8346('0xa'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0x8346('0x15'),'model':'FaxMessage','event':'afterCreate','condition':_0x8346('0xd'),'callback':afterCreateMessage},{'channel':_0x8346('0x16'),'model':_0x8346('0x17'),'event':'afterCreate','condition':_0x8346('0x8'),'callback':afterCreate},{'channel':_0x8346('0x16'),'model':_0x8346('0x17'),'event':_0x8346('0xa'),'condition':_0x8346('0xb'),'callback':afterUpdate},{'channel':_0x8346('0x16'),'model':_0x8346('0x18'),'event':_0x8346('0x7'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0x8346('0x19'),'model':_0x8346('0x1a'),'event':'afterCreate','condition':'newinteraction','callback':afterCreate},{'channel':_0x8346('0x19'),'model':_0x8346('0x1a'),'event':_0x8346('0xa'),'condition':'closedinteraction','callback':afterUpdate},{'channel':'Openchannel','model':_0x8346('0x1b'),'event':_0x8346('0x7'),'condition':_0x8346('0xd'),'callback':afterCreateMessage}];function request(_0x59bc95){return client[_0x8346('0x1c')]('EventManager',_0x59bc95)[_0x8346('0x1d')](function(_0x1805b4){logger[_0x8346('0x1e')](_0x8346('0x1f'),_0x8346('0x20'),_0x1805b4);if(_0x1805b4[_0x8346('0x21')]){if(_0x1805b4[_0x8346('0x21')][_0x8346('0x22')]===0x1f4){logger[_0x8346('0x21')](_0x8346('0x1f'),'EventManager',_0x1805b4[_0x8346('0x21')]);}}})[_0x8346('0x23')](function(_0x25dad6){logger[_0x8346('0x21')](_0x8346('0x1f'),_0x8346('0x20'),_0x25dad6);});}function afterCreateMessage(_0x1ba2ab){return function(_0x2a2b70){_0x2a2b70=_0x2a2b70[_0x8346('0x24')]({'plain':!![]});_0x2a2b70[_0x8346('0x25')]=_0x1ba2ab;_0x2a2b70[_0x8346('0x26')]=_0x1ba2ab;_0x2a2b70[_0x8346('0x27')]=_0x2a2b70[_0x8346('0x28')];Promise[_0x8346('0x29')]()['then'](function(){if(typeof _0x2a2b70['ContactId']==='undefined')return null;var _0x4de22c=_0x8346('0x2a')+_0x2a2b70[_0x8346('0x2b')];return db[_0x8346('0x2c')]['query'](_0x4de22c,{'type':db[_0x8346('0x2d')][_0x8346('0x2e')][_0x8346('0x2f')],'raw':!![]});})[_0x8346('0x1d')](function(_0xa2e370){if(_0xa2e370){_0x2a2b70[_0x8346('0x30')]=_0xa2e370[0x0];}if(typeof _0x2a2b70[_0x8346('0x31')]==='undefined')return;return getAgent(_0x2a2b70['UserId']);})[_0x8346('0x1d')](function(_0x3f8ded){if(_0x3f8ded){_0x2a2b70['interface']=util[_0x8346('0x32')](_0x8346('0x33'),_0x3f8ded[_0x8346('0x34')]);_0x2a2b70[_0x8346('0x35')]=_0x3f8ded;_0x2a2b70[_0x8346('0x25')]=_0x1ba2ab;return request({'event':'incomingmessage','message':_0x2a2b70});}else{return request({'event':'outgoingmessage','message':_0x2a2b70});}})[_0x8346('0x23')](function(_0xbd90e4){logger[_0x8346('0x21')](_0x8346('0x1f'),_0x8346('0x36'),_0xbd90e4);});};}function afterCreateOfflineMessage(_0xa20b36){return function(_0x1a0e45){_0x1a0e45=_0x1a0e45['get']({'plain':!![]});_0x1a0e45[_0x8346('0x25')]=_0xa20b36;_0x1a0e45[_0x8346('0x26')]=_0xa20b36;_0x1a0e45[_0x8346('0x27')]=_0x8346('0x37');return request({'event':_0x1a0e45[_0x8346('0x27')],'message':_0x1a0e45});};}function afterCreate(_0x408c8f,_0x4c90c3){return function(_0x3cbb7f){_0x3cbb7f=_0x3cbb7f['get']({'plain':!![]});_0x3cbb7f[_0x8346('0x25')]=_0x408c8f;_0x3cbb7f['motionChannel']=_0x408c8f;_0x3cbb7f[_0x8346('0x27')]='opened';Promise[_0x8346('0x29')]()[_0x8346('0x1d')](function(){var _0x365eea=_0x8346('0x2a')+_0x3cbb7f[_0x8346('0x2b')];return db[_0x8346('0x2c')]['query'](_0x365eea,{'type':db[_0x8346('0x2d')][_0x8346('0x2e')][_0x8346('0x2f')],'raw':!![]});})[_0x8346('0x1d')](function(_0x24c1ed){if(_0x24c1ed){_0x3cbb7f[_0x8346('0x30')]=_0x24c1ed[0x0];}if(typeof _0x3cbb7f[_0x8346('0x31')]===_0x8346('0x38'))return;return getAgent(_0x3cbb7f[_0x8346('0x31')]);})[_0x8346('0x1d')](function(_0x149716){if(_0x149716){_0x3cbb7f[_0x8346('0x39')]=util['format'](_0x8346('0x33'),_0x149716[_0x8346('0x34')]);_0x3cbb7f[_0x8346('0x35')]=_0x149716;}return request({'event':_0x4c90c3,'message':_0x3cbb7f});})[_0x8346('0x23')](function(_0x3c4e87){logger['error'](_0x8346('0x1f'),_0x8346('0x3a'),_0x3c4e87);});};}function afterUpdate(_0x5b063c){return function(_0x4eb5d1){var _0x46f31a=_0x4eb5d1[_0x8346('0x3b')](_0x8346('0x3c'))&&_0x4eb5d1['closed'];var _0x127c9e=_0x4eb5d1['changed']('substatus');if(_0x46f31a||_0x127c9e){var _0x31d2d0=_0x46f31a?_0x8346('0xb'):'substatus';var _0x2a663c=_0x4eb5d1[_0x8346('0x24')]({'plain':!![]});_0x2a663c['channel']=_0x5b063c;_0x2a663c[_0x8346('0x26')]=_0x5b063c;_0x2a663c[_0x8346('0x27')]=_0x46f31a?_0x8346('0x3c'):'substatus';var _0x3af3f7=_0x8346('0x2a')+_0x2a663c[_0x8346('0x2b')];return db[_0x8346('0x2c')][_0x8346('0x3d')](_0x3af3f7,{'type':db[_0x8346('0x2d')]['QueryTypes']['SELECT'],'raw':!![]})[_0x8346('0x1d')](function(_0x140b08){if(_0x140b08){_0x2a663c['contact']=_0x140b08[0x0];}if(typeof _0x2a663c[_0x8346('0x31')]==='undefined')return;return getAgent(_0x2a663c['UserId']);})[_0x8346('0x1d')](function(_0x2c785d){if(_0x2c785d){_0x2a663c[_0x8346('0x39')]=util['format']('SIP/%s',_0x2c785d[_0x8346('0x34')]);_0x2a663c[_0x8346('0x35')]=_0x2c785d;}return request({'event':_0x31d2d0,'message':_0x2a663c});})[_0x8346('0x23')](function(_0x5e73f8){logger['error']('Trigger,\x20%s',_0x8346('0x3e'),_0x5e73f8);});}};}function getAgent(_0x132bbb){return db[_0x8346('0x3f')][_0x8346('0x40')]({'where':{'id':_0x132bbb},'attributes':['id',_0x8346('0x34'),_0x8346('0x41'),_0x8346('0x42'),_0x8346('0x43')],'raw':!![]})[_0x8346('0x1d')](function(_0x2085ff){return _0x2085ff;});}exports[_0x8346('0x44')]=function(){for(var _0x20cb71=0x0;_0x20cb71<triggers['length'];_0x20cb71+=0x1){if(db[_0x8346('0x45')](triggers[_0x20cb71]['model'])){db[triggers[_0x20cb71][_0x8346('0x46')]]['hook'](triggers[_0x20cb71][_0x8346('0x27')],triggers[_0x20cb71][_0x8346('0x47')](triggers[_0x20cb71][_0x8346('0x25')][_0x8346('0x48')](),triggers[_0x20cb71][_0x8346('0x49')]));}}};
\ No newline at end of file