added channel deletion monitoring and uptime

This commit is contained in:
hydrabolt
2015-08-24 22:13:33 +01:00
parent b3c030a8f5
commit 278ceeee9c
3 changed files with 61 additions and 5 deletions

View File

@@ -50,6 +50,7 @@ var Client = (function () {
this.userCache = [];
this.channelCache = [];
this.serverCache = [];
this.readyTime = null;
}
_createClass(Client, [{
@@ -230,6 +231,7 @@ var Client = (function () {
}
self.trigger("ready");
self.readyTime = Date.now();
self.debug("cached " + self.serverCache.length + " servers, " + self.channelCache.length + " channels and " + self.userCache.length + " users.");
setInterval(function () {
@@ -353,6 +355,26 @@ var Client = (function () {
break;
case "CHANNEL_DELETE":
var channel = self.getChannel("id", data.id);
if (channel) {
var server = channel.server;
if (server) {
server.channels.splice(server.channels.indexOf(channel), 1);
}
self.trigger("channelDelete", channel);
self.serverCache.splice(self.serverCache.indexOf(channel), 1);
}
break;
default:
self.debug("received unknown packet");
self.trigger("unknown", dat);
@@ -463,9 +485,7 @@ var Client = (function () {
//def getServer
}, {
key: "getServer",
value: function getServer() {
var key = arguments.length <= 0 || arguments[0] === undefined ? "id" : arguments[0];
var value = arguments.length <= 1 || arguments[1] === undefined ? "abc123" : arguments[1];
value: function getServer(key, value) {
var _iteratorNormalCompletion7 = true;
var _didIteratorError7 = false;
var _iteratorError7 = undefined;
@@ -522,6 +542,12 @@ var Client = (function () {
this.websocket.send(JSON.stringify(data));
}
}
}, {
key: "uptime",
get: function get() {
return this.readyTime ? Date.now() - this.readyTime : null;
}
}, {
key: "ready",
get: function get() {

View File

@@ -40,6 +40,13 @@ class Client {
this.userCache = [];
this.channelCache = [];
this.serverCache = [];
this.readyTime = null;
}
get uptime(){
return (this.readyTime ? Date.now() - this.readyTime : null);
}
get ready() {
@@ -194,6 +201,7 @@ class Client {
}
self.trigger("ready");
self.readyTime = Date.now();
self.debug(`cached ${self.serverCache.length} servers, ${self.channelCache.length} channels and ${self.userCache.length} users.`);
setInterval(function () {
@@ -276,6 +284,28 @@ class Client {
break;
case "CHANNEL_DELETE":
var channel = self.getChannel("id", data.id);
if(channel){
var server = channel.server;
if(server){
server.channels.splice( server.channels.indexOf(channel), 1 );
}
self.trigger("channelDelete", channel);
self.serverCache.splice( self.serverCache.indexOf(channel), 1 );
}
break;
default:
self.debug("received unknown packet");
self.trigger("unknown", dat);
@@ -332,7 +362,7 @@ class Client {
}
//def getServer
getServer(key = "id", value = "abc123") {
getServer(key, value) {
for (var server of this.serverCache) {
if (server[key] === value) {
return server;

View File

@@ -11,7 +11,7 @@ mybot.on("ready", function(){
})
mybot.on("message", function(msg){
console.log("Another message by "+msg.author.username+"... now I have "+mybot.messages.length);
console.log("Another message by "+msg.author.username+"... now I have "+mybot.messages.length + " I have been online for " + mybot.uptime);
})
mybot.on("messageDelete", function(channel, message){