diff --git a/lib/index.js b/lib/index.js
index <HASH>..<HASH> 100644
--- a/lib/index.js
+++ b/lib/index.js
@@ -1116,10 +1116,13 @@
 	DCP.getAllUsers = function(callback) {
 		var client = this, servers = Object.keys(this.servers).filter(function(s) {
 				s = client.servers[s];
-				return s.member_count !== Object.keys(s.members).length && (client.bot ? s.large : true);
+				if (s.members) return s.member_count !== Object.keys(s.members).length && (client.bot ? s.large : true);
 			});
 
-		if (!servers[0]) return handleErrCB("There are no users to be collected", callback);
+		if (!servers[0]) {
+			this.emit('allUsers');
+			return handleErrCB("There are no users to be collected", callback);
+		}
 		if (!this.bot) send(this._ws, { op: 12, d: Object.keys(this.servers) } );
 
 		return getOfflineUsers(client, servers, callback);
Fix getAllUsers for unavailable servers, emit if received all users