3b9b32bb1236ffde1cd1686f4f6adf855dece842
[motion.git] / server / config / routing / queue.js
1 var _0x469f=["\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"];_0x469f[0];const _=require(_0x469f[1]);const config=require(_0x469f[2]);const structure=require(_0x469f[3]);const cp=require(_0x469f[4]);const util=require(_0x469f[5]);const moment=require(_0x469f[6]);const Agent=require(_0x469f[8])[_0x469f[7]];function Queue(_0xc265x9,_0xc265xa,_0xc265xb){this[_0x469f[9]]= _0xc265x9;this[_0x469f[10]]= _0xc265xa;this[_0x469f[11]]= 0;this[_0x469f[12]]= _0xc265xb;this[_0x469f[13]]= [];this[_0x469f[14]]= []}Queue[_0x469f[16]][_0x469f[15]]= function init(){var _0xc265xd=this;return structure[_0x469f[26]][_0x469f[64]][_0xc265xd[_0x469f[10]][_0x469f[24]]][_0x469f[63]](_0xc265xd[_0x469f[9]][structure[_0x469f[45]][_0x469f[60]][_0xc265xd[_0x469f[10]][_0x469f[24]]]],{attributes:[_0x469f[29],_0x469f[31],_0x469f[27],_0x469f[59],_0x469f[54]],include:[{model:Agent,attributes:[_0x469f[29]],order:[[_0x469f[61],_0x469f[62]]]}]})[_0x469f[21]](function(_0xc265x10){console[_0x469f[40]](util[_0x469f[33]](_0x469f[37],_0xc265xd[_0x469f[10]][_0x469f[24]][_0x469f[38]](),_0xc265xd[_0x469f[10]][_0x469f[39]]));_0xc265xd[_0x469f[30]]= _0xc265x10;_0xc265xd[_0x469f[41]]= _0xc265xd[_0x469f[9]][_0x469f[27]];switch(_0xc265xd[_0x469f[30]][_0x469f[59]]){case _0x469f[48]:console[_0x469f[40]](_0xc265xd[_0x469f[10]][_0x469f[24]][_0x469f[38]](),_0x469f[42],_0xc265xd[_0x469f[9]][_0x469f[27]]);_0xc265xd[_0x469f[43]]= _[_0x469f[47]](_[_0x469f[46]](_0xc265x10.Users,structure[_0x469f[45]][_0x469f[44]][_0xc265xd[_0x469f[10]][_0x469f[24]]]));_0xc265xd[_0x469f[48]]();break;case _0x469f[52]:console[_0x469f[40]](_0xc265xd[_0x469f[10]][_0x469f[24]][_0x469f[38]](),_0x469f[49],_0xc265xd[_0x469f[9]][_0x469f[27]]);_0xc265xd[_0x469f[43]]= _0xc265x10[_0x469f[50]];_0xc265xd[_0x469f[51]]();break;case _0x469f[58]:console[_0x469f[40]](_0xc265xd[_0x469f[10]][_0x469f[24]][_0x469f[38]](),_0x469f[53],_0xc265xd[_0x469f[9]][_0x469f[27]]);_0xc265xd[_0x469f[43]]= _0xc265x10[_0x469f[50]];if(_0xc265xd[_0x469f[30]][_0x469f[54]]){var _0xc265x11;for(var _0xc265x12=0;_0xc265x12< _0xc265xd[_0x469f[43]][_0x469f[55]];_0xc265x12++){_0xc265x11= _0xc265xd[_0x469f[43]][_0x469f[56]]();_0xc265xd[_0x469f[43]][_0x469f[57]](_0xc265x11);if(_0xc265x11[_0x469f[29]]=== _0xc265xd[_0x469f[30]][_0x469f[54]]){break}}};_0xc265xd[_0x469f[51]]();break;default:}})[_0x469f[21]](function(){var _0xc265xf=[_[_0x469f[34]](_0xc265xd[_0x469f[10]],{timeslot:_0xc265xd[_0x469f[9]][_0x469f[27]],application:_0x469f[28],queue:_0xc265xd[_0x469f[30]][_0x469f[29]],queuename:_0xc265xd[_0x469f[30]][_0x469f[31]],calledAt:moment()[_0x469f[33]](_0x469f[32]),joinAt:moment()[_0x469f[33]](_0x469f[32]),membername:null,memberid:null})];return structure[_0x469f[26]][_0x469f[36]][_0xc265xd[_0x469f[10]][_0x469f[24]]][_0x469f[35]](_0xc265xf,{individualHooks:true})})[_0x469f[21]](function(){return structure[_0x469f[26]][_0x469f[25]][_0xc265xd[_0x469f[10]][_0x469f[24]]][_0x469f[23]]({waiting:true},{where:{id:_0xc265xd[_0x469f[10]][_0x469f[22]]},individualHooks:true})[_0x469f[21]](function(){console[_0x469f[20]](_0x469f[19])})[_0x469f[18]](function(_0xc265xe){console[_0x469f[17]]()})})};Queue[_0x469f[16]][_0x469f[48]]= function beepall(){var _0xc265xd=this;var _0xc265x14=_0xc265xd[_0x469f[43]][_0x469f[56]]();_0xc265xd[_0x469f[43]][_0x469f[57]](_0xc265x14);var _0xc265x15={where:{id:{$in:_[_0x469f[65]](_0xc265x14,_0x469f[29])},online:true},include:[{model:structure[_0x469f[26]][_0x469f[25]][_0xc265xd[_0x469f[10]][_0x469f[24]]],attributes:[_0x469f[29],_0x469f[66]]}],attributes:[_0x469f[29],_0x469f[31],_0x469f[67],_0x469f[68],_0x469f[69],_0x469f[70],_0x469f[71],_0x469f[72],_0x469f[73],_0x469f[74],_0x469f[75],_0x469f[76],_0x469f[77],_0x469f[78]]};_0xc265x15[_0x469f[80]][structure[_0x469f[45]][_0x469f[79]][_0xc265xd[_0x469f[10]][_0x469f[24]]]]= false;var _0xc265x16=((_0xc265xd[_0x469f[9]][_0x469f[27]]- _0xc265xd[_0x469f[11]])> _0xc265xd[_0x469f[30]][_0x469f[27]])?_0xc265xd[_0x469f[30]][_0x469f[27]]:(_0xc265xd[_0x469f[9]][_0x469f[27]]- _0xc265xd[_0x469f[11]]);_0xc265xd[_0x469f[27]]= setTimeout(function(){_0xc265xd[_0x469f[11]]+= _0xc265xd[_0x469f[30]][_0x469f[27]];_0xc265xd[_0x469f[48]]()},_0xc265x16* 1000);if(_0xc265x16> 0){Agent[_0x469f[87]](_0xc265x15)[_0x469f[21]](function(_0xc265x17){_0xc265x17= _[_0x469f[84]](_0xc265x17,function(_0xc265x11){if(available(_0xc265x11,_0xc265x11[structure[_0x469f[45]][_0x469f[79]][_0xc265xd[_0x469f[10]][_0x469f[24]]]],_0xc265xd[_0x469f[14]],_[_0x469f[82]](_0xc265x11[structure[_0x469f[45]][_0x469f[25]][_0xc265xd[_0x469f[10]][_0x469f[24]]]],{status:_0x469f[81]}),_0xc265x11[structure[_0x469f[45]][_0x469f[83]][_0xc265xd[_0x469f[10]][_0x469f[24]]]])){return true}else {return false}});var _0xc265xf=_[_0x469f[65]](_0xc265x17,function(_0xc265x11){var _0xc265x18=_[_0x469f[34]](_0xc265xd[_0x469f[10]],{timeslot:_0xc265x16,application:_0x469f[28],membername:_0xc265x11[_0x469f[31]],memberid:_0xc265x11[_0x469f[29]],queue:_0xc265xd[_0x469f[30]][_0x469f[29]],queuename:_0xc265xd[_0x469f[30]][_0x469f[31]],calledAt:moment()[_0x469f[33]](_0x469f[32])});return _[_0x469f[85]](_0xc265x18)});structure[_0x469f[26]][_0x469f[86]][_0xc265xd[_0x469f[10]][_0x469f[24]]][_0x469f[35]](_0xc265xf,{individualHooks:true})[_0x469f[18]](function(_0xc265xe){console[_0x469f[17]](_0xc265xe)})})[_0x469f[18]](function(_0xc265xe){console[_0x469f[17]](_0xc265xe)})}else {clearTimeout(_0xc265xd[_0x469f[27]]);this[_0x469f[12]]()}};Queue[_0x469f[16]][_0x469f[51]]= function rr(){var _0xc265xd=this;var _0xc265x16=((_0xc265xd[_0x469f[9]][_0x469f[27]]- _0xc265xd[_0x469f[11]])> _0xc265xd[_0x469f[30]][_0x469f[27]])?_0xc265xd[_0x469f[30]][_0x469f[27]]:(_0xc265xd[_0x469f[9]][_0x469f[27]]- _0xc265xd[_0x469f[11]]);_0xc265xd[_0x469f[27]]= setTimeout(function(){_0xc265xd[_0x469f[11]]+= _0xc265xd[_0x469f[30]][_0x469f[27]];_0xc265xd[_0x469f[51]]()},_0xc265x16* 1000);var _0xc265x15={where:{id:{$in:_[_0x469f[65]](_0xc265xd._agents,_0x469f[29])}},include:[{model:structure[_0x469f[26]][_0x469f[25]][_0xc265xd[_0x469f[10]][_0x469f[24]]],attributes:[_0x469f[29]]}],attributes:[_0x469f[29],_0x469f[31],_0x469f[67],_0x469f[68],_0x469f[69],_0x469f[70],_0x469f[71],_0x469f[72],_0x469f[73],_0x469f[74],_0x469f[75],_0x469f[76],_0x469f[77],_0x469f[78]]};if(_[_0x469f[65]](_0xc265xd._agents,_0x469f[29])[_0x469f[88]]()[_0x469f[55]]){_0xc265x15[_0x469f[89]]= [[{raw:_0x469f[90]+ _[_0x469f[65]](_0xc265xd._agents,_0x469f[29])[_0x469f[88]]()+ _0x469f[91]}]]};if(_0xc265x16> 0){Agent[_0x469f[87]](_0xc265x15)[_0x469f[21]](function(_0xc265x17){if(_0xc265x17[_0x469f[55]]){_0xc265xd[_0x469f[43]]= _0xc265x17;for(var _0xc265x12=0;_0xc265x12< _0xc265xd[_0x469f[43]][_0x469f[55]];_0xc265x12++){if(available(_0xc265xd[_0x469f[43]][0],_0xc265xd[_0x469f[43]][0][structure[_0x469f[45]][_0x469f[79]][_0xc265xd[_0x469f[10]][_0x469f[24]]]],_0xc265xd[_0x469f[14]],_[_0x469f[82]](_0xc265xd[_0x469f[43]][0][structure[_0x469f[45]][_0x469f[25]][_0xc265xd[_0x469f[10]][_0x469f[24]]]],{status:_0x469f[81]}),_0xc265xd[_0x469f[43]][0][structure[_0x469f[45]][_0x469f[83]][_0xc265xd[_0x469f[10]][_0x469f[24]]]])){var _0xc265xf=[_[_0x469f[34]](_0xc265xd[_0x469f[10]],{timeslot:_0xc265x16,application:_0x469f[28],membername:_0xc265xd[_0x469f[43]][0][_0x469f[31]],memberid:_0xc265xd[_0x469f[43]][0][_0x469f[29]],queue:_0xc265xd[_0x469f[30]][_0x469f[29]],queuename:_0xc265xd[_0x469f[30]][_0x469f[31]],calledAt:moment()[_0x469f[33]](_0x469f[32])})];return structure[_0x469f[26]][_0x469f[86]][_0xc265xd[_0x469f[10]][_0x469f[24]]][_0x469f[35]](_0xc265xf,{individualHooks:true})[_0x469f[21]](function(){return structure[_0x469f[26]][_0x469f[64]][_0xc265xd[_0x469f[10]][_0x469f[24]]][_0x469f[23]]({lastAgent:_0xc265xd[_0x469f[43]][0][_0x469f[29]]},{where:{id:_0xc265xd[_0x469f[30]][_0x469f[29]]}})})[_0x469f[18]](function(_0xc265xe){console[_0x469f[17]](_0xc265xe)})}else {var _0xc265x11=_0xc265xd[_0x469f[43]][_0x469f[56]]();_0xc265xd[_0x469f[43]][_0x469f[57]](_0xc265x11)}}}})[_0x469f[21]](function(){var _0xc265x11=_0xc265xd[_0x469f[43]][_0x469f[56]]();_0xc265xd[_0x469f[43]][_0x469f[57]](_0xc265x11)})[_0x469f[18]](function(_0xc265xe){console[_0x469f[17]](_0xc265xe)})}else {clearTimeout(_0xc265xd[_0x469f[27]]);this[_0x469f[12]]()}};function available(_0xc265x11,_0xc265x1b,_0xc265x1c,_0xc265x1d,_0xc265x1e){var _0xc265x1f=_[_0x469f[92]](_0xc265x1c,{id:_0xc265x11[_0x469f[29]]})?true:false;return _0xc265x11[_0x469f[68]]&&  !_0xc265x1b&&  !_0xc265x1f&& ((_0xc265x1d[_0x469f[55]]< _0xc265x1e)|| (_0xc265x1e=== 0))}module[_0x469f[93]]= Queue