forked from kageru/discord-selphybot
added welcome DM on demand
This commit is contained in:
parent
778852666c
commit
692f0bc288
48
main.go
48
main.go
|
@ -75,6 +75,29 @@ func main() {
|
||||||
dg.Close()
|
dg.Close()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getWelcomeEmbed() *discordgo.MessageEmbed {
|
||||||
|
return &discordgo.MessageEmbed {
|
||||||
|
Author: &discordgo.MessageEmbedAuthor{},
|
||||||
|
Color: 0xffb90f,
|
||||||
|
Description: config.WelcomeEmbed.Message,
|
||||||
|
Fields: []*discordgo.MessageEmbedField {
|
||||||
|
&discordgo.MessageEmbedField {
|
||||||
|
Name: config.WelcomeEmbed.QuestionsTitle,
|
||||||
|
Value: config.WelcomeEmbed.QuestionsText,
|
||||||
|
Inline: true,
|
||||||
|
},
|
||||||
|
&discordgo.MessageEmbedField {
|
||||||
|
Name: config.WelcomeEmbed.BugsTitle,
|
||||||
|
Value: fmt.Sprintf(config.WelcomeEmbed.BugsText, config.AdminID),
|
||||||
|
Inline: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Thumbnail: &discordgo.MessageEmbedThumbnail{
|
||||||
|
URL: config.WelcomeEmbed.Image,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func onJoin(s *discordgo.Session, member *discordgo.GuildMemberAdd) {
|
func onJoin(s *discordgo.Session, member *discordgo.GuildMemberAdd) {
|
||||||
if !member.User.Bot && config.RequireAccept {
|
if !member.User.Bot && config.RequireAccept {
|
||||||
s.GuildMemberRoleAdd(config.ServerID, member.User.ID, config.LockedRoleID)
|
s.GuildMemberRoleAdd(config.ServerID, member.User.ID, config.LockedRoleID)
|
||||||
|
@ -84,26 +107,7 @@ func onJoin(s *discordgo.Session, member *discordgo.GuildMemberAdd) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
// todo: @mention or something
|
// todo: @mention or something
|
||||||
} else {
|
} else {
|
||||||
embed := &discordgo.MessageEmbed {
|
embed := getWelcomeEmbed()
|
||||||
Author: &discordgo.MessageEmbedAuthor{},
|
|
||||||
Color: 0xffb90f,
|
|
||||||
Description: config.WelcomeEmbed.Message,
|
|
||||||
Fields: []*discordgo.MessageEmbedField {
|
|
||||||
&discordgo.MessageEmbedField {
|
|
||||||
Name: config.WelcomeEmbed.QuestionsTitle,
|
|
||||||
Value: config.WelcomeEmbed.QuestionsText,
|
|
||||||
Inline: true,
|
|
||||||
},
|
|
||||||
&discordgo.MessageEmbedField {
|
|
||||||
Name: config.WelcomeEmbed.BugsTitle,
|
|
||||||
Value: fmt.Sprintf(config.WelcomeEmbed.BugsText, config.AdminID),
|
|
||||||
Inline: true,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
Thumbnail: &discordgo.MessageEmbedThumbnail{
|
|
||||||
URL: config.WelcomeEmbed.Image,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
s.ChannelMessageSendEmbed(dm.ID, embed)
|
s.ChannelMessageSendEmbed(dm.ID, embed)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -162,6 +166,10 @@ func receivedDM(s *discordgo.Session, m *discordgo.MessageCreate) {
|
||||||
fmt.Sprintf("Received DM from %s with content: “%s”", userToString(m.Author), m.Content)
|
fmt.Sprintf("Received DM from %s with content: “%s”", userToString(m.Author), m.Content)
|
||||||
Member, _ := s.GuildMember(config.ServerID, m.Author.ID)
|
Member, _ := s.GuildMember(config.ServerID, m.Author.ID)
|
||||||
dm, _ := s.UserChannelCreate(Member.User.ID)
|
dm, _ := s.UserChannelCreate(Member.User.ID)
|
||||||
|
if m.Content == "!welcome" {
|
||||||
|
s.ChannelMessageSendEmbed(dm.ID, getWelcomeEmbed())
|
||||||
|
return
|
||||||
|
}
|
||||||
if strings.HasPrefix(m.Content, "!complain") {
|
if strings.HasPrefix(m.Content, "!complain") {
|
||||||
redirectComplaint(s, m)
|
redirectComplaint(s, m)
|
||||||
s.ChannelMessageSend(dm.ID, config.ComplaintReceivedMessage)
|
s.ChannelMessageSend(dm.ID, config.ComplaintReceivedMessage)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user