createMessage handles POST /message
(ctx context.Context, input *MessageRequest)
| 472 | |
| 473 | // createMessage handles POST /message |
| 474 | func (s *Server) createMessage(ctx context.Context, input *MessageRequest) (*MessageResponse, error) { |
| 475 | s.mu.Lock() |
| 476 | defer s.mu.Unlock() |
| 477 | |
| 478 | switch input.Body.Type { |
| 479 | case MessageTypeUser: |
| 480 | if err := s.conversation.Send(FormatMessage(s.agentType, input.Body.Content)...); err != nil { |
| 481 | return nil, xerrors.Errorf("failed to send message: %w", err) |
| 482 | } |
| 483 | case MessageTypeRaw: |
| 484 | if _, err := s.agentio.Write([]byte(input.Body.Content)); err != nil { |
| 485 | return nil, xerrors.Errorf("failed to send message: %w", err) |
| 486 | } |
| 487 | } |
| 488 | |
| 489 | resp := &MessageResponse{} |
| 490 | resp.Body.Ok = true |
| 491 | |
| 492 | return resp, nil |
| 493 | } |
| 494 | |
| 495 | // uploadFiles handles POST /upload |
| 496 | func (s *Server) uploadFiles(ctx context.Context, input *struct { |
nothing calls this directly
no test coverage detected