package config import ( "context" "sync" "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/os/glog" ) var ( welcomeCache map[string]string welcomeMu sync.RWMutex welcomeOnce sync.Once ) // initWelcomeMessages 初始化欢迎话术配置 func initWelcomeMessages(ctx context.Context) { welcomeOnce.Do(func() { cfg := g.Cfg() welcomeMap := cfg.MustGet(ctx, "welcomes").MapStrStr() welcomeMu.Lock() welcomeCache = welcomeMap welcomeMu.Unlock() glog.Infof(ctx, "已加载欢迎话术配置: %d个方向", len(welcomeMap)) }) } // GetWelcomeMessage 根据方向名称获取欢迎话术 func GetWelcomeMessage(direction string) string { ctx := context.Background() initWelcomeMessages(ctx) welcomeMu.RLock() defer welcomeMu.RUnlock() return welcomeCache[direction] }