tools.go 640 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package tools
  2. import (
  3. "context"
  4. )
  5. type (
  6. sessionIDContextKey string
  7. messageIDContextKey string
  8. )
  9. const (
  10. SessionIDContextKey sessionIDContextKey = "session_id"
  11. MessageIDContextKey messageIDContextKey = "message_id"
  12. )
  13. func GetSessionFromContext(ctx context.Context) string {
  14. sessionID := ctx.Value(SessionIDContextKey)
  15. if sessionID == nil {
  16. return ""
  17. }
  18. s, ok := sessionID.(string)
  19. if !ok {
  20. return ""
  21. }
  22. return s
  23. }
  24. func GetMessageFromContext(ctx context.Context) string {
  25. messageID := ctx.Value(MessageIDContextKey)
  26. if messageID == nil {
  27. return ""
  28. }
  29. s, ok := messageID.(string)
  30. if !ok {
  31. return ""
  32. }
  33. return s
  34. }