-
Notifications
You must be signed in to change notification settings - Fork 6
/
commands.txt
305 lines (242 loc) · 14.7 KB
/
commands.txt
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
Naoko's Commands
* - denotes a non-functional command that has yet to be reimplemtented for Cytube
All commands and usernames are not case sensitive.
In the parameters, [] denotes an optional command, | denotes different possible commands, and () denotes grouping to reduce ambiguity.
None of these characters are used in the command parameters, except in the case of the translate command.
--- All Users ----
These commands are usable by all users, whether they're in IRC or Synchtube.
8ball question
Responds with one of the standard magic eight ball responses to the given question.
anagram text
Returns an anagram of the given text.
ask question
Responds yes or no to the given question.
choose choice [choice ...]
Chooses one of the given space separated strings randomly.
cleverbot message
Sends the message to cleverbot.
This requires implementing a communication interface with cleverbot, which is not distributed with Naoko.
dice X Y
d X Y
XdY
Rolls X Y-sided dice.
help
Links to this file.
permute choice [choice ...]
Responds with a permutation of the given choices.
quote [name]
Displays a random quote. If a name is provided it will pick a quote from users with that name.
Will not display quotes from Naoko unless specifically asked to.
status
Displays whether Naoko is muted or not. This is displayed even if she is muted.
translate [[bb] | [aa>bb] | [aa->bb]] string
Translates the given string from aa, which defaults to detecting the language, to bb, which defaults to en, using Microsoft Translate.
The languages aa and bb must be specified as an ISO two letter language code.
Note: If source or destination language are provided, they will be provided in the form "[bb]" or "[aa->bb]", including the square brackets. The internal square brackets are part of the parameters.
wolfram query
Sends the given query to the Wolfram API and returns the primary or first result.
--- Synchtube Users Only ---
These commands are usable by both mods and non-mods in the Synchtube chat, but not in IRC.
add link
Adds the video found at the link to the playlist. The video is added to the sql database as if it were added through Synchtube.
Only mods can add videos when the playlist is locked.
addrandom X
Adds X random videos to the list, where X defaults to five. The maximum value of X for non-mods is five. Non-mods can only use this command when there are ten or less videos in the playlist.
This command is throttled so that it can only be called by any user once every five seconds.
Less restrictions affect mods.
delete [-n X]
Deletes the last X videos added by the user who calls this command up to a maximum of ten. This will not delete the currently playing video.
Due to how Synchtube handles adding videos for unregistered but named users no unregistered users can delete their own videos and this command is disabled for them.
More options are available to mods.
* lastban
* lastbans
Displays the last ban for the name of the user who calls this command, including the time of the ban, the reason, and the name of the mod who initiated the ban.
More options are available to mods. Lastbans will only provide a single ban for non-mods, and will also default to one for mods.
* permissions
Display the hybrid mod permissions for the user who calls this command.
More options are available to mods.
--- Synchtube Mods Only ---
These commands are only available to Synchtube mods in Synchtube chat. Some commands are available to hybrid mods with specific permissions.
There are no differences between mods and hybrid mods, save only that hybrid mods are not protected from some commands such as ban like real mods are, and they cannot use the
special parameters for the kick command.
add link
Hybrid mod permissions +H.
Allows users to add videos while the list is locked.
addrandom [Y | -title "X" | -dur (hours: | hours:minutes | :minutes | minutes) | -user name]
Hybrid mod permission +A.
Adds Y random videos to the list, where Y defaults to five. The maximum value of Y for mods is 20. Mods can call this regardless of the length of the playlist.
The five second limit for successive calls still applies to mods.
Also supports filters for videos.
Providing a title, in quotes, of length at least 3 characters will match any video with that substring in the title, ignoring case.
Providing a duration will match all videos with a length of at most that duration. If no durations is provided it will default to ten minutes.
Providing a username name will match all videos posted by a registered user with that name.
* Currently blocks all videos from soundcloud, option to change the list of blocked sites to be added later
* autolead on | off
Hybrid more permission +U.
Sets whether Naoko will automatically take leader when she reconnects. She will (currently) not automatically take leader when there is no playlist.
* autosetskip on | off | none | number | percentage
Hybrid mod permission +V.
Changes the default skip settings that will be set whenever Naoko reconnects. This will override any current settings in the room even if she is only restarted
with the restart command.
See setskip for an explanation of the possible parameters. If none is sent autosetskip will be disabled.
* ban name [reason]
Hybrid Mod permission +Q.
Bans the specified user. The reason, which defaults to "Requested," is not displayed to the user who is being banned, though it is stored in the database.
Cannot ban mods.
* banlist [-v]
Hybrid mod permission +Q.
Displays the list of currently banned users. If the -v flag is provided it also displays the IDs of the banned users.
blacklist
Blacklists the currently playing video. Requires a rank 5 or higher account. Irreversible except by manually unflagging it in the database or through telnet.
bump [name | -unnamed | -all] [-title "TITLE"] [ -dur (hours: | hours:minutes | :minutes | minutes)] [-n X]
Hybrid mod permission +B.
Bumps videos so they will play next while maintaining their relative order
Any combination of filters is supported, except combining a name and -unnamed. When combining filters only videos which match all provided filters will be removed.
Providing a title, in quotes, of length at least 3 characters will match any video with that substring in the title, ignoring case.
Providing a name will match all videos posted by a registered user with that name.
Providing no name or title will match all videos added by the user who calls this.
Providing a number will delete the bottom X videos matching all other filters, up to a maximum of ten, with a default of one.
Providing -unnamed will match all videos added by unregistered users.
Providing -all will match videos added by any user, this is implicit when a title is provided but can be overriden.
clean
Hybrid mod permission +C.
Cleans the playlist by removing all the videos that are above the current video in the playlist.
Naoko does not check or have any way of telling if those videos have actually been played or not.
* commandlock off | named | registered | mods
Disables all commands for groups of users depending on what argument is supplied.
Hybrid mods are not counted as mods for the purposes of this command.
delete [name | -unnamed | -all] [-title "TITLE"] [ -dur (hours: | hours:minutes | :minutes | minutes)] [-n X]
Hybrid mod permission +D.
In addition to the functionality outlined above, deletes the last video after the currently playing video matching a set of filters.
When combining filters only videos which match all provided filters will be removed.
Providing a title, in quotes, of length at least 3 characters will match any video with that substring in the title, ignoring case.
Providing a duration will match all videos with a length of at least that duration.
Providing a name will match all videos posted by a registered user with that name.
Providing no name, title, or duration will match all videos added by the user who calls this.
Providing a number will delete the bottom X videos matching all other filters, up to a maximum of ten, with a default of one.
Providing -unnamed will match all videos added by unregistered users.
Providing -all will match videos added by any user, this is implicit when a title or duration is provided but can be overridden.
deleteplaylist name
Hybrid mod permission +Y.
Deletes the named playlist.
duplicates
Hybrid mod permission +T.
Deletes duplicate videos from the playlist. Will not remove the currently playing video even if it is a duplicate.
Leaves the first occurence of any duplicated video on the list, even if it is above the currently playing video.
endpoll
Hybrid mod permissions +G.
Ends the current poll.
* hybridmods [on | off]
Enables or disables hybrid mods if on or off are passed.
With neither Naoko will list all the current hybridmods with active permissions.
This is written to the hybridmods file so the status will be maintained.
kick (name [reason]) | -unnamed | -unregistered
Hybrid mod permission +K.
Kicks the specified user. The reason, which defaults to "Requested," is displayed to the user who is being kicked.
If -unnamed or -unregistered is passed instead, it will kick all unnamed users or all unregistered users at once. Only real mods can use these values.
Cannot kick mods.
* lastban [name | -all]
* lastbans [(name | -all) [X]]
Displays the last X bans, where X defaults to 1, of any users with the given name. If -all is provided instead of a name the last X bans for any users will b displayed.
* lead
Hybrid mod permission +O.
Can be used by the current leader of the room regardless of permissions.
Changes the leader to Naoko.
loadplaylist name
Hybrid mod permission +A.
Load the named playlist at the end of the current room playlist.
lock
unlock
Hybrid mod permission +L.
Locks or unlocks the playlist.
management on | off
Hybrid mod permission +N.
Determines whether Naoko is actively managing the playlist by deleting videos after they play and adding more or not.
* mod name
Hybrid mod permission +O.
Can be used by the current leader of the room regardless of permissions.
Changes the leader to the user with the given name.
mute
unmute
Hybrid mod permission +M.
Mutes or unmutes Naoko. This prevents bridging chat with IRC, and prevents the majority of messages Naoko can send. There are few exceptions, namely a select few error messages and the status command.
* permissions [(+ | -) (all | flags)] name
Give or remove permissions to the specified hybrid mod. Flags for permissions are defined below.
If no changes are specified, or if changes do take place, Naoko will display the current permissions of the hybrid mod.
poll title*option*option[*option...]
Hybrid mod permission +P.
Creates a poll with the given list of asterisk separated options and the given title, at least two choices are required.
purge name | -unnamed | -title "X" | -dur (hours: | hours:minutes | :minutes | minutes)
Hybrid mod permission +G.
Removes all videos, except the currently playing video, that match a set of filters.
Any combination of filters is supported, except combining a name and -unnamed. When combining filters only videos which match all provided filters will be removed.
Providing a title, in quotes, of length at least 3 characters will match any video with that substring in the title, ignoring case.
Providing a duration of at least 20 minutes will match all videos with a length of at least that duration.
Providing a name will match all videos posted by a registered user with that name.
Providing -unnamed will match all videos added by unregistered users.
restart
Hybrid mod permission +R.
Restarts Naoko.
saveplaylist name
Hybrid mod permission +Y.
Saves the current playlist with the given name. Overwrites any playlist with the same name.
* setskip on | off | number | percentage
Hybrid mod permission +E.
Sets the status for voting depending on what is provided. If told to turn on skipping, she will use the previous setting if she has one, otherwise she will default to 33%.
It is not necessary to explicitly call setskip on before changing the cutoff point if skipping is turned off.
* shuffle
Hyrbid mod permissions +F.
Shuffles the list and bumps the currently playing video to the top of the list.
skip
Hybrid mod permission +S.
Skips the current video and advances to the next video.
* steal
Hybrid mod permission +O.
Switches the leader to the mod who called this.
* unban name | id
Hybrid mod permission +Q.
Unbans the specified user. Can also accept the IDs displayed by banlist -v.
* unregspamban on | off
Hybrid mod permissions +I.
Sets whether unregistered spammers will be banned for the first offense or will have multiple chances like registered users have.
--- Hybrid Mod Permissions ---
A list of all the permissions that can be given to hybrid mods, and the affected commands.
See the above documentation for any particular details for how the commands are affected.
Some are unintuitive to prevent being accidentally given out.
A - Addrandom, Loadplaylist
B - Bump
C - Clean
D - Delete
E - Setskip
F - Shuffle
G - Purge
H - Add
I - Unregspamban
K - Kick
L - Lock, Unlock
M - Mute, Unmute
N - Management
O - Steal, Mod
P - Poll, EndPoll
Q - Ban, Unban, Banlist
R - Restart
S - Skip
T - Duplicates
U - Autolead
V - Autosetskip
Y - Saveplaylist, Deleteplaylist
--- Naoko Administrator Only ---
These functions are only available to the administrator of Naoko through telnet.
* clearRoom(bool kickSelf=False)
Kicks everyone in the room. No exceptions except Naoko herself, unless kickSelf is True.
This function is a last resort for recovering access to rooms in unusual circumstances such as hanging connections.
Invoking this with kickSelf set to True will reinitialize the room object, which will fix any errors related to the
IP-based connection limit.
command(string message)
Executes the command in the given message as if it were requested in chat by Naoko herself.
Subject to all restrictions Naoko has based on her rank, including commandLock.
The message does not need to be prefixed by $.
importFile(string filename, string name=None)
Opens <filename>.lst, which is a text file containing a list of urls to vidoes (such as are accepted by $add), one per line.
Adds every video after verifying it as if it were added by a user with the provided name. If no name is provided they will not be stored in the database.
This function can take a long time due to spacing out the adds to avoid spamming the Youtube API, and should be used sparingly.