feat: add help inform messages for bot commands and improve error handling in player data fetching
This commit is contained in:
parent
ff8d077f1c
commit
a1fcfe4366
@ -17,10 +17,15 @@ var hasVaildBuild = true
|
|||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
handler.RegisterHandler("/重启bot", restart, constants.LEVEL_ADMIN)
|
handler.RegisterHandler("/重启bot", restart, constants.LEVEL_ADMIN)
|
||||||
|
handler.RegisterHelpInform("/重启bot", "热更新", "重启bot")
|
||||||
handler.RegisterHandler("/构建bot", build, constants.LEVEL_ADMIN)
|
handler.RegisterHandler("/构建bot", build, constants.LEVEL_ADMIN)
|
||||||
|
handler.RegisterHelpInform("/构建bot", "热更新", "构建bot")
|
||||||
handler.RegisterHandler("/构建重启", buildAndRestart, constants.LEVEL_ADMIN)
|
handler.RegisterHandler("/构建重启", buildAndRestart, constants.LEVEL_ADMIN)
|
||||||
handler.RegisterHandler("/gitpull", pullCode, constants.LEVEL_ADMIN)
|
handler.RegisterHelpInform("/构建重启", "热更新", "构建并重启")
|
||||||
|
handler.RegisterHandler("/gitpull", pullCode, constants.LEVEL_USER)
|
||||||
|
handler.RegisterHelpInform("/gitpull", "热更新", "拉取最新代码")
|
||||||
handler.RegisterHandler("/shutdown", shutdown, constants.LEVEL_ADMIN)
|
handler.RegisterHandler("/shutdown", shutdown, constants.LEVEL_ADMIN)
|
||||||
|
handler.RegisterHelpInform("/shutdown", "热更新", "结束程序")
|
||||||
}
|
}
|
||||||
|
|
||||||
func restart(msg model.Message) model.Reply {
|
func restart(msg model.Message) model.Reply {
|
||||||
|
@ -138,10 +138,14 @@ func (bl *blQuery) GetScore(qqId string) (reply string, err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 查询玩家数据
|
// 查询玩家数据
|
||||||
data, _ := FetchPlayerData(blId)
|
data, err := FetchPlayerData(blId)
|
||||||
if data == nil {
|
if data == nil && err == nil {
|
||||||
return "查询出错,服务器返回了空数据", errors.New("查询出错,服务器返回了空数据")
|
return "查询出错,服务器返回了空数据", errors.New("查询出错,服务器返回了空数据")
|
||||||
}
|
}
|
||||||
|
if err != nil {
|
||||||
|
log.Print(err)
|
||||||
|
return "查询出错,服务器返回了空数据" + err.Error(), err
|
||||||
|
}
|
||||||
|
|
||||||
// 构建 PlayerDataLite 结构体
|
// 构建 PlayerDataLite 结构体
|
||||||
dataLite := PlayerDataLite{
|
dataLite := PlayerDataLite{
|
||||||
|
@ -141,18 +141,18 @@ type ModifierValues struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type Player struct {
|
type Player struct {
|
||||||
ID string `json:"id"`
|
ID string `json:"id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Platform string `json:"platform"`
|
Platform string `json:"platform"`
|
||||||
Avatar string `json:"avatar"`
|
Avatar string `json:"avatar"`
|
||||||
Country string `json:"country"`
|
Country string `json:"country"`
|
||||||
Alias *string `json:"alias"`
|
Alias *string `json:"alias"`
|
||||||
Bot bool `json:"bot"`
|
Bot bool `json:"bot"`
|
||||||
Pp float64 `json:"pp"`
|
Pp float64 `json:"pp"`
|
||||||
Rank int `json:"rank"`
|
Rank int `json:"rank"`
|
||||||
CountryRank int `json:"countryRank"`
|
CountryRank int `json:"countryRank"`
|
||||||
Role string `json:"role"`
|
Role string `json:"role"`
|
||||||
Socials *string `json:"socials"`
|
// Socials *string `json:"socials"`
|
||||||
ContextExtensions *string `json:"contextExtensions"`
|
ContextExtensions *string `json:"contextExtensions"`
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -238,43 +238,43 @@ func timeConvert(duration time.Duration) string {
|
|||||||
|
|
||||||
// ScoreStats 存储分数统计信息
|
// ScoreStats 存储分数统计信息
|
||||||
type PlayerData struct {
|
type PlayerData struct {
|
||||||
MapperID int `json:"mapperId"`
|
MapperID int `json:"mapperId"`
|
||||||
Banned bool `json:"banned"`
|
Banned bool `json:"banned"`
|
||||||
Inactive bool `json:"inactive"`
|
Inactive bool `json:"inactive"`
|
||||||
BanDescription *string `json:"banDescription"`
|
BanDescription *string `json:"banDescription"`
|
||||||
ExternalProfileURL string `json:"externalProfileUrl"`
|
ExternalProfileURL string `json:"externalProfileUrl"`
|
||||||
RichBioTimeset int64 `json:"richBioTimeset"`
|
RichBioTimeset int64 `json:"richBioTimeset"`
|
||||||
SpeedrunStart int64 `json:"speedrunStart"`
|
SpeedrunStart int64 `json:"speedrunStart"`
|
||||||
LinkedIDs LinkedIDs `json:"linkedIds"`
|
LinkedIDs LinkedIDs `json:"linkedIds"`
|
||||||
History *string `json:"history"`
|
History *string `json:"history"`
|
||||||
Badges []string `json:"badges"`
|
Badges []string `json:"badges"`
|
||||||
PinnedScores *string `json:"pinnedScores"`
|
PinnedScores *string `json:"pinnedScores"`
|
||||||
Changes []Change `json:"changes"`
|
Changes []Change `json:"changes"`
|
||||||
AccPp float64 `json:"accPp"`
|
AccPp float64 `json:"accPp"`
|
||||||
PassPp float64 `json:"passPp"`
|
PassPp float64 `json:"passPp"`
|
||||||
TechPp float64 `json:"techPp"`
|
TechPp float64 `json:"techPp"`
|
||||||
ScoreStats ScoreStats `json:"scoreStats"`
|
ScoreStats ScoreStats `json:"scoreStats"`
|
||||||
LastWeekPp float64 `json:"lastWeekPp"`
|
LastWeekPp float64 `json:"lastWeekPp"`
|
||||||
LastWeekRank int `json:"lastWeekRank"`
|
LastWeekRank int `json:"lastWeekRank"`
|
||||||
LastWeekCountryRank int `json:"lastWeekCountryRank"`
|
LastWeekCountryRank int `json:"lastWeekCountryRank"`
|
||||||
ExtensionID int `json:"extensionId"`
|
ExtensionID int `json:"extensionId"`
|
||||||
ID string `json:"id"`
|
ID string `json:"id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Platform string `json:"platform"`
|
Platform string `json:"platform"`
|
||||||
Avatar string `json:"avatar"`
|
Avatar string `json:"avatar"`
|
||||||
Country string `json:"country"`
|
Country string `json:"country"`
|
||||||
Alias *string `json:"alias"`
|
Alias *string `json:"alias"`
|
||||||
Bot bool `json:"bot"`
|
Bot bool `json:"bot"`
|
||||||
Pp float64 `json:"pp"`
|
Pp float64 `json:"pp"`
|
||||||
Rank int `json:"rank"`
|
Rank int `json:"rank"`
|
||||||
CountryRank int `json:"countryRank"`
|
CountryRank int `json:"countryRank"`
|
||||||
Role string `json:"role"`
|
Role string `json:"role"`
|
||||||
Socials []string `json:"socials"`
|
// Socials []string `json:"socials"`
|
||||||
ContextExtensions *string `json:"contextExtensions"`
|
ContextExtensions *string `json:"contextExtensions"`
|
||||||
PatreonFeatures *string `json:"patreonFeatures"`
|
PatreonFeatures *string `json:"patreonFeatures"`
|
||||||
ProfileSettings ProfileSettings `json:"profileSettings"`
|
ProfileSettings ProfileSettings `json:"profileSettings"`
|
||||||
ClanOrder string `json:"clanOrder"`
|
ClanOrder string `json:"clanOrder"`
|
||||||
Clans []string `json:"clans"`
|
Clans []string `json:"clans"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type LinkedIDs struct {
|
type LinkedIDs struct {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user