4da1de1f0671e25bc33cc1bd34693e7647bbf1c7
[motion.git] / server / api / chat_room / chat_room.controller.js
1 var _0x43a2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x64\x35","\x6D\x6F\x6D\x65\x6E\x74","\x74\x6F\x2D\x63\x73\x76","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72\x2E\x6A\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x55\x73\x65\x72","\x43\x68\x61\x74\x52\x6F\x6F\x6D","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x4C\x69\x73\x74","\x55\x73\x65\x72\x48\x61\x73\x43\x68\x61\x74\x52\x6F\x6F\x6D","\x67\x65\x74\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x56\x61\x6C\x75\x65\x73","\x63\x61\x74\x63\x68","\x73\x74\x61\x74\x75\x73","\x6B\x65\x79\x42\x79","\x63\x6F\x75\x6E\x74","\x6D\x61\x70\x56\x61\x6C\x75\x65\x73","\x6D\x65\x72\x67\x65","\x73\x65\x6E\x64","\x74\x68\x65\x6E","\x53\x45\x4C\x45\x43\x54\x20\x4C\x4F\x57\x45\x52\x28\x73\x74\x61\x74\x75\x73\x29\x20\x41\x53\x20\x73\x74\x61\x74\x75\x73\x2C\x20\x43\x4F\x55\x4E\x54\x28\x69\x64\x29\x20\x41\x53\x20\x63\x6F\x75\x6E\x74\x20\x46\x52\x4F\x4D\x20\x63\x68\x61\x74\x5F\x72\x6F\x6F\x6D\x73\x20\x57\x48\x45\x52\x45\x20\x63\x72\x65\x61\x74\x65\x64\x41\x74\x20\x3E\x3D\x20\x27\x25\x73\x27\x20\x47\x52\x4F\x55\x50\x20\x42\x59\x20\x73\x74\x61\x74\x75\x73","\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","\x64\x61\x79","\x73\x74\x61\x72\x74\x4F\x66","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x71\x75\x65\x72\x79","\x69\x6E\x64\x65\x78","\x67\x65\x74\x51\x75\x65\x72\x79","\x69\x64","\x6E\x61\x6D\x65","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x65\x6D\x61\x69\x6C","\x72\x6F\x6C\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x64\x65\x73\x63\x72\x69\x62\x65","\x6D\x61\x70","\x67\x65\x74\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x66\x69\x6E\x64\x42\x79\x49\x64","\x75\x73\x65\x72","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x55\x4E\x4D\x41\x4E\x41\x47\x45\x44","\x61\x6C\x6C","\x75\x70\x64\x61\x74\x65\x50\x61\x74\x63\x68","\x74\x61\x67\x73","\x62\x6F\x64\x79","\x2C","\x73\x70\x6C\x69\x74","\x70\x61\x72\x61\x6D\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x75\x70\x64\x61\x74\x65","\x24\x61\x6E\x64","\x69\x73\x41\x72\x72\x61\x79","\x6C\x65\x6E\x67\x74\x68","\x25","\x3B\x25","\x70\x75\x73\x68","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x73\x63\x6F\x70\x65","\x67\x65\x74\x47\x72\x6F\x75\x70\x73","\x67\x72\x6F\x75\x70","\x61\x67\x65\x6E\x74","\x75\x73\x65\x72\x70\x69\x63","\x66\x69\x6E\x64\x41\x6C\x6C","\x67\x65\x74\x45\x78\x74\x65\x72\x6E\x61\x6C\x73","\x65\x78\x74\x65\x72\x6E\x61\x6C","\x69\x6E\x63\x6C\x75\x64\x65","\x67\x65\x74\x41\x67\x65\x6E\x74","\x67\x65\x74\x4F\x6E\x6C\x69\x6E\x65\x52\x6F\x6F\x6D","\x6F\x6E\x6C\x69\x6E\x65","\x6D\x65","\x67\x65\x74\x43\x68\x61\x74\x52\x6F\x6F\x6D\x73","\x73\x68\x6F\x77","\x61\x64\x64\x72\x65\x73\x73","\x67\x65\x74\x52\x6F\x6F\x6D\x42\x79\x55\x73\x65\x72\x73","\x64\x61\x74\x61\x56\x61\x6C\x75\x65\x73","\x67\x65\x74\x55\x73\x65\x72\x73","\x75\x73\x65\x72\x73","\x73\x65\x74\x55\x73\x65\x72\x73","\x73\x70\x72\x65\x61\x64","\x62\x61\x73\x65\x36\x34","\x73\x6F\x72\x74","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x4F\x50\x45\x4E","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x4D\x65\x73\x73\x61\x67\x65","\x74\x79\x70\x65","\x63\x72\x65\x61\x74\x65","\x65\x78\x70\x6F\x72\x74","\x67\x65\x74","\x20","\x72\x65\x70\x6C\x61\x63\x65","\x4C\x20\x4C\x54\x53","\x63\x72\x65\x61\x74\x65\x64\x41\x74","","\x41\x53\x43","\x67\x65\x74\x52\x6F\x6F\x6D\x42\x79\x54\x79\x70\x65","\x67\x65\x74\x52\x6F\x6F\x6D\x47\x72\x6F\x75\x70\x73","\x75\x70\x64\x61\x74\x65\x55\x73\x65\x72\x73","\x64\x65\x73\x74\x72\x6F\x79","\x73\x74\x61\x63\x6B","\x65\x72\x72\x6F\x72"];_0x43a2[0];var _=require(_0x43a2[1]);var md5=require(_0x43a2[2]);var moment=require(_0x43a2[3]);var csv=require(_0x43a2[4]);var util=require(_0x43a2[5]);var logger=require(_0x43a2[7])(_0x43a2[6]);var Util=require(_0x43a2[8]);var sequelize=require(_0x43a2[10])[_0x43a2[9]];var User=require(_0x43a2[10])[_0x43a2[11]];var Agent=require(_0x43a2[10])[_0x43a2[11]];var ChatRoom=require(_0x43a2[10])[_0x43a2[12]];var ChatMessage=require(_0x43a2[10])[_0x43a2[13]];var ChatWebsite=require(_0x43a2[10])[_0x43a2[14]];var ChatApplication=require(_0x43a2[10])[_0x43a2[15]];var ChatQueue=require(_0x43a2[10])[_0x43a2[16]];var ChatVisitor=require(_0x43a2[10])[_0x43a2[17]];var List=require(_0x43a2[10])[_0x43a2[18]];var UserHasChatRoom=require(_0x43a2[10])[_0x43a2[19]];exports[_0x43a2[20]]= function(_0x109ex13,_0x109ex14){return sequelize[_0x43a2[36]](util[_0x43a2[31]](_0x43a2[29],moment()[_0x43a2[33]](_0x43a2[32])[_0x43a2[31]](_0x43a2[30])),{type:sequelize[_0x43a2[35]][_0x43a2[34]]})[_0x43a2[28]](function(_0x109ex16){var _0x109ex17=_[_0x43a2[26]]({new:0,open:0,closed:0,abandon:0,unmanaged:0},_[_0x43a2[25]](_[_0x43a2[23]](_0x109ex16,_0x43a2[22]),_0x43a2[24]));return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex17)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[37]]= function(_0x109ex13,_0x109ex14,_0x109ex18){return ChatRoom[_0x43a2[45]](_[_0x43a2[26]](Util[_0x43a2[38]](_0x109ex13[_0x43a2[36]]),{include:[{model:User,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[41],_0x43a2[42],_0x43a2[43],_0x43a2[44]]},{model:ChatMessage},{model:ChatVisitor}]}))[_0x43a2[28]](function(_0x109ex19){_0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex19)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[46]]= function(_0x109ex13,_0x109ex14){return ChatRoom[_0x43a2[46]]()[_0x43a2[28]](function(_0x109ex1a){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex1a)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};function getChatQueues(_0x109ex1c){return function(){switch(_0x109ex1c[_0x43a2[43]]){case _0x43a2[50]:return User[_0x43a2[49]](_0x109ex1c[_0x43a2[39]],{attributes:[_0x43a2[39]]})[_0x43a2[28]](Util[_0x43a2[48]]({},{attributes:[_0x43a2[39]]}))[_0x43a2[28]](function(_0x109ex1d){return {include:{model:ChatWebsite,include:{model:ChatApplication,include:{model:ChatQueue,where:{id:_[_0x43a2[47]](_0x109ex1d,_0x43a2[39])}}}}}});default:return {}}}}exports[_0x43a2[51]]= function(_0x109ex13,_0x109ex14){return Promise[_0x43a2[53]]([])[_0x43a2[28]](getChatQueues(_0x109ex13[_0x43a2[50]]))[_0x43a2[28]](function(_0x109ex1f){return ChatRoom[_0x43a2[24]](_[_0x43a2[26]](Util[_0x43a2[38]](_0x109ex13[_0x43a2[36]],{status:_0x43a2[52],updatedAt:{$gte:moment()[_0x43a2[33]](_0x43a2[32])}}),_0x109ex1f))})[_0x43a2[28]](function(_0x109ex1e){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]]({value:_0x109ex1e})})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[54]]= function(_0x109ex13,_0x109ex14,_0x109ex18){var _0x109ex20={tags:_0x109ex13[_0x43a2[56]][_0x43a2[55]]};var _0x109ex21={where:{id:_0x109ex13[_0x43a2[59]][_0x43a2[39]][_0x43a2[58]](_0x43a2[57])}};return ChatRoom[_0x43a2[61]](_0x109ex20,_0x109ex21)[_0x43a2[28]](function(_0x109ex22){if(!_0x109ex22){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex22})[_0x43a2[28]](function(_0x109ex22){return _0x109ex14[_0x43a2[60]](200)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};function checkTags(_0x109ex24){if(_0x109ex24){if(_0x109ex24[_0x43a2[55]]){_0x109ex24[_0x43a2[62]]= [];if(_[_0x43a2[63]](_0x109ex24[_0x43a2[55]])){for(var _0x109ex25=0;_0x109ex25< _0x109ex24[_0x43a2[55]][_0x43a2[64]];_0x109ex25++){_0x109ex24[_0x43a2[62]][_0x43a2[67]]({tags:{$like:_0x43a2[65]+ _0x109ex24[_0x43a2[55]][_0x109ex25]+ _0x43a2[66]}})}}else {_0x109ex24[_0x43a2[62]][_0x43a2[67]]({tags:{$like:_0x43a2[65]+ _0x109ex24[_0x43a2[55]]+ _0x43a2[66]}})};delete _0x109ex24[_0x43a2[55]]}}}exports[_0x43a2[68]]= function(_0x109ex13,_0x109ex14,_0x109ex18){switch(_0x109ex13[_0x43a2[50]][_0x43a2[43]]){case _0x43a2[50]:return User[_0x43a2[49]](_0x109ex13[_0x43a2[50]][_0x43a2[39]],{attributes:[_0x43a2[39]],where:{id:{$ne:_0x109ex13[_0x43a2[50]][_0x43a2[39]]},online:true}})[_0x43a2[28]](Util[_0x43a2[69]](_[_0x43a2[26]](_0x109ex13[_0x43a2[36]],{id:{$ne:_0x109ex13[_0x43a2[50]][_0x43a2[39]]}})))[_0x43a2[28]](function(_0x109ex19){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex19)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)});default:return User[_0x43a2[70]](_0x43a2[53])[_0x43a2[45]](_[_0x43a2[26]](Util[_0x43a2[38]](_0x109ex13[_0x43a2[36]]),{where:{id:{$ne:_0x109ex13[_0x43a2[50]][_0x43a2[39]]},online:true}}))[_0x43a2[28]](function(_0x109ex19){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex19)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})}};exports[_0x43a2[71]]= function(_0x109ex13,_0x109ex14,_0x109ex18){checkTags(_0x109ex13[_0x43a2[36]]);var _0x109ex26={where:_[_0x43a2[26]]({type:_0x43a2[72]},_0x109ex13[_0x43a2[36]])};switch(_0x109ex13[_0x43a2[50]][_0x43a2[43]]){case _0x43a2[73]:_[_0x43a2[26]](_0x109ex26,{include:[{model:User,attributes:[_0x43a2[39]],where:{id:_0x109ex13[_0x43a2[50]][_0x43a2[39]]}}]});break;default:};return ChatRoom[_0x43a2[75]](_0x109ex26)[_0x43a2[28]](function(_0x109ex22){return ChatRoom[_0x43a2[75]]({where:{id:{$in:_[_0x43a2[47]](_0x109ex22,_0x43a2[39])}},include:[{model:User,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[41],_0x43a2[43],_0x43a2[74]]},{model:ChatVisitor}]})})[_0x43a2[28]](function(_0x109ex22){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]]({rows:_0x109ex22,count:_0x109ex22[_0x43a2[64]]})})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[76]]= function(_0x109ex13,_0x109ex14,_0x109ex18){checkTags(_0x109ex13[_0x43a2[36]]);var _0x109ex26={where:_[_0x43a2[26]]({type:_0x43a2[77]},_0x109ex13[_0x43a2[36]]),include:[{model:ChatVisitor,attributes:[_0x43a2[39],_0x43a2[41]]}]};switch(_0x109ex13[_0x43a2[50]][_0x43a2[43]]){case _0x43a2[73]:_0x109ex26[_0x43a2[78]][_0x43a2[67]]({model:User,attributes:[_0x43a2[39],_0x43a2[41]],where:{id:_0x109ex13[_0x43a2[50]][_0x43a2[39]]}});break;default:_0x109ex26[_0x43a2[78]][_0x43a2[67]]({model:User,attributes:[_0x43a2[39],_0x43a2[41]]})};return ChatRoom[_0x43a2[75]](_0x109ex26)[_0x43a2[28]](function(_0x109ex22){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]]({rows:_0x109ex22,count:_0x109ex22[_0x43a2[64]]})})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[79]]= function(_0x109ex13,_0x109ex14,_0x109ex18){return User[_0x43a2[70]](_0x43a2[53])[_0x43a2[49]](_0x109ex13[_0x43a2[59]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex19){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex19)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[80]]= function(_0x109ex13,_0x109ex14,_0x109ex18){return ChatRoom[_0x43a2[70]](_0x43a2[81])[_0x43a2[45]](_[_0x43a2[26]](Util[_0x43a2[38]](_0x109ex13[_0x43a2[36]]),{include:[{model:User,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[41],_0x43a2[42],_0x43a2[43],_0x43a2[44]]},{model:ChatMessage},{model:ChatVisitor}]}))[_0x43a2[28]](function(_0x109ex19){_0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex19)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[82]]= function(_0x109ex13,_0x109ex14){return User[_0x43a2[49]](_0x109ex13[_0x43a2[50]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex1c){return _0x109ex1c[_0x43a2[83]]({include:[{model:ChatVisitor,attributes:[_0x43a2[39],_0x43a2[41],_0x43a2[42]]},{model:User,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[41],_0x43a2[42],_0x43a2[43],_0x43a2[44]]}]})})[_0x43a2[28]](function(_0x109ex22){if(!_0x109ex22){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex14[_0x43a2[27]](_0x109ex22)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[84]]= function(_0x109ex13,_0x109ex14){return ChatRoom[_0x43a2[49]](_0x109ex13[_0x43a2[59]][_0x43a2[39]],{include:[{model:ChatMessage,include:[{model:ChatVisitor,attributes:[_0x43a2[39],_0x43a2[42],_0x43a2[41]]},{model:User,attributes:[_0x43a2[39],_0x43a2[42],_0x43a2[40],_0x43a2[41],_0x43a2[74],_0x43a2[43],_0x43a2[44]]}]},{model:User,attributes:[_0x43a2[39],_0x43a2[42],_0x43a2[40],_0x43a2[41],_0x43a2[74],_0x43a2[43],_0x43a2[44]]},{model:ChatVisitor},{model:ChatWebsite,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[85]],include:[List]}],order:[[ChatMessage,_0x43a2[39]]]})[_0x43a2[28]](function(_0x109ex27){if(!_0x109ex27){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex14[_0x43a2[27]](_0x109ex27)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[86]]= function(_0x109ex13,_0x109ex14,_0x109ex18){var _0x109ex28;return ChatRoom[_0x43a2[96]]({where:{token:md5(JSON[_0x43a2[94]](_0x109ex13[_0x43a2[36]][_0x43a2[89]][_0x43a2[93]]())).toString(_0x43a2[92])},defaults:{type:_0x43a2[44],token:md5(JSON[_0x43a2[94]](_0x109ex13[_0x43a2[36]][_0x43a2[89]][_0x43a2[93]]())).toString(_0x43a2[92]),status:_0x43a2[95]},include:[{model:ChatMessage,include:[{model:ChatVisitor,attributes:[_0x43a2[39],_0x43a2[42],_0x43a2[41]]},{model:User,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[41],_0x43a2[42],_0x43a2[43],_0x43a2[44]]}]},{model:User,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[41],_0x43a2[42],_0x43a2[43],_0x43a2[44]]}]})[_0x43a2[91]](function(_0x109ex27,_0x109ex2a){_0x109ex28= _0x109ex27;if(_0x109ex2a){return _0x109ex28[_0x43a2[90]](_0x109ex13[_0x43a2[36]][_0x43a2[89]])}})[_0x43a2[28]](function(){return _0x109ex28[_0x43a2[88]]()})[_0x43a2[28]](function(_0x109ex29){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_[_0x43a2[26]](_0x109ex28[_0x43a2[87]],{Users:_0x109ex29}))})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[97]]= function(_0x109ex13,_0x109ex14,_0x109ex18){var _0x109ex28;return ChatRoom[_0x43a2[49]](_0x109ex13[_0x43a2[59]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex27){_0x109ex28= _0x109ex27;if(!_0x109ex28){return _0x109ex14[_0x43a2[60]](404)}})[_0x43a2[28]](function(){return ChatMessage[_0x43a2[99]](_[_0x43a2[26]](_0x109ex13[_0x43a2[56]],{type:_0x109ex28[_0x43a2[98]],ChatRoomId:_0x109ex13[_0x43a2[59]][_0x43a2[39]],UserId:_0x109ex13[_0x43a2[50]][_0x43a2[39]]}))})[_0x43a2[28]](function(_0x109ex2b){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex2b)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[100]]= function(_0x109ex13,_0x109ex14,_0x109ex18){return ChatMessage[_0x43a2[75]]({where:{ChatRoomId:_0x109ex13[_0x43a2[59]][_0x43a2[39]]},attributes:[_0x43a2[39],_0x43a2[56],_0x43a2[105]],order:[[_0x43a2[105],_0x43a2[107]]],include:[{model:Agent,attributes:[_0x43a2[39],_0x43a2[41]]},{model:ChatVisitor,attributes:[_0x43a2[39],_0x43a2[41]]}]})[_0x43a2[28]](function(_0x109ex2c){var _0x109ex2d=[];if(_0x109ex2c&& _0x109ex2c[_0x43a2[64]]> 0){for(var _0x109ex25=0;_0x109ex25< _0x109ex2c[_0x43a2[64]];_0x109ex25++){var _0x109ex2b=_0x109ex2c[_0x109ex25][_0x43a2[101]]({plain:true});var _0x109ex2e={name:_0x109ex2b[_0x43a2[11]]?_0x109ex2b[_0x43a2[11]][_0x43a2[41]]:_0x109ex2b[_0x43a2[17]][_0x43a2[41]],text:_0x109ex2b[_0x43a2[56]][_0x43a2[103]](/(\r\n|\n|\r)/gm,_0x43a2[102]),date:moment(_0x109ex2b[_0x43a2[105]])[_0x43a2[31]](_0x43a2[104])};_0x109ex2d[_0x43a2[67]](_0x109ex2e)}}else {_0x109ex2d[_0x43a2[67]]({name:_0x43a2[106],text:_0x43a2[106],date:_0x43a2[106]})};var _0x109ex2f=csv(_0x109ex2d);return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]]({downloadString: new Buffer(_0x109ex2f).toString(_0x43a2[92])})})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[108]]= function(_0x109ex13,_0x109ex14){return User[_0x43a2[49]](_0x109ex13[_0x43a2[50]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex1c){return _0x109ex1c[_0x43a2[83]]({where:{type:_0x109ex13[_0x43a2[59]][_0x43a2[98]]},include:[{model:ChatVisitor,attributes:[_0x43a2[39],_0x43a2[41],_0x43a2[42]]}]})})[_0x43a2[28]](function(_0x109ex22){if(!_0x109ex22){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex14[_0x43a2[27]](_0x109ex22)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[109]]= function(_0x109ex13,_0x109ex14){return User[_0x43a2[49]](_0x109ex13[_0x43a2[50]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex1c){return _0x109ex1c[_0x43a2[83]]({include:[{model:ChatVisitor,attributes:[_0x43a2[39],_0x43a2[41],_0x43a2[42]]},{model:User,attributes:[_0x43a2[39],_0x43a2[40],_0x43a2[41],_0x43a2[42],_0x43a2[43],_0x43a2[44]]}]})})[_0x43a2[28]](function(_0x109ex22){if(!_0x109ex22){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex14[_0x43a2[27]](_0x109ex22)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[99]]= function(_0x109ex13,_0x109ex14){};exports[_0x43a2[61]]= function(_0x109ex13,_0x109ex14){if(_0x109ex13[_0x43a2[56]][_0x43a2[39]]){delete _0x109ex13[_0x43a2[56]][_0x43a2[39]]};return ChatRoom[_0x43a2[49]](_0x109ex13[_0x43a2[59]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex27){if(!_0x109ex27){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex27[_0x43a2[61]](_0x109ex13[_0x43a2[56]])})[_0x43a2[28]](function(_0x109ex27){return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex27)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[110]]= function(_0x109ex13,_0x109ex14){var _0x109ex28;if(_0x109ex13[_0x43a2[56]][_0x43a2[39]]){delete _0x109ex13[_0x43a2[56]][_0x43a2[39]]};return ChatRoom[_0x43a2[49]](_0x109ex13[_0x43a2[59]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex27){if(!_0x109ex27||  !_0x109ex13[_0x43a2[56]][_0x43a2[89]]){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex27})[_0x43a2[28]](function(_0x109ex27){return _0x109ex27[_0x43a2[61]]({type:_0x43a2[72],token:md5(JSON[_0x43a2[94]](_0x109ex13[_0x43a2[56]][_0x43a2[89]][_0x43a2[93]]())).toString(_0x43a2[92])})})[_0x43a2[28]](function(_0x109ex27){_0x109ex28= _0x109ex27;return _0x109ex27[_0x43a2[90]](_0x109ex13[_0x43a2[56]][_0x43a2[89]][_0x43a2[93]](),{individualHooks:true})})[_0x43a2[28]](function(){return _0x109ex28[_0x43a2[88]]()})[_0x43a2[28]](function(_0x109ex29){_[_0x43a2[26]](_0x109ex28[_0x43a2[87]],{Users:_0x109ex29});return _0x109ex14[_0x43a2[22]](200)[_0x43a2[27]](_0x109ex28)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};exports[_0x43a2[111]]= function(_0x109ex13,_0x109ex14){return ChatRoom[_0x43a2[49]](_0x109ex13[_0x43a2[59]][_0x43a2[39]])[_0x43a2[28]](function(_0x109ex27){if(!_0x109ex27){return _0x109ex14[_0x43a2[60]](404)};return _0x109ex27[_0x43a2[111]]()})[_0x43a2[28]](function(){return _0x109ex14[_0x43a2[60]](204)})[_0x43a2[21]](function(_0x109ex15){return handleError(_0x109ex14,_0x109ex15)})};function handleError(_0x109ex14,_0x109ex15){logger[_0x43a2[113]](_0x109ex15[_0x43a2[112]]);return _0x109ex14[_0x43a2[22]](500)[_0x43a2[27]](_0x109ex15)}