- Introduced a new welcome service and repository for managing welcome messages, channels, and GIFs. - Added commands to set welcome channel, message, DM, and GIF through the bot's configuration. - Implemented event handling for new guild members to send welcome messages and DMs based on configuration. - Updated main application to include the new welcome service in the bot's services.
44 lines
1.3 KiB
Go
44 lines
1.3 KiB
Go
package services
|
|
|
|
import (
|
|
"velox-bot/internal/db/services/level"
|
|
"velox-bot/internal/db/services/levelsettings"
|
|
"velox-bot/internal/db/services/meeting"
|
|
"velox-bot/internal/db/services/projects"
|
|
"velox-bot/internal/db/services/rps"
|
|
"velox-bot/internal/db/services/schedule"
|
|
"velox-bot/internal/db/services/twitch"
|
|
"velox-bot/internal/db/services/usersettings"
|
|
"velox-bot/internal/db/services/welcome"
|
|
)
|
|
|
|
type Services struct {
|
|
Level *level.Service
|
|
LevelSettings *levelsettings.Service
|
|
Meeting *meeting.Service
|
|
Schedule *schedule.Service
|
|
UserSettings *usersettings.Service
|
|
Projects *projects.Service
|
|
RPS *rps.Service
|
|
Twitch *twitch.Service
|
|
Welcome *welcome.Service
|
|
}
|
|
|
|
var Global *Services
|
|
|
|
func NewServices(level *level.Service, levelSettings *levelsettings.Service, meeting *meeting.Service, schedule *schedule.Service, userSettings *usersettings.Service, projects *projects.Service, rps *rps.Service, twitchSvc *twitch.Service, welcomeSvc *welcome.Service) *Services {
|
|
s := &Services{
|
|
Level: level,
|
|
LevelSettings: levelSettings,
|
|
Meeting: meeting,
|
|
Schedule: schedule,
|
|
UserSettings: userSettings,
|
|
Projects: projects,
|
|
RPS: rps,
|
|
Twitch: twitchSvc,
|
|
Welcome: welcomeSvc,
|
|
}
|
|
Global = s
|
|
return s
|
|
}
|