Added support for new game objects (#332)

bot.setStreaming(name, url, type, callback); added
logic for Internal setStatus updated to check if string or object
This commit is contained in:
Brussell
2016-05-08 11:47:22 -05:00
committed by abalabahaha
parent 42fd07c5e7
commit 0c38d47ef6
5 changed files with 24 additions and 7 deletions

View File

@@ -440,7 +440,7 @@ setStatus(status, `game`, `callback`)
Sets the Discord Status of the Client
- **status** - `String`, either ``online, here, active, available`` or ``idle, away``
- **game** - `String`, Name of game being played, or `null` to clear
- **game** - `String`, Name of game being played, or `Object` with the properties `name` `url` `type`, or `null` to clear
- **callback** - `function` taking the following:
- **error** - error if any occurred
@@ -467,6 +467,17 @@ Sets the Discord Status of the Client
- **callback** - `function` taking the following:
- **error** - error if any occurred
setStreaming(name, url, type `callback`)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sets the Discord Status of the Client
- **name** - `String`, Name of game being played
- **url** - `String`, URL that it will link to
- **type** - `Number`, `1` indicates streaming
- **callback** - `function` taking the following:
- **error** - error if any occurred
setChannelTopic(channel, topic, `callback`)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@@ -1112,6 +1112,12 @@ var Client = (function (_EventEmitter) {
return this.setStatus(null, game, callback);
};
Client.prototype.setStreaming = function setStreaming(name, url, type) {
var callback = arguments.length <= 3 || arguments[3] === undefined ? function () /*err, {}*/{} : arguments[3];
return this.setStatus(null, { name: name, url: url, type: type }, callback);
};
//def forceFetchUsers
Client.prototype.forceFetchUsers = function forceFetchUsers(callback) {

View File

@@ -1385,9 +1385,7 @@ var InternalClient = (function () {
this.idleStatus = this.idleStatus || null; //undefined
}
this.game = game === null ? null : !game ? this.game || null : {
name: game
};
this.game = game === null ? null : !game ? this.game || null : typeof game === "string" ? { name: game } : game;
var packet = {
op: 3,

View File

@@ -1094,6 +1094,10 @@ export default class Client extends EventEmitter {
return this.setStatus(null, game, callback);
}
setStreaming(name, url, type, callback = (/*err, {}*/) => { }) {
return this.setStatus(null, {name: name, url: url, type: type}, callback);
}
//def forceFetchUsers
forceFetchUsers(callback){
return this.internal.forceFetchUsers().then(callback);

View File

@@ -1166,9 +1166,7 @@ export default class InternalClient {
this.idleStatus = this.idleStatus || null; //undefined
}
this.game = game === null ? null : !game ? this.game || null : {
name: game
};
this.game = game === null ? null : !game ? this.game || null : typeof game === "string" ? {name: game} : game;
var packet = {
op: 3,