2cd01acbaeda449d321833ad3827162a05d9b53e
[motion.git] / server / config / routing / queue.js
1 var _0x88ae=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x74\x72\x75\x63\x74\x75\x72\x65","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x55\x73\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x61\x70\x70","\x64\x61\x74\x61","\x65\x6C\x61\x70\x73\x65\x64","\x6E\x65\x78\x74","\x63\x61\x6C\x6C\x65\x64","\x72\x65\x6A\x65\x63\x74\x65\x64","\x69\x6E\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x51\x55\x45\x55\x45\x20\x41\x43\x54\x49\x4F\x4E\x20\x53\x54\x41\x52\x54\x45\x44","\x6C\x6F\x67","\x74\x68\x65\x6E","\x72\x6F\x6F\x6D\x69\x64","\x75\x70\x64\x61\x74\x65","\x63\x68\x61\x6E\x6E\x65\x6C","\x72\x6F\x6F\x6D\x73","\x6D\x6F\x64\x65\x6C\x73","\x74\x69\x6D\x65\x6F\x75\x74","\x71\x75\x65\x75\x65","\x69\x64","\x5F\x71\x75\x65\x75\x65","\x6E\x61\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x6D\x65\x72\x67\x65","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x73\x65\x73\x73\x69\x6F\x6E\x73","\x25\x73\x20\x51\x55\x45\x55\x45\x20\x49\x4E\x53\x54\x41\x4E\x43\x45\x20\x46\x4F\x52\x20\x41\x43\x43\x4F\x55\x4E\x54\x20\x25\x73","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x61\x63\x63\x6F\x75\x6E\x74\x6E\x61\x6D\x65","\x69\x6E\x66\x6F","\x5F\x64\x75\x72\x61\x74\x69\x6F\x6E","\x51\x55\x45\x55\x45\x20\x42\x45\x45\x50\x41\x4C\x4C\x20\x53\x54\x52\x41\x54\x45\x47\x59\x2C\x20\x44\x55\x52\x41\x54\x49\x4F\x4E","\x5F\x61\x67\x65\x6E\x74\x73","\x70\x65\x6E\x61\x6C\x74\x79\x54\x61\x62\x6C\x65\x73","\x6C\x61\x62\x65\x6C\x73","\x67\x72\x6F\x75\x70\x42\x79","\x76\x61\x6C\x75\x65\x73","\x62\x65\x65\x70\x61\x6C\x6C","\x51\x55\x45\x55\x45\x20\x52\x4F\x55\x4E\x44\x20\x52\x4F\x42\x49\x4E\x20\x53\x54\x52\x41\x54\x45\x47\x59\x2C\x20\x44\x55\x52\x41\x54\x49\x4F\x4E","\x55\x73\x65\x72\x73","\x72\x72","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E","\x51\x55\x45\x55\x45\x20\x52\x52\x20\x4D\x45\x4D\x4F\x52\x59\x20\x53\x54\x52\x41\x54\x45\x47\x59\x2C\x20\x44\x55\x52\x41\x54\x49\x4F\x4E","\x6C\x61\x73\x74\x41\x67\x65\x6E\x74","\x6C\x65\x6E\x67\x74\x68","\x73\x68\x69\x66\x74","\x70\x75\x73\x68","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x73\x74\x72\x61\x74\x65\x67\x79","\x61\x70\x70\x51\x75\x65\x75\x65\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x41\x53\x43","\x66\x69\x6E\x64\x42\x79\x49\x64","\x71\x75\x65\x75\x65\x73","\x6D\x61\x70","\x73\x74\x61\x74\x75\x73","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x6F\x6E\x6C\x69\x6E\x65","\x6D\x61\x69\x6C\x50\x61\x75\x73\x65","\x63\x68\x61\x74\x50\x61\x75\x73\x65","\x66\x61\x78\x50\x61\x75\x73\x65","\x73\x6D\x73\x50\x61\x75\x73\x65","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x50\x61\x75\x73\x65","\x6D\x61\x69\x6C\x43\x61\x70\x61\x63\x69\x74\x79","\x63\x68\x61\x74\x43\x61\x70\x61\x63\x69\x74\x79","\x66\x61\x78\x43\x61\x70\x61\x63\x69\x74\x79","\x73\x6D\x73\x43\x61\x70\x61\x63\x69\x74\x79","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x43\x61\x70\x61\x63\x69\x74\x79","\x70\x61\x75\x73\x65\x73","\x77\x68\x65\x72\x65","\x4F\x50\x45\x4E","\x66\x69\x6C\x74\x65\x72","\x63\x61\x70\x61\x63\x69\x74\x69\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x63\x6C\x6F\x6E\x65","\x72\x65\x70\x6F\x72\x74\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x6A\x6F\x69\x6E","\x6F\x72\x64\x65\x72","\x46\x49\x45\x4C\x44\x28\x55\x73\x65\x72\x2E\x69\x64\x2C","\x29","\x66\x69\x6E\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x88ae[0];const _=require(_0x88ae[1]);const config=require(_0x88ae[2]);const structure=require(_0x88ae[3]);const cp=require(_0x88ae[4]);const util=require(_0x88ae[5]);const moment=require(_0x88ae[6]);const Agent=require(_0x88ae[8])[_0x88ae[7]];function Queue(_0xb570x9,_0xb570xa,_0xb570xb){this[_0x88ae[9]]= _0xb570x9;this[_0x88ae[10]]= _0xb570xa;this[_0x88ae[11]]= 0;this[_0x88ae[12]]= _0xb570xb;this[_0x88ae[13]]= [];this[_0x88ae[14]]= []}Queue[_0x88ae[16]][_0x88ae[15]]= function init(){var _0xb570xd=this;return structure[_0x88ae[26]][_0x88ae[64]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]][_0x88ae[63]](_0xb570xd[_0x88ae[9]][structure[_0x88ae[45]][_0x88ae[60]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]],{attributes:[_0x88ae[29],_0x88ae[31],_0x88ae[27],_0x88ae[59],_0x88ae[54]],include:[{model:Agent,attributes:[_0x88ae[29]],order:[[_0x88ae[61],_0x88ae[62]]]}]})[_0x88ae[21]](function(_0xb570x10){console[_0x88ae[40]](util[_0x88ae[33]](_0x88ae[37],_0xb570xd[_0x88ae[10]][_0x88ae[24]][_0x88ae[38]](),_0xb570xd[_0x88ae[10]][_0x88ae[39]]));_0xb570xd[_0x88ae[30]]= _0xb570x10;_0xb570xd[_0x88ae[41]]= _0xb570xd[_0x88ae[9]][_0x88ae[27]];switch(_0xb570xd[_0x88ae[30]][_0x88ae[59]]){case _0x88ae[48]:console[_0x88ae[40]](_0xb570xd[_0x88ae[10]][_0x88ae[24]][_0x88ae[38]](),_0x88ae[42],_0xb570xd[_0x88ae[9]][_0x88ae[27]]);_0xb570xd[_0x88ae[43]]= _[_0x88ae[47]](_[_0x88ae[46]](_0xb570x10.Users,structure[_0x88ae[45]][_0x88ae[44]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]));_0xb570xd[_0x88ae[48]]();break;case _0x88ae[52]:console[_0x88ae[40]](_0xb570xd[_0x88ae[10]][_0x88ae[24]][_0x88ae[38]](),_0x88ae[49],_0xb570xd[_0x88ae[9]][_0x88ae[27]]);_0xb570xd[_0x88ae[43]]= _0xb570x10[_0x88ae[50]];_0xb570xd[_0x88ae[51]]();break;case _0x88ae[58]:console[_0x88ae[40]](_0xb570xd[_0x88ae[10]][_0x88ae[24]][_0x88ae[38]](),_0x88ae[53],_0xb570xd[_0x88ae[9]][_0x88ae[27]]);_0xb570xd[_0x88ae[43]]= _0xb570x10[_0x88ae[50]];if(_0xb570xd[_0x88ae[30]][_0x88ae[54]]){var _0xb570x11;for(var _0xb570x12=0;_0xb570x12< _0xb570xd[_0x88ae[43]][_0x88ae[55]];_0xb570x12++){_0xb570x11= _0xb570xd[_0x88ae[43]][_0x88ae[56]]();_0xb570xd[_0x88ae[43]][_0x88ae[57]](_0xb570x11);if(_0xb570x11[_0x88ae[29]]=== _0xb570xd[_0x88ae[30]][_0x88ae[54]]){break}}};_0xb570xd[_0x88ae[51]]();break;default:}})[_0x88ae[21]](function(){var _0xb570xf=[_[_0x88ae[34]](_0xb570xd[_0x88ae[10]],{timeslot:_0xb570xd[_0x88ae[9]][_0x88ae[27]],application:_0x88ae[28],queue:_0xb570xd[_0x88ae[30]][_0x88ae[29]],queuename:_0xb570xd[_0x88ae[30]][_0x88ae[31]],calledAt:moment()[_0x88ae[33]](_0x88ae[32]),joinAt:moment()[_0x88ae[33]](_0x88ae[32]),membername:null,memberid:null})];return structure[_0x88ae[26]][_0x88ae[36]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]][_0x88ae[35]](_0xb570xf,{individualHooks:true})})[_0x88ae[21]](function(){return structure[_0x88ae[26]][_0x88ae[25]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]][_0x88ae[23]]({waiting:true},{where:{id:_0xb570xd[_0x88ae[10]][_0x88ae[22]]},individualHooks:true})[_0x88ae[21]](function(){console[_0x88ae[20]](_0x88ae[19])})[_0x88ae[18]](function(_0xb570xe){console[_0x88ae[17]]()})})};Queue[_0x88ae[16]][_0x88ae[48]]= function beepall(){var _0xb570xd=this;var _0xb570x14=_0xb570xd[_0x88ae[43]][_0x88ae[56]]();_0xb570xd[_0x88ae[43]][_0x88ae[57]](_0xb570x14);var _0xb570x15={where:{id:{$in:_[_0x88ae[65]](_0xb570x14,_0x88ae[29])},online:true},include:[{model:structure[_0x88ae[26]][_0x88ae[25]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]],attributes:[_0x88ae[29],_0x88ae[66]]}],attributes:[_0x88ae[29],_0x88ae[31],_0x88ae[67],_0x88ae[68],_0x88ae[69],_0x88ae[70],_0x88ae[71],_0x88ae[72],_0x88ae[73],_0x88ae[74],_0x88ae[75],_0x88ae[76],_0x88ae[77],_0x88ae[78]]};_0xb570x15[_0x88ae[80]][structure[_0x88ae[45]][_0x88ae[79]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]]= false;var _0xb570x16=((_0xb570xd[_0x88ae[9]][_0x88ae[27]]- _0xb570xd[_0x88ae[11]])> _0xb570xd[_0x88ae[30]][_0x88ae[27]])?_0xb570xd[_0x88ae[30]][_0x88ae[27]]:(_0xb570xd[_0x88ae[9]][_0x88ae[27]]- _0xb570xd[_0x88ae[11]]);_0xb570xd[_0x88ae[27]]= setTimeout(function(){_0xb570xd[_0x88ae[11]]+= _0xb570xd[_0x88ae[30]][_0x88ae[27]];_0xb570xd[_0x88ae[48]]()},_0xb570x16* 1000);if(_0xb570x16> 0){Agent[_0x88ae[87]](_0xb570x15)[_0x88ae[21]](function(_0xb570x17){_0xb570x17= _[_0x88ae[84]](_0xb570x17,function(_0xb570x11){if(available(_0xb570x11,_0xb570x11[structure[_0x88ae[45]][_0x88ae[79]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]],_0xb570xd[_0x88ae[14]],_[_0x88ae[82]](_0xb570x11[structure[_0x88ae[45]][_0x88ae[25]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]],{status:_0x88ae[81]}),_0xb570x11[structure[_0x88ae[45]][_0x88ae[83]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]])){return true}else {return false}});var _0xb570xf=_[_0x88ae[65]](_0xb570x17,function(_0xb570x11){var _0xb570x18=_[_0x88ae[34]](_0xb570xd[_0x88ae[10]],{timeslot:_0xb570x16,application:_0x88ae[28],membername:_0xb570x11[_0x88ae[31]],memberid:_0xb570x11[_0x88ae[29]],queue:_0xb570xd[_0x88ae[30]][_0x88ae[29]],queuename:_0xb570xd[_0x88ae[30]][_0x88ae[31]],calledAt:moment()[_0x88ae[33]](_0x88ae[32])});return _[_0x88ae[85]](_0xb570x18)});structure[_0x88ae[26]][_0x88ae[86]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]][_0x88ae[35]](_0xb570xf,{individualHooks:true})[_0x88ae[18]](function(_0xb570xe){console[_0x88ae[17]](_0xb570xe)})})[_0x88ae[18]](function(_0xb570xe){console[_0x88ae[17]](_0xb570xe)})}else {clearTimeout(_0xb570xd[_0x88ae[27]]);this[_0x88ae[12]]()}};Queue[_0x88ae[16]][_0x88ae[51]]= function rr(){var _0xb570xd=this;var _0xb570x16=((_0xb570xd[_0x88ae[9]][_0x88ae[27]]- _0xb570xd[_0x88ae[11]])> _0xb570xd[_0x88ae[30]][_0x88ae[27]])?_0xb570xd[_0x88ae[30]][_0x88ae[27]]:(_0xb570xd[_0x88ae[9]][_0x88ae[27]]- _0xb570xd[_0x88ae[11]]);_0xb570xd[_0x88ae[27]]= setTimeout(function(){_0xb570xd[_0x88ae[11]]+= _0xb570xd[_0x88ae[30]][_0x88ae[27]];_0xb570xd[_0x88ae[51]]()},_0xb570x16* 1000);var _0xb570x15={where:{id:{$in:_[_0x88ae[65]](_0xb570xd._agents,_0x88ae[29])}},include:[{model:structure[_0x88ae[26]][_0x88ae[25]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]],attributes:[_0x88ae[29]]}],attributes:[_0x88ae[29],_0x88ae[31],_0x88ae[67],_0x88ae[68],_0x88ae[69],_0x88ae[70],_0x88ae[71],_0x88ae[72],_0x88ae[73],_0x88ae[74],_0x88ae[75],_0x88ae[76],_0x88ae[77],_0x88ae[78]]};if(_[_0x88ae[65]](_0xb570xd._agents,_0x88ae[29])[_0x88ae[88]]()[_0x88ae[55]]){_0xb570x15[_0x88ae[89]]= [[{raw:_0x88ae[90]+ _[_0x88ae[65]](_0xb570xd._agents,_0x88ae[29])[_0x88ae[88]]()+ _0x88ae[91]}]]};if(_0xb570x16> 0){Agent[_0x88ae[87]](_0xb570x15)[_0x88ae[21]](function(_0xb570x17){if(_0xb570x17[_0x88ae[55]]){_0xb570xd[_0x88ae[43]]= _0xb570x17;for(var _0xb570x12=0;_0xb570x12< _0xb570xd[_0x88ae[43]][_0x88ae[55]];_0xb570x12++){if(available(_0xb570xd[_0x88ae[43]][0],_0xb570xd[_0x88ae[43]][0][structure[_0x88ae[45]][_0x88ae[79]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]],_0xb570xd[_0x88ae[14]],_[_0x88ae[82]](_0xb570xd[_0x88ae[43]][0][structure[_0x88ae[45]][_0x88ae[25]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]],{status:_0x88ae[81]}),_0xb570xd[_0x88ae[43]][0][structure[_0x88ae[45]][_0x88ae[83]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]]])){var _0xb570xf=[_[_0x88ae[34]](_0xb570xd[_0x88ae[10]],{timeslot:_0xb570x16,application:_0x88ae[28],membername:_0xb570xd[_0x88ae[43]][0][_0x88ae[31]],memberid:_0xb570xd[_0x88ae[43]][0][_0x88ae[29]],queue:_0xb570xd[_0x88ae[30]][_0x88ae[29]],queuename:_0xb570xd[_0x88ae[30]][_0x88ae[31]],calledAt:moment()[_0x88ae[33]](_0x88ae[32])})];return structure[_0x88ae[26]][_0x88ae[86]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]][_0x88ae[35]](_0xb570xf,{individualHooks:true})[_0x88ae[21]](function(){return structure[_0x88ae[26]][_0x88ae[64]][_0xb570xd[_0x88ae[10]][_0x88ae[24]]][_0x88ae[23]]({lastAgent:_0xb570xd[_0x88ae[43]][0][_0x88ae[29]]},{where:{id:_0xb570xd[_0x88ae[30]][_0x88ae[29]]}})})[_0x88ae[18]](function(_0xb570xe){console[_0x88ae[17]](_0xb570xe)})}else {var _0xb570x11=_0xb570xd[_0x88ae[43]][_0x88ae[56]]();_0xb570xd[_0x88ae[43]][_0x88ae[57]](_0xb570x11)}}}})[_0x88ae[21]](function(){var _0xb570x11=_0xb570xd[_0x88ae[43]][_0x88ae[56]]();_0xb570xd[_0x88ae[43]][_0x88ae[57]](_0xb570x11)})[_0x88ae[18]](function(_0xb570xe){console[_0x88ae[17]](_0xb570xe)})}else {clearTimeout(_0xb570xd[_0x88ae[27]]);this[_0x88ae[12]]()}};function available(_0xb570x11,_0xb570x1b,_0xb570x1c,_0xb570x1d,_0xb570x1e){var _0xb570x1f=_[_0x88ae[92]](_0xb570x1c,{id:_0xb570x11[_0x88ae[29]]})?true:false;return _0xb570x11[_0x88ae[68]]&& !_0xb570x1b&& !_0xb570x1f&& ((_0xb570x1d[_0x88ae[55]]< _0xb570x1e)|| (_0xb570x1e=== 0))}module[_0x88ae[93]]= Queue