Built motion from commit (unavailable).|2.5.8
[motion2.git] / server / config / triggers / index.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x6cad=['OpenchannelInteraction','OpenchannelMessage','EventManager','then','info','error','code','catch','Trigger,\x20%s','get','channel','event','direction','UserId','find','name','interface','incomingmessage','outgoingmessage','changed','closed','User','default','model','hook','toLowerCase','condition','util','../../mysqldb','jayson/promise','../logger','triggers','http','ChatInteraction','newinteraction','afterUpdate','Chat','ChatMessage','afterCreate','newmessage','Sms','SmsInteraction','closedinteraction','Whatsapp','WhatsappInteraction','WhatsappMessage','Fax','FaxInteraction','FaxMessage','MailInteraction','Mail','MailMessage','Openchannel'];(function(_0x1637ed,_0x4642e7){var _0x1f9019=function(_0x174889){while(--_0x174889){_0x1637ed['push'](_0x1637ed['shift']());}};_0x1f9019(++_0x4642e7);}(_0x6cad,0xba));var _0xd6ca=function(_0x58bebf,_0x3590b7){_0x58bebf=_0x58bebf-0x0;var _0x1be7fa=_0x6cad[_0x58bebf];return _0x1be7fa;};'use strict';var util=require(_0xd6ca('0x0'));var db=require(_0xd6ca('0x1'))['db'];var jayson=require(_0xd6ca('0x2'));var logger=require(_0xd6ca('0x3'))(_0xd6ca('0x4'));var client=jayson['client'][_0xd6ca('0x5')]({'port':0x232a});var triggers=[{'channel':'Chat','model':_0xd6ca('0x6'),'event':'afterCreate','condition':_0xd6ca('0x7'),'callback':afterCreate},{'channel':'Chat','model':'ChatInteraction','event':_0xd6ca('0x8'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0xd6ca('0x9'),'model':_0xd6ca('0xa'),'event':_0xd6ca('0xb'),'condition':_0xd6ca('0xc'),'callback':afterCreateMessage},{'channel':_0xd6ca('0xd'),'model':_0xd6ca('0xe'),'event':_0xd6ca('0xb'),'condition':_0xd6ca('0x7'),'callback':afterCreate},{'channel':'Sms','model':_0xd6ca('0xe'),'event':_0xd6ca('0x8'),'condition':_0xd6ca('0xf'),'callback':afterUpdate},{'channel':'Sms','model':'SmsMessage','event':'afterCreate','condition':_0xd6ca('0xc'),'callback':afterCreateMessage},{'channel':'Whatsapp','model':'WhatsappInteraction','event':_0xd6ca('0xb'),'condition':'newinteraction','callback':afterCreate},{'channel':_0xd6ca('0x10'),'model':_0xd6ca('0x11'),'event':_0xd6ca('0x8'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0xd6ca('0x10'),'model':_0xd6ca('0x12'),'event':'afterCreate','condition':_0xd6ca('0xc'),'callback':afterCreateMessage},{'channel':_0xd6ca('0x13'),'model':_0xd6ca('0x14'),'event':_0xd6ca('0xb'),'condition':_0xd6ca('0x7'),'callback':afterCreate},{'channel':_0xd6ca('0x13'),'model':_0xd6ca('0x14'),'event':'afterUpdate','condition':'closedinteraction','callback':afterUpdate},{'channel':_0xd6ca('0x13'),'model':_0xd6ca('0x15'),'event':_0xd6ca('0xb'),'condition':'newmessage','callback':afterCreateMessage},{'channel':'Mail','model':_0xd6ca('0x16'),'event':'afterCreate','condition':_0xd6ca('0x7'),'callback':afterCreate},{'channel':_0xd6ca('0x17'),'model':'MailInteraction','event':'afterUpdate','condition':'closedinteraction','callback':afterUpdate},{'channel':_0xd6ca('0x17'),'model':_0xd6ca('0x18'),'event':_0xd6ca('0xb'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0xd6ca('0x19'),'model':_0xd6ca('0x1a'),'event':_0xd6ca('0xb'),'condition':_0xd6ca('0x7'),'callback':afterCreate},{'channel':'Openchannel','model':_0xd6ca('0x1a'),'event':'afterUpdate','condition':_0xd6ca('0xf'),'callback':afterUpdate},{'channel':_0xd6ca('0x19'),'model':_0xd6ca('0x1b'),'event':_0xd6ca('0xb'),'condition':'newmessage','callback':afterCreateMessage}];function request(_0x278f47){return client['request'](_0xd6ca('0x1c'),_0x278f47)[_0xd6ca('0x1d')](function(_0x5547d1){logger[_0xd6ca('0x1e')]('Trigger,\x20%s',_0xd6ca('0x1c'),_0x5547d1);if(_0x5547d1[_0xd6ca('0x1f')]){if(_0x5547d1['error'][_0xd6ca('0x20')]===0x1f4){logger[_0xd6ca('0x1f')]('Trigger,\x20%s',_0xd6ca('0x1c'),_0x5547d1[_0xd6ca('0x1f')]);}}})[_0xd6ca('0x21')](function(_0x2425fc){logger[_0xd6ca('0x1f')](_0xd6ca('0x22'),_0xd6ca('0x1c'),_0x2425fc);});}function afterCreateMessage(_0x2df66a,_0x1a6b9d){return function(_0x4db795,_0x33229d){_0x4db795=_0x4db795[_0xd6ca('0x23')]({'plain':!![]});_0x4db795[_0xd6ca('0x24')]=_0x2df66a;_0x4db795[_0xd6ca('0x25')]=_0x4db795[_0xd6ca('0x26')];if(_0x4db795[_0xd6ca('0x27')]){return db['User'][_0xd6ca('0x28')]({'where':{'id':_0x4db795[_0xd6ca('0x27')]},'attributes':['id',_0xd6ca('0x29')],'raw':!![]})[_0xd6ca('0x1d')](function(_0x2f70c5){_0x4db795[_0xd6ca('0x2a')]=util['format']('SIP/%s',_0x2f70c5[_0xd6ca('0x29')]);_0x4db795['channel']=_0x2df66a;return request({'event':_0xd6ca('0x2b'),'message':_0x4db795});})[_0xd6ca('0x21')](function(_0x206934){console[_0xd6ca('0x1f')](_0x206934);});}else{return request({'event':_0xd6ca('0x2c'),'message':_0x4db795});}};}function afterCreate(_0x32741d,_0x511bec){return function(_0x4d20c2,_0x589ca3){_0x4d20c2=_0x4d20c2[_0xd6ca('0x23')]({'plain':!![]});_0x4d20c2[_0xd6ca('0x24')]=_0x32741d;_0x4d20c2[_0xd6ca('0x25')]='opened';return request({'event':_0x511bec,'message':_0x4d20c2});};}function afterUpdate(_0x21eb2d,_0x1864fe){return function(_0x566561,_0x335563){if(_0x566561[_0xd6ca('0x2d')](_0xd6ca('0x2e'))&&_0x566561[_0xd6ca('0x2e')]){_0x566561=_0x566561[_0xd6ca('0x23')]({'plain':!![]});_0x566561[_0xd6ca('0x24')]=_0x21eb2d;_0x566561['event']=_0xd6ca('0x2e');if(_0x566561[_0xd6ca('0x27')]){return db[_0xd6ca('0x2f')][_0xd6ca('0x28')]({'where':{'id':_0x566561[_0xd6ca('0x27')]},'attributes':['id',_0xd6ca('0x29')],'raw':!![]})[_0xd6ca('0x1d')](function(_0x2dff0f){_0x566561[_0xd6ca('0x2a')]=util['format']('SIP/%s',_0x2dff0f['name']);return request({'event':_0x1864fe,'message':_0x566561});})[_0xd6ca('0x21')](function(_0x1bf0d0){console['error'](_0x1bf0d0);});}else{return request({'event':_0x1864fe,'message':_0x566561});}}};}exports[_0xd6ca('0x30')]=function(){for(var _0x1defb3=0x0;_0x1defb3<triggers['length'];_0x1defb3+=0x1){if(db['hasOwnProperty'](triggers[_0x1defb3][_0xd6ca('0x31')])){db[triggers[_0x1defb3][_0xd6ca('0x31')]][_0xd6ca('0x32')](triggers[_0x1defb3][_0xd6ca('0x25')],triggers[_0x1defb3]['callback'](triggers[_0x1defb3][_0xd6ca('0x24')][_0xd6ca('0x33')](),triggers[_0x1defb3][_0xd6ca('0x34')]));}}};