forked from parkervcp/parkertron
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathparsing_structs.go
69 lines (58 loc) · 2.01 KB
/
parsing_structs.go
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
package main
// generic structs
type permission struct {
Group string `json:"group,omitempty"`
Users []string `json:"users,omitempty"`
Roles []string `json:"roles,omitempty"`
Commands []string `json:"commands,omitempty"`
Blacklisted bool `json:"blacklisted,omitempty"`
}
type command struct {
Command string `json:"command,omitempty"`
Response []string `json:"response,omitempty"`
Reaction []string `json:"reaction,omitempty"`
}
type keyword struct {
Keyword string `json:"keyword,omitempty"`
Reaction []string `json:"reaction,omitempty"`
Response []string `json:"response,omitempty"`
Exact bool `json:"exact,omitempty"`
}
type mentions struct {
Ping responseArray `json:"ping,omitempty"`
Mention responseArray `json:"mention,omitempty"`
}
type filter struct {
Term string `json:"term,omitempty"`
Reason []string `json:"reason,omitempty"`
}
type responseArray struct {
Reaction []string `json:"reaction,omitempty"`
Response []string `json:"response,omitempty"`
}
type parsing struct {
Image parsingImageConfig `json:"image,omitempty"`
Paste parsingPasteConfig `json:"paste,omitempty"`
}
type parsingConfig struct {
Name string `json:"name,omitempty"`
URL string `json:"url,omitempty"`
Format string `json:"format,omitempty"`
}
type parsingImageConfig struct {
FileTypes []string `json:"filetypes,omitempty"`
Sites []parsingConfig `json:"sites,omitempty"`
}
type parsingPasteConfig struct {
Sites []parsingConfig `json:"sites,omitempty"`
Ignore []parsingConfig `json:"ignore,omitmepty"`
}
type channelGroup struct {
ChannelIDs []string `json:"channels,omitempty"`
Mentions mentions `json:"mentions,omitempty"`
Commands []command `json:"commands,omitempty"`
Keywords []keyword `json:"keywords,omitempty"`
Parsing parsing `json:"parsing,omitempty"`
Permissions []permission `json:"permissions,omitempty"`
KOM discordKickOnMention `json:"kick_on_mention,omitempty"`
}