Fixed smallish bugs

This commit is contained in:
hydrabolt
2015-11-06 21:36:58 +00:00
parent cb5452f072
commit 4118252ace
6 changed files with 60 additions and 55 deletions

View File

@@ -52,25 +52,24 @@ class InternalClient {
var channel = self.resolver.resolveVoiceChannel(chann);
if(channel){
if(self.voiceConnections[channel]){
if(!self.voiceConnections[channel]){
self.voiceConnections[channel] = {};
var session, token, serverID, endpoint, fired = 0;
var session, token, server = channel.server, endpoint, fired = 0;
var check = (m) => {
var data = JSON.parse(m);
if(data.t === "VOICE_STATE_UPDATE"){
session = data.d.session_id;
fired++;
}else if(data.t === "VOICE_SERVER_UPDATE"){
token = data.d.token;
serverID = data.d.guild_id;
endpoint = data.d.endpoint;
fired++;
self.voiceConnections[channel] = new VoiceConnection(channel, self.client, session, token, server, endpoint);
}
if(fired >= 2){
self.websocket.removeListener('message', check);
}
@@ -81,7 +80,7 @@ class InternalClient {
self.sendWS({
op : 4,
d : {
"guild_id" : serverID,
"guild_id" : server.id,
"channel_id" : channel.id,
"self_mute" : false,
"self_deaf" : false

View File

@@ -1,8 +1,17 @@
"use strict";
var WebSocket = require("ws");
var dgram = require("dgram");
class VoiceConnection{
constructor(){
constructor(channel, client, session, token, server, endpoint){
this.voiceChannel = channel;
this.client = client;
this.session = session;
this.token = token;
this.server = server;
this.endpoint = endpoint;
console.log("I was instantiated!");
}
}

View File

@@ -2,31 +2,25 @@ module.exports = {
Client : require("./Client/Client.js")
}
var VoiceChannel = require("./Structures/VoiceChannel.js");
var a = new module.exports.Client();
a.on("debug", (m) => console.log("[debug]",m));
a.on("warn", (m) => console.log("[warn]", m));
var start = Date.now();
a.on("message", m => {
if(m.content === "$$$"){
a.internal.setTopic(m.channel, "a channel topic!");
}
});
a.on("userTypingStart", (user, chan) => {
console.log(user.username + " typing");
});
a.on("userTypingStop", (user, chan) => {
console.log(user.username + " stopped typing");
});
a.on("ready", () => {
for(var server of a.internal.servers){
if(server.name === "craptown"){
a.leaveServer(server);
for(var channel of m.channel.server.channels){
if(channel instanceof VoiceChannel){
a.internal.joinVoiceChannel(channel).catch(error);
break;
}
}
}
});
function error(e){
throw e;
console.log(e);
process.exit(0);
}