mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-09 16:13:31 +01:00
Fixed invites
This commit is contained in:
202
lib/Client.js
202
lib/Client.js
@@ -10,6 +10,7 @@ var User = require("./User.js");
|
||||
var Server = require("./Server.js");
|
||||
var Channel = require("./Channel.js");
|
||||
var Message = require("./Message.js");
|
||||
var Invite = require("./Invite.js");
|
||||
|
||||
//node modules
|
||||
var request = require("superagent");
|
||||
@@ -235,6 +236,43 @@ var Client = (function () {
|
||||
});
|
||||
});
|
||||
}
|
||||
}, {
|
||||
key: "createInvite",
|
||||
value: function createInvite(serverOrChannel, options) {
|
||||
var callback = arguments.length <= 2 || arguments[2] === undefined ? function (err, invite) {} : arguments[2];
|
||||
|
||||
var self = this;
|
||||
|
||||
return new Promise(function (resolve, reject) {
|
||||
|
||||
var destination;
|
||||
|
||||
if (serverOrChannel instanceof Server) {
|
||||
destination = serverOrChannel.id;
|
||||
} else if (serverOrChannel instanceof Channel) {
|
||||
destination = serverOrChannel.id;
|
||||
} else {
|
||||
destination = serverOrChannel;
|
||||
}
|
||||
|
||||
options = options || {};
|
||||
options.max_age = options.maxAge || 0;
|
||||
options.max_uses = options.maxUses || 0;
|
||||
options.temporary = options.temporary || false;
|
||||
options.xkcdpass = options.xkcd || false;
|
||||
|
||||
request.post(Endpoints.CHANNELS + "/" + destination + "/invites").set("authorization", self.token).send(options).end(function (err, res) {
|
||||
if (err) {
|
||||
callback(err);
|
||||
reject(err);
|
||||
} else {
|
||||
var inv = new Invite(res.body, self);
|
||||
callback(null, inv);
|
||||
resolve(inv);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
//def createws
|
||||
}, {
|
||||
@@ -457,8 +495,36 @@ var Client = (function () {
|
||||
|
||||
if (!server) {
|
||||
//if server doesn't already exist because duh
|
||||
|
||||
var serv = self.addServer(data);
|
||||
} else if (server.channels.length === 0) {
|
||||
|
||||
var srv = new Server(data, self);
|
||||
var _iteratorNormalCompletion4 = true;
|
||||
var _didIteratorError4 = false;
|
||||
var _iteratorError4 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator4 = data.channels[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
||||
channel = _step4.value;
|
||||
|
||||
srv.channels.push(new Channel(channel, data.id));
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError4 = true;
|
||||
_iteratorError4 = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion4 && _iterator4["return"]) {
|
||||
_iterator4["return"]();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError4) {
|
||||
throw _iteratorError4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
self.serverCache[self.serverCache.indexOf(server)] = srv;
|
||||
}
|
||||
|
||||
self.trigger("serverCreate", server);
|
||||
@@ -595,27 +661,27 @@ var Client = (function () {
|
||||
if (!server) {
|
||||
server = new Server(data, this);
|
||||
if (data.channels) {
|
||||
var _iteratorNormalCompletion4 = true;
|
||||
var _didIteratorError4 = false;
|
||||
var _iteratorError4 = undefined;
|
||||
var _iteratorNormalCompletion5 = true;
|
||||
var _didIteratorError5 = false;
|
||||
var _iteratorError5 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator4 = data.channels[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
||||
var channel = _step4.value;
|
||||
for (var _iterator5 = data.channels[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
||||
var channel = _step5.value;
|
||||
|
||||
server.channels.push(this.addChannel(channel, server.id));
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError4 = true;
|
||||
_iteratorError4 = err;
|
||||
_didIteratorError5 = true;
|
||||
_iteratorError5 = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion4 && _iterator4["return"]) {
|
||||
_iterator4["return"]();
|
||||
if (!_iteratorNormalCompletion5 && _iterator5["return"]) {
|
||||
_iterator5["return"]();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError4) {
|
||||
throw _iteratorError4;
|
||||
if (_didIteratorError5) {
|
||||
throw _iteratorError5;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -630,50 +696,16 @@ var Client = (function () {
|
||||
}, {
|
||||
key: "getUser",
|
||||
value: function getUser(key, value) {
|
||||
var _iteratorNormalCompletion5 = true;
|
||||
var _didIteratorError5 = false;
|
||||
var _iteratorError5 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator5 = this.userCache[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
||||
var user = _step5.value;
|
||||
|
||||
if (user[key] === value) {
|
||||
return user;
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError5 = true;
|
||||
_iteratorError5 = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion5 && _iterator5["return"]) {
|
||||
_iterator5["return"]();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError5) {
|
||||
throw _iteratorError5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
//def getChannel
|
||||
}, {
|
||||
key: "getChannel",
|
||||
value: function getChannel(key, value) {
|
||||
var _iteratorNormalCompletion6 = true;
|
||||
var _didIteratorError6 = false;
|
||||
var _iteratorError6 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator6 = this.channelCache[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
||||
var channel = _step6.value;
|
||||
for (var _iterator6 = this.userCache[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
||||
var user = _step6.value;
|
||||
|
||||
if (channel[key] === value) {
|
||||
return channel;
|
||||
if (user[key] === value) {
|
||||
return user;
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
@@ -694,20 +726,20 @@ var Client = (function () {
|
||||
return null;
|
||||
}
|
||||
|
||||
//def getServer
|
||||
//def getChannel
|
||||
}, {
|
||||
key: "getServer",
|
||||
value: function getServer(key, value) {
|
||||
key: "getChannel",
|
||||
value: function getChannel(key, value) {
|
||||
var _iteratorNormalCompletion7 = true;
|
||||
var _didIteratorError7 = false;
|
||||
var _iteratorError7 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator7 = this.serverCache[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
|
||||
var server = _step7.value;
|
||||
for (var _iterator7 = this.channelCache[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
|
||||
var channel = _step7.value;
|
||||
|
||||
if (server[key] === value) {
|
||||
return server;
|
||||
if (channel[key] === value) {
|
||||
return channel;
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
@@ -728,6 +760,40 @@ var Client = (function () {
|
||||
return null;
|
||||
}
|
||||
|
||||
//def getServer
|
||||
}, {
|
||||
key: "getServer",
|
||||
value: function getServer(key, value) {
|
||||
var _iteratorNormalCompletion8 = true;
|
||||
var _didIteratorError8 = false;
|
||||
var _iteratorError8 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator8 = this.serverCache[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {
|
||||
var server = _step8.value;
|
||||
|
||||
if (server[key] === value) {
|
||||
return server;
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError8 = true;
|
||||
_iteratorError8 = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion8 && _iterator8["return"]) {
|
||||
_iterator8["return"]();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError8) {
|
||||
throw _iteratorError8;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
//def trySendConnData
|
||||
}, {
|
||||
key: "trySendConnData",
|
||||
@@ -795,27 +861,27 @@ var Client = (function () {
|
||||
get: function get() {
|
||||
|
||||
var msgs = [];
|
||||
var _iteratorNormalCompletion8 = true;
|
||||
var _didIteratorError8 = false;
|
||||
var _iteratorError8 = undefined;
|
||||
var _iteratorNormalCompletion9 = true;
|
||||
var _didIteratorError9 = false;
|
||||
var _iteratorError9 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator8 = this.channelCache[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {
|
||||
var channel = _step8.value;
|
||||
for (var _iterator9 = this.channelCache[Symbol.iterator](), _step9; !(_iteratorNormalCompletion9 = (_step9 = _iterator9.next()).done); _iteratorNormalCompletion9 = true) {
|
||||
var channel = _step9.value;
|
||||
|
||||
msgs = msgs.concat(channel.messages);
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError8 = true;
|
||||
_iteratorError8 = err;
|
||||
_didIteratorError9 = true;
|
||||
_iteratorError9 = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion8 && _iterator8["return"]) {
|
||||
_iterator8["return"]();
|
||||
if (!_iteratorNormalCompletion9 && _iterator9["return"]) {
|
||||
_iterator9["return"]();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError8) {
|
||||
throw _iteratorError8;
|
||||
if (_didIteratorError9) {
|
||||
throw _iteratorError9;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
114
lib/channel.js
114
lib/channel.js
@@ -5,70 +5,70 @@ var _createClass = (function () { function defineProperties(target, props) { for
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var Channel = (function () {
|
||||
function Channel(data, server) {
|
||||
_classCallCheck(this, Channel);
|
||||
function Channel(data, server) {
|
||||
_classCallCheck(this, Channel);
|
||||
|
||||
this.server = server;
|
||||
this.name = data.name;
|
||||
this.type = data.type;
|
||||
this.id = data.id;
|
||||
this.messages = [];
|
||||
//this.isPrivate = isPrivate; //not sure about the implementation of this...
|
||||
}
|
||||
|
||||
_createClass(Channel, [{
|
||||
key: "equals",
|
||||
value: function equals(object) {
|
||||
return object.id === this.id;
|
||||
this.server = server;
|
||||
this.name = data.name;
|
||||
this.type = data.type;
|
||||
this.id = data.id;
|
||||
this.messages = [];
|
||||
//this.isPrivate = isPrivate; //not sure about the implementation of this...
|
||||
}
|
||||
}, {
|
||||
key: "addMessage",
|
||||
value: function addMessage(data) {
|
||||
if (!this.getMessage("id", data.id)) {
|
||||
this.messages.push(data);
|
||||
}
|
||||
return this.getMessage("id", data.id);
|
||||
}
|
||||
}, {
|
||||
key: "getMessage",
|
||||
value: function getMessage(key, value) {
|
||||
var _iteratorNormalCompletion = true;
|
||||
var _didIteratorError = false;
|
||||
var _iteratorError = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator = this.messages[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
||||
var message = _step.value;
|
||||
|
||||
if (message[key] === value) {
|
||||
return message;
|
||||
}
|
||||
_createClass(Channel, [{
|
||||
key: "equals",
|
||||
value: function equals(object) {
|
||||
return object.id === this.id;
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError = true;
|
||||
_iteratorError = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion && _iterator["return"]) {
|
||||
_iterator["return"]();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError) {
|
||||
throw _iteratorError;
|
||||
}
|
||||
}, {
|
||||
key: "addMessage",
|
||||
value: function addMessage(data) {
|
||||
if (!this.getMessage("id", data.id)) {
|
||||
this.messages.push(data);
|
||||
}
|
||||
return this.getMessage("id", data.id);
|
||||
}
|
||||
}
|
||||
}, {
|
||||
key: "getMessage",
|
||||
value: function getMessage(key, value) {
|
||||
var _iteratorNormalCompletion = true;
|
||||
var _didIteratorError = false;
|
||||
var _iteratorError = undefined;
|
||||
|
||||
return null;
|
||||
}
|
||||
}, {
|
||||
key: "client",
|
||||
get: function get() {
|
||||
return this.server.client;
|
||||
}
|
||||
}]);
|
||||
try {
|
||||
for (var _iterator = this.messages[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
||||
var message = _step.value;
|
||||
|
||||
return Channel;
|
||||
if (message[key] === value) {
|
||||
return message;
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError = true;
|
||||
_iteratorError = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion && _iterator["return"]) {
|
||||
_iterator["return"]();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError) {
|
||||
throw _iteratorError;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}, {
|
||||
key: "client",
|
||||
get: function get() {
|
||||
return this.server.client;
|
||||
}
|
||||
}]);
|
||||
|
||||
return Channel;
|
||||
})();
|
||||
|
||||
module.exports = Channel;
|
||||
@@ -1,23 +1,37 @@
|
||||
"use strict";
|
||||
|
||||
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var User = require("./user.js").User;
|
||||
|
||||
exports.Invite = function (json) {
|
||||
var Invite = (function () {
|
||||
function Invite(data, client) {
|
||||
_classCallCheck(this, Invite);
|
||||
|
||||
this.max_age = json.max_age;
|
||||
this.code = json.code;
|
||||
this.server = json.guild;
|
||||
this.revoked = json.revoked;
|
||||
this.created_at = Date.parse(json.created_at);
|
||||
this.temporary = json.temporary;
|
||||
this.uses = json.uses;
|
||||
this.max_uses = json.uses;
|
||||
this.inviter = new User(json.inviter);
|
||||
this.xkcdpass = json.xkcdpass;
|
||||
this.channel = json.channel;
|
||||
};
|
||||
this.max_age = data.max_age;
|
||||
this.code = data.code;
|
||||
this.server = client.getServer("id", data.guild.id);
|
||||
this.revoked = data.revoked;
|
||||
this.created_at = Date.parse(data.created_at);
|
||||
this.temporary = data.temporary;
|
||||
this.uses = data.uses;
|
||||
this.max_uses = data.uses;
|
||||
this.inviter = client.addUser(data.inviter);
|
||||
this.xkcd = data.xkcdpass;
|
||||
this.channel = client.getChannel("id", data.channel.id);
|
||||
}
|
||||
|
||||
exports.Invite.prototype.generateInviteURL = function (xkcd) {
|
||||
var code = xkcd ? this.xkcdpass : this.code;
|
||||
return "https://discord.gg/" + code;
|
||||
};
|
||||
_createClass(Invite, [{
|
||||
key: "inviteURL",
|
||||
get: function get() {
|
||||
var code = this.xkcd ? this.xkcdpass : this.code;
|
||||
return "https://discord.gg/" + code;
|
||||
}
|
||||
}]);
|
||||
|
||||
return Invite;
|
||||
})();
|
||||
|
||||
module.exports = Invite;
|
||||
@@ -37,7 +37,7 @@ var Server = (function () {
|
||||
// get a user from this server's member list,
|
||||
// it will be identical (unless an async change occurred)
|
||||
// to the client's cache.
|
||||
this.members.push(client.addUser(member.user));
|
||||
if (member.user) this.members.push(client.addUser(member.user));
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError = true;
|
||||
|
||||
@@ -4,6 +4,7 @@ var User = require("./User.js");
|
||||
var Server = require("./Server.js");
|
||||
var Channel = require("./Channel.js");
|
||||
var Message = require("./Message.js");
|
||||
var Invite = require("./Invite.js");
|
||||
|
||||
//node modules
|
||||
var request = require("superagent");
|
||||
@@ -262,6 +263,46 @@ class Client {
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
createInvite(serverOrChannel, options, callback = function (err, invite) { }) {
|
||||
|
||||
var self = this;
|
||||
|
||||
return new Promise(function (resolve, reject) {
|
||||
|
||||
var destination;
|
||||
|
||||
if (serverOrChannel instanceof Server) {
|
||||
destination = serverOrChannel.id;
|
||||
} else if (serverOrChannel instanceof Channel) {
|
||||
destination = serverOrChannel.id;
|
||||
} else {
|
||||
destination = serverOrChannel;
|
||||
}
|
||||
|
||||
options = options || {};
|
||||
options.max_age = options.maxAge || 0;
|
||||
options.max_uses = options.maxUses || 0;
|
||||
options.temporary = options.temporary || false;
|
||||
options.xkcdpass = options.xkcd || false;
|
||||
|
||||
request
|
||||
.post(`${Endpoints.CHANNELS}/${destination}/invites`)
|
||||
.set("authorization", self.token)
|
||||
.send(options)
|
||||
.end(function (err, res) {
|
||||
if(err){
|
||||
callback(err);
|
||||
reject(err);
|
||||
}else{
|
||||
var inv = new Invite(res.body, self);
|
||||
callback(null, inv);
|
||||
resolve(inv);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
//def createws
|
||||
createws() {
|
||||
@@ -423,9 +464,15 @@ class Client {
|
||||
|
||||
if (!server) {
|
||||
//if server doesn't already exist because duh
|
||||
|
||||
var serv = self.addServer(data);
|
||||
|
||||
}else if(server.channels.length === 0){
|
||||
|
||||
var srv = new Server(data, self);
|
||||
for(channel of data.channels){
|
||||
srv.channels.push(new Channel(channel, data.id));
|
||||
}
|
||||
self.serverCache[self.serverCache.indexOf(server)] = srv;
|
||||
|
||||
}
|
||||
|
||||
self.trigger("serverCreate", server);
|
||||
|
||||
@@ -1,21 +1,24 @@
|
||||
var User = require("./user.js").User;
|
||||
|
||||
exports.Invite = function(json){
|
||||
class Invite {
|
||||
constructor(data, client) {
|
||||
this.max_age = data.max_age;
|
||||
this.code = data.code;
|
||||
this.server = client.getServer("id", data.guild.id);
|
||||
this.revoked = data.revoked;
|
||||
this.created_at = Date.parse(data.created_at);
|
||||
this.temporary = data.temporary;
|
||||
this.uses = data.uses;
|
||||
this.max_uses = data.uses;
|
||||
this.inviter = client.addUser(data.inviter);
|
||||
this.xkcd = data.xkcdpass;
|
||||
this.channel = client.getChannel("id", data.channel.id);
|
||||
}
|
||||
|
||||
this.max_age = json.max_age;
|
||||
this.code = json.code;
|
||||
this.server = json.guild;
|
||||
this.revoked = json.revoked;
|
||||
this.created_at = Date.parse(json.created_at);
|
||||
this.temporary = json.temporary;
|
||||
this.uses = json.uses;
|
||||
this.max_uses = json.uses;
|
||||
this.inviter = new User(json.inviter);
|
||||
this.xkcdpass = json.xkcdpass;
|
||||
this.channel = json.channel;
|
||||
get inviteURL() {
|
||||
var code = (this.xkcd ? this.xkcdpass : this.code);
|
||||
return "https://discord.gg/" + code;
|
||||
}
|
||||
}
|
||||
|
||||
exports.Invite.prototype.generateInviteURL = function(xkcd){
|
||||
var code = (xkcd ? this.xkcdpass : this.code);
|
||||
return "https://discord.gg/"+code;
|
||||
}
|
||||
module.exports = Invite;
|
||||
@@ -17,13 +17,14 @@ class Server {
|
||||
}
|
||||
|
||||
for (var member of data.members) {
|
||||
|
||||
|
||||
// first we cache the user in our Discord Client,
|
||||
// then we add it to our list. This way when we
|
||||
// get a user from this server's member list,
|
||||
// it will be identical (unless an async change occurred)
|
||||
// to the client's cache.
|
||||
this.members.push(client.addUser(member.user));
|
||||
if(member.user)
|
||||
this.members.push(client.addUser(member.user));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,15 +12,6 @@ mybot.login(Auth.email, Auth.password)
|
||||
|
||||
mybot.on("ready", function () {
|
||||
console.log("Ready!");
|
||||
|
||||
mybot.createServer("myServer", "london").then(function(server){
|
||||
console.log("New server! Based in "+server.region+" and is called "+server.name);
|
||||
|
||||
mybot.createChannel(server, "wooof", "text", function(err, chann){
|
||||
console.log(chann.name);
|
||||
});
|
||||
|
||||
});
|
||||
})
|
||||
|
||||
mybot.on("message", function (msg) {
|
||||
|
||||
Reference in New Issue
Block a user