Create 创建新会话
(ctx context.Context, req *CreateRequest)
| 27 | |
| 28 | // Create 创建新会话 |
| 29 | func (s *InMemoryService) Create(ctx context.Context, req *CreateRequest) (Session, error) { |
| 30 | s.mu.Lock() |
| 31 | defer s.mu.Unlock() |
| 32 | |
| 33 | sessionID := uuid.New().String() |
| 34 | session := &inMemorySession{ |
| 35 | id: sessionID, |
| 36 | appName: req.AppName, |
| 37 | userID: req.UserID, |
| 38 | agentID: req.AgentID, |
| 39 | state: newInMemoryState(), |
| 40 | events: newInMemoryEvents(), |
| 41 | metadata: req.Metadata, |
| 42 | lastUpdateTime: time.Now(), |
| 43 | } |
| 44 | |
| 45 | if session.metadata == nil { |
| 46 | session.metadata = make(map[string]any) |
| 47 | } |
| 48 | |
| 49 | s.sessions[sessionID] = session |
| 50 | |
| 51 | return session, nil |
| 52 | } |
| 53 | |
| 54 | // Get 获取会话 |
| 55 | func (s *InMemoryService) Get(ctx context.Context, req *GetRequest) (Session, error) { |