code: function joinVoiceChannel(client, voiceSession) {
  	var vWS, vUDP, endpoint = voiceSession.endpoint.split(":")[0];
  	//handleVoiceChannelChange(client, voiceSession);
  
  	voiceSession.ws = {};
  	voiceSession.udp = {};
  	voiceSession.members = {};
  	voiceSession.error = null;
  	voiceSession.ready = false;
  	voiceSession.joined = false;
  	voiceSession.translator = {};
  	voiceSession.wsKeepAlive = null;
  	voiceSession.udpKeepAlive = null;
  	voiceSession.keepAlivePackets = 0;
  	voiceSession.emitter = new Emitter();
  	if (isNode) voiceSession.keepAliveBuffer = new Buffer(8).fill(0);
  	vWS = voiceSession.ws.connection = new Websocket("wss://" + endpoint);
  
  	if (isNode) return DNS.lookup(endpoint, function(err, address) {
  		if (err) return void(voiceSession.error = err);
  
  		voiceSession.address = address;
  		vUDP = voiceSession.udp.connection = UDP.createSocket("udp4");
  
  		vUDP.bind({exclusive: true});
  		vUDP.once('message', handleUDPMessage.bind(client, voiceSession));
  
  		vWS.once('open',  handlevWSOpen.bind(client, voiceSession));
  		vWS.on('message', handlevWSMessage.bind(client, voiceSession));
  		vWS.once('close', handlevWSClose.bind(client, voiceSession));
  	});
  
  	vWS.once('open',  handlevWSOpen.bind(client, voiceSession));
  	vWS.on('message', handlevWSMessage.bind(client, voiceSession));
  	vWS.once('close', handlevWSClose.bind(client, voiceSession));
  	return void(voiceSession.joined = true);
  }
docs: /* - Functions - Voice -