Built motion from commit (unavailable).|2.5.9
[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 _0x364d=['FaxMessage','Mail','MailInteraction','Openchannel','OpenchannelMessage','request','EventManager','info','Trigger,\x20%s','error','code','catch','get','channel','UserId','User','find','name','then','format','SIP/%s','incomingmessage','outgoingmessage','opened','changed','closed','interface','default','length','hasOwnProperty','model','hook','event','callback','toLowerCase','util','../../mysqldb','jayson/promise','../logger','triggers','client','ChatInteraction','afterCreate','newinteraction','Chat','afterUpdate','closedinteraction','ChatMessage','newmessage','Sms','SmsInteraction','SmsMessage','Whatsapp','WhatsappInteraction','WhatsappMessage','Fax','FaxInteraction'];(function(_0x2329ee,_0x56e5b3){var _0x2e14c7=function(_0x5dc2b1){while(--_0x5dc2b1){_0x2329ee['push'](_0x2329ee['shift']());}};_0x2e14c7(++_0x56e5b3);}(_0x364d,0x1b2));var _0xd364=function(_0x2eab14,_0x293bbb){_0x2eab14=_0x2eab14-0x0;var _0x3128a1=_0x364d[_0x2eab14];return _0x3128a1;};'use strict';var util=require(_0xd364('0x0'));var db=require(_0xd364('0x1'))['db'];var jayson=require(_0xd364('0x2'));var logger=require(_0xd364('0x3'))(_0xd364('0x4'));var client=jayson[_0xd364('0x5')]['http']({'port':0x232a});var triggers=[{'channel':'Chat','model':_0xd364('0x6'),'event':_0xd364('0x7'),'condition':_0xd364('0x8'),'callback':afterCreate},{'channel':_0xd364('0x9'),'model':_0xd364('0x6'),'event':_0xd364('0xa'),'condition':_0xd364('0xb'),'callback':afterUpdate},{'channel':_0xd364('0x9'),'model':_0xd364('0xc'),'event':_0xd364('0x7'),'condition':_0xd364('0xd'),'callback':afterCreateMessage},{'channel':_0xd364('0xe'),'model':_0xd364('0xf'),'event':_0xd364('0x7'),'condition':_0xd364('0x8'),'callback':afterCreate},{'channel':_0xd364('0xe'),'model':'SmsInteraction','event':_0xd364('0xa'),'condition':'closedinteraction','callback':afterUpdate},{'channel':'Sms','model':_0xd364('0x10'),'event':'afterCreate','condition':_0xd364('0xd'),'callback':afterCreateMessage},{'channel':_0xd364('0x11'),'model':_0xd364('0x12'),'event':_0xd364('0x7'),'condition':_0xd364('0x8'),'callback':afterCreate},{'channel':_0xd364('0x11'),'model':_0xd364('0x12'),'event':_0xd364('0xa'),'condition':_0xd364('0xb'),'callback':afterUpdate},{'channel':_0xd364('0x11'),'model':_0xd364('0x13'),'event':'afterCreate','condition':_0xd364('0xd'),'callback':afterCreateMessage},{'channel':_0xd364('0x14'),'model':'FaxInteraction','event':_0xd364('0x7'),'condition':_0xd364('0x8'),'callback':afterCreate},{'channel':'Fax','model':_0xd364('0x15'),'event':'afterUpdate','condition':_0xd364('0xb'),'callback':afterUpdate},{'channel':_0xd364('0x14'),'model':_0xd364('0x16'),'event':'afterCreate','condition':_0xd364('0xd'),'callback':afterCreateMessage},{'channel':_0xd364('0x17'),'model':_0xd364('0x18'),'event':'afterCreate','condition':_0xd364('0x8'),'callback':afterCreate},{'channel':_0xd364('0x17'),'model':_0xd364('0x18'),'event':'afterUpdate','condition':'closedinteraction','callback':afterUpdate},{'channel':_0xd364('0x17'),'model':'MailMessage','event':_0xd364('0x7'),'condition':_0xd364('0xd'),'callback':afterCreateMessage},{'channel':'Openchannel','model':'OpenchannelInteraction','event':'afterCreate','condition':_0xd364('0x8'),'callback':afterCreate},{'channel':_0xd364('0x19'),'model':'OpenchannelInteraction','event':_0xd364('0xa'),'condition':_0xd364('0xb'),'callback':afterUpdate},{'channel':_0xd364('0x19'),'model':_0xd364('0x1a'),'event':_0xd364('0x7'),'condition':_0xd364('0xd'),'callback':afterCreateMessage}];function request(_0x227cb4){return client[_0xd364('0x1b')](_0xd364('0x1c'),_0x227cb4)['then'](function(_0x27f95e){logger[_0xd364('0x1d')](_0xd364('0x1e'),_0xd364('0x1c'),_0x27f95e);if(_0x27f95e[_0xd364('0x1f')]){if(_0x27f95e[_0xd364('0x1f')][_0xd364('0x20')]===0x1f4){logger['error']('Trigger,\x20%s',_0xd364('0x1c'),_0x27f95e[_0xd364('0x1f')]);}}})[_0xd364('0x21')](function(_0x1a24a4){logger[_0xd364('0x1f')](_0xd364('0x1e'),'EventManager',_0x1a24a4);});}function afterCreateMessage(_0xc241a3,_0x305c46){return function(_0x5c942e,_0x8683cb){_0x5c942e=_0x5c942e[_0xd364('0x22')]({'plain':!![]});_0x5c942e[_0xd364('0x23')]=_0xc241a3;_0x5c942e['event']=_0x5c942e['direction'];if(_0x5c942e[_0xd364('0x24')]){return db[_0xd364('0x25')][_0xd364('0x26')]({'where':{'id':_0x5c942e[_0xd364('0x24')]},'attributes':['id',_0xd364('0x27')],'raw':!![]})[_0xd364('0x28')](function(_0x27c079){_0x5c942e['interface']=util[_0xd364('0x29')](_0xd364('0x2a'),_0x27c079[_0xd364('0x27')]);_0x5c942e[_0xd364('0x23')]=_0xc241a3;return request({'event':_0xd364('0x2b'),'message':_0x5c942e});})[_0xd364('0x21')](function(_0x5674b9){console[_0xd364('0x1f')](_0x5674b9);});}else{return request({'event':_0xd364('0x2c'),'message':_0x5c942e});}};}function afterCreate(_0x138550,_0x25d352){return function(_0x2c6cf5,_0x1bbb17){_0x2c6cf5=_0x2c6cf5[_0xd364('0x22')]({'plain':!![]});_0x2c6cf5[_0xd364('0x23')]=_0x138550;_0x2c6cf5['event']=_0xd364('0x2d');return request({'event':_0x25d352,'message':_0x2c6cf5});};}function afterUpdate(_0x198ea2,_0x222886){return function(_0x33bd41,_0x48f1d5){if(_0x33bd41[_0xd364('0x2e')](_0xd364('0x2f'))&&_0x33bd41[_0xd364('0x2f')]){_0x33bd41=_0x33bd41['get']({'plain':!![]});_0x33bd41[_0xd364('0x23')]=_0x198ea2;_0x33bd41['event']=_0xd364('0x2f');if(_0x33bd41[_0xd364('0x24')]){return db['User'][_0xd364('0x26')]({'where':{'id':_0x33bd41[_0xd364('0x24')]},'attributes':['id',_0xd364('0x27')],'raw':!![]})[_0xd364('0x28')](function(_0x578579){_0x33bd41[_0xd364('0x30')]=util[_0xd364('0x29')](_0xd364('0x2a'),_0x578579['name']);return request({'event':_0x222886,'message':_0x33bd41});})['catch'](function(_0x5b5324){console[_0xd364('0x1f')](_0x5b5324);});}else{return request({'event':_0x222886,'message':_0x33bd41});}}};}exports[_0xd364('0x31')]=function(){for(var _0x5e8521=0x0;_0x5e8521<triggers[_0xd364('0x32')];_0x5e8521+=0x1){if(db[_0xd364('0x33')](triggers[_0x5e8521]['model'])){db[triggers[_0x5e8521][_0xd364('0x34')]][_0xd364('0x35')](triggers[_0x5e8521][_0xd364('0x36')],triggers[_0x5e8521][_0xd364('0x37')](triggers[_0x5e8521]['channel'][_0xd364('0x38')](),triggers[_0x5e8521]['condition']));}}};