Built motion from commit (unavailable).|2.5.11
[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 _0x23b4=['FaxInteraction','FaxMessage','Mail','MailInteraction','MailMessage','OpenchannelInteraction','Openchannel','OpenchannelMessage','request','EventManager','then','info','Trigger,\x20%s','error','get','channel','event','direction','User','find','UserId','interface','format','name','incomingmessage','catch','outgoingmessage','opened','closed','SIP/%s','length','hasOwnProperty','model','hook','toLowerCase','condition','util','../../mysqldb','jayson/promise','../logger','triggers','Chat','ChatInteraction','newinteraction','afterUpdate','ChatMessage','afterCreate','newmessage','Sms','SmsInteraction','closedinteraction','SmsMessage','Whatsapp','WhatsappInteraction','WhatsappMessage','Fax'];(function(_0x469be6,_0x54adf4){var _0x42ff6b=function(_0x34bce0){while(--_0x34bce0){_0x469be6['push'](_0x469be6['shift']());}};_0x42ff6b(++_0x54adf4);}(_0x23b4,0x1ac));var _0x423b=function(_0xb8f8ba,_0x56a48f){_0xb8f8ba=_0xb8f8ba-0x0;var _0x426419=_0x23b4[_0xb8f8ba];return _0x426419;};'use strict';var util=require(_0x423b('0x0'));var db=require(_0x423b('0x1'))['db'];var jayson=require(_0x423b('0x2'));var logger=require(_0x423b('0x3'))(_0x423b('0x4'));var client=jayson['client']['http']({'port':0x232a});var triggers=[{'channel':_0x423b('0x5'),'model':_0x423b('0x6'),'event':'afterCreate','condition':_0x423b('0x7'),'callback':afterCreate},{'channel':_0x423b('0x5'),'model':'ChatInteraction','event':_0x423b('0x8'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0x423b('0x5'),'model':_0x423b('0x9'),'event':_0x423b('0xa'),'condition':_0x423b('0xb'),'callback':afterCreateMessage},{'channel':_0x423b('0xc'),'model':_0x423b('0xd'),'event':_0x423b('0xa'),'condition':_0x423b('0x7'),'callback':afterCreate},{'channel':_0x423b('0xc'),'model':_0x423b('0xd'),'event':_0x423b('0x8'),'condition':_0x423b('0xe'),'callback':afterUpdate},{'channel':_0x423b('0xc'),'model':_0x423b('0xf'),'event':'afterCreate','condition':'newmessage','callback':afterCreateMessage},{'channel':_0x423b('0x10'),'model':_0x423b('0x11'),'event':_0x423b('0xa'),'condition':_0x423b('0x7'),'callback':afterCreate},{'channel':_0x423b('0x10'),'model':_0x423b('0x11'),'event':_0x423b('0x8'),'condition':_0x423b('0xe'),'callback':afterUpdate},{'channel':_0x423b('0x10'),'model':_0x423b('0x12'),'event':_0x423b('0xa'),'condition':'newmessage','callback':afterCreateMessage},{'channel':_0x423b('0x13'),'model':'FaxInteraction','event':'afterCreate','condition':_0x423b('0x7'),'callback':afterCreate},{'channel':'Fax','model':_0x423b('0x14'),'event':_0x423b('0x8'),'condition':_0x423b('0xe'),'callback':afterUpdate},{'channel':_0x423b('0x13'),'model':_0x423b('0x15'),'event':_0x423b('0xa'),'condition':_0x423b('0xb'),'callback':afterCreateMessage},{'channel':'Mail','model':'MailInteraction','event':_0x423b('0xa'),'condition':_0x423b('0x7'),'callback':afterCreate},{'channel':_0x423b('0x16'),'model':_0x423b('0x17'),'event':_0x423b('0x8'),'condition':_0x423b('0xe'),'callback':afterUpdate},{'channel':_0x423b('0x16'),'model':_0x423b('0x18'),'event':_0x423b('0xa'),'condition':_0x423b('0xb'),'callback':afterCreateMessage},{'channel':'Openchannel','model':_0x423b('0x19'),'event':_0x423b('0xa'),'condition':_0x423b('0x7'),'callback':afterCreate},{'channel':_0x423b('0x1a'),'model':_0x423b('0x19'),'event':_0x423b('0x8'),'condition':'closedinteraction','callback':afterUpdate},{'channel':_0x423b('0x1a'),'model':_0x423b('0x1b'),'event':_0x423b('0xa'),'condition':'newmessage','callback':afterCreateMessage}];function request(_0x184a9f){return client[_0x423b('0x1c')](_0x423b('0x1d'),_0x184a9f)[_0x423b('0x1e')](function(_0x47e73e){logger[_0x423b('0x1f')](_0x423b('0x20'),_0x423b('0x1d'),_0x47e73e);if(_0x47e73e[_0x423b('0x21')]){if(_0x47e73e[_0x423b('0x21')]['code']===0x1f4){logger[_0x423b('0x21')](_0x423b('0x20'),_0x423b('0x1d'),_0x47e73e[_0x423b('0x21')]);}}})['catch'](function(_0x2889d3){logger[_0x423b('0x21')]('Trigger,\x20%s',_0x423b('0x1d'),_0x2889d3);});}function afterCreateMessage(_0x4d7f8e,_0x63d44c){return function(_0x1765d7,_0x1a97ae){_0x1765d7=_0x1765d7[_0x423b('0x22')]({'plain':!![]});_0x1765d7[_0x423b('0x23')]=_0x4d7f8e;_0x1765d7[_0x423b('0x24')]=_0x1765d7[_0x423b('0x25')];if(_0x1765d7['UserId']){return db[_0x423b('0x26')][_0x423b('0x27')]({'where':{'id':_0x1765d7[_0x423b('0x28')]},'attributes':['id','name'],'raw':!![]})[_0x423b('0x1e')](function(_0x225847){_0x1765d7[_0x423b('0x29')]=util[_0x423b('0x2a')]('SIP/%s',_0x225847[_0x423b('0x2b')]);_0x1765d7[_0x423b('0x23')]=_0x4d7f8e;return request({'event':_0x423b('0x2c'),'message':_0x1765d7});})[_0x423b('0x2d')](function(_0x515529){console[_0x423b('0x21')](_0x515529);});}else{return request({'event':_0x423b('0x2e'),'message':_0x1765d7});}};}function afterCreate(_0x5dd274,_0x4c0131){return function(_0x3ebddf,_0x5f36fe){_0x3ebddf=_0x3ebddf['get']({'plain':!![]});_0x3ebddf[_0x423b('0x23')]=_0x5dd274;_0x3ebddf[_0x423b('0x24')]=_0x423b('0x2f');return request({'event':_0x4c0131,'message':_0x3ebddf});};}function afterUpdate(_0x157583,_0x215e4d){return function(_0xa3d23f,_0x817998){if(_0xa3d23f['changed'](_0x423b('0x30'))&&_0xa3d23f[_0x423b('0x30')]){_0xa3d23f=_0xa3d23f[_0x423b('0x22')]({'plain':!![]});_0xa3d23f[_0x423b('0x23')]=_0x157583;_0xa3d23f[_0x423b('0x24')]=_0x423b('0x30');if(_0xa3d23f['UserId']){return db[_0x423b('0x26')][_0x423b('0x27')]({'where':{'id':_0xa3d23f[_0x423b('0x28')]},'attributes':['id','name'],'raw':!![]})[_0x423b('0x1e')](function(_0x5248df){_0xa3d23f[_0x423b('0x29')]=util['format'](_0x423b('0x31'),_0x5248df['name']);return request({'event':_0x215e4d,'message':_0xa3d23f});})[_0x423b('0x2d')](function(_0x9bb7a8){console[_0x423b('0x21')](_0x9bb7a8);});}else{return request({'event':_0x215e4d,'message':_0xa3d23f});}}};}exports['default']=function(){for(var _0x2efbf9=0x0;_0x2efbf9<triggers[_0x423b('0x32')];_0x2efbf9+=0x1){if(db[_0x423b('0x33')](triggers[_0x2efbf9][_0x423b('0x34')])){db[triggers[_0x2efbf9][_0x423b('0x34')]][_0x423b('0x35')](triggers[_0x2efbf9][_0x423b('0x24')],triggers[_0x2efbf9]['callback'](triggers[_0x2efbf9][_0x423b('0x23')][_0x423b('0x36')](),triggers[_0x2efbf9][_0x423b('0x37')]));}}};