-
Notifications
You must be signed in to change notification settings - Fork 0
/
demo.js
77 lines (55 loc) · 1.84 KB
/
demo.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
console.log("RUNNING")
var Client = require("./ChatExchangeJS/client");
var user = require("./user.json")
//Function called when joining a room
function Room(room) {
console.log("Joined room " + room.id + "!")
//Add event listener to this room
room.on("message", msg => {
//NOTE: The objects that an even listener returns _will_ change in the future, use with caution!
console.log("Received message:", msg.content);
var command = msg.content.split(" ");
console.log(command)
switch (command.shift()) {
case "!edit":
room.editMessage(command.shift(), command.join(" "));
break;
case "!delete":
room.deleteMessage(command.join(" "));
break;
case "!help":
//Send message to room
room.sendMessage("I'm a happy little chatbot :D");
break;
case "!ping":
//Send message to room and ping user that sent the `!ping` message
room.sendMessage("@" + msg.user_name.replace(" ", "") + " ping!");
break;
case "!reply":
msg.reply("here's a reply!")
break;
}
});
//Send welcome message when user enters room
room.on("userEntered", data => {
room.sendMessage("@" + data.user_name.replace(" ", "") + " welcome to my chatroom!");
});
//Send goodbye message when user leaves
room.on("userLeft", data => {
room.sendMessage(data.user_name.replace(" ", "") + " left :'(");
});
}
//This is the user session. All actions that require the user to be logged in should be done in here.
function Session(me) {
console.log("Logged in to " + me.host + " as " + me.user + "(ID #" + me.id + ")!")
//Join room, then run room function
me.join(133210).then(Room);
}
async function main() {
//Create new client for site
var me = new Client("3dprinting.stackexchange.com");
console.log("Logging in")
//Login to site with username and password
let session = await me.login(user.email, user.password);
}
main();