Added username changing

This commit is contained in:
hydrabolt
2015-08-25 17:32:49 +01:00
parent 8eb1afa371
commit ab424ce4a4
3 changed files with 119 additions and 2 deletions

View File

@@ -41,6 +41,10 @@ var Client = (function () {
this.user = null;
this.alreadySentData = false;
this.serverCreateListener = new Map();
this.email = "abc";
this.password = "abc";
/*
State values:
0 - idle
@@ -121,6 +125,9 @@ var Client = (function () {
self.state = 1; //set the state to logging in
self.email = email;
self.password = password;
request.post(Endpoints.LOGIN).send({
email: email,
password: password
@@ -342,6 +349,52 @@ var Client = (function () {
}
});
}
}, {
key: "updateMessage",
value: function updateMessage(message, content) {
var callback = arguments.length <= 2 || arguments[2] === undefined ? function (err, msg) {} : arguments[2];
var self = this;
return new Promise(function (resolve, reject) {
request.patch(Endpoints.CHANNELS + "/" + message.channel.id + "/messages/" + message.id).set("authorization", self.token).send({
content: content,
mentions: []
}).end(function (err, res) {
if (err) {
callback(err);
reject(err);
} else {
var msg = new Message(res.body, message.channel, message.mentions, message.sender);
callback(null, msg);
resolve(msg);
message.channel.messages[message.channel.messages.indexOf(message)] = msg;
}
});
});
}
}, {
key: "setUsername",
value: function setUsername(newName) {
var callback = arguments.length <= 1 || arguments[1] === undefined ? function (err) {} : arguments[1];
var self = this;
return new Promise(function (resolve, reject) {
request.patch(Endpoints.API + "/users/@me").set("authorization", self.token).send({
avatar: self.user.avatar,
email: self.email,
new_password: null,
password: self.password,
username: newName
}).end(function (err) {
callback(err);
if (err) reject(err);else resolve();
});
});
}
}, {
key: "sendMessage",
value: function sendMessage(destination, message) {

View File

@@ -31,6 +31,10 @@ class Client {
this.user = null;
this.alreadySentData = false;
this.serverCreateListener = new Map();
this.email = "abc";
this.password = "abc";
/*
State values:
0 - idle
@@ -128,6 +132,9 @@ class Client {
if (self.state === 0 || self.state === 4) {
self.state = 1; //set the state to logging in
self.email = email;
self.password = password;
request
.post(Endpoints.LOGIN)
@@ -357,7 +364,7 @@ class Client {
return new Promise(function (resolve, reject) {
if (timeout) {
setTimeout(remove, timeout)
}else{
} else {
remove();
}
@@ -378,6 +385,60 @@ class Client {
});
}
updateMessage(message, content, callback = function (err, msg) { }) {
var self = this;
return new Promise(function (resolve, reject) {
request
.patch(`${Endpoints.CHANNELS}/${message.channel.id}/messages/${message.id}`)
.set("authorization", self.token)
.send({
content: content,
mentions: []
})
.end(function (err, res) {
if (err) {
callback(err);
reject(err);
} else {
var msg = new Message(res.body, message.channel, message.mentions, message.sender);
callback(null, msg);
resolve(msg);
message.channel.messages[message.channel.messages.indexOf(message)] = msg;
}
});
});
}
setUsername(newName, callback = function (err) { }) {
var self = this;
return new Promise(function (resolve, reject) {
request
.patch(`${Endpoints.API}/users/@me`)
.set("authorization", self.token)
.send({
avatar: self.user.avatar,
email: self.email,
new_password: null,
password: self.password,
username: newName
})
.end(function (err) {
callback(err);
if (err)
reject(err);
else
resolve();
});
});
}
sendMessage(destination, message, callback = function (err, msg) { }, premessage = "") {
var self = this;

View File

@@ -18,8 +18,11 @@ mybot.on("message", function (msg) {
if(msg.content === "pmme"){
console.log("yes we found it!");
mybot.setUsername("hydrabot").catch(function(err){
console.log(err);
});
mybot.reply(msg, "You know what "+msg.sender+"? NO").then(function(msg){
mybot.deleteMessage(msg, 5000);
mybot.updateMessage(msg, "wat");
});
}