Skip to content
This repository was archived by the owner on Jul 4, 2025. It is now read-only.

Commit 4d2d236

Browse files
authored
Merge pull request #1767 from janhq/j/add-thread
feat: add thread
1 parent 79f7679 commit 4d2d236

29 files changed

+1070
-188
lines changed

engine/common/api-dto/messages/delete_message_response.h renamed to engine/common/api-dto/delete_success_response.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#include "common/json_serializable.h"
44

55
namespace api_response {
6-
struct DeleteMessageResponse : JsonSerializable {
6+
struct DeleteSuccessResponse : JsonSerializable {
77
std::string id;
88
std::string object;
99
bool deleted;

engine/common/message.h

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,17 @@
1717
#include "utils/logging_utils.h"
1818
#include "utils/result.hpp"
1919

20-
namespace ThreadMessage {
20+
namespace OpenAi {
2121

2222
// Represents a message within a thread.
2323
struct Message : JsonSerializable {
2424
Message() = default;
25-
26-
Message(Message&&) = default;
27-
28-
Message& operator=(Message&&) = default;
29-
25+
// Delete copy operations
3026
Message(const Message&) = delete;
31-
3227
Message& operator=(const Message&) = delete;
28+
// Allow move operations
29+
Message(Message&&) = default;
30+
Message& operator=(Message&&) = default;
3331

3432
// The identifier, which can be referenced in API endpoints.
3533
std::string id;
@@ -210,4 +208,4 @@ struct Message : JsonSerializable {
210208
}
211209
}
212210
};
213-
}; // namespace ThreadMessage
211+
}; // namespace OpenAi

engine/common/message_attachment.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#include <json/reader.h>
44
#include "common/json_serializable.h"
55

6-
namespace ThreadMessage {
6+
namespace OpenAi {
77

88
// The tools to add this file to.
99
struct Tool {
@@ -47,4 +47,4 @@ struct Attachment : JsonSerializable {
4747
}
4848
}
4949
};
50-
}; // namespace ThreadMessage
50+
}; // namespace OpenAi

engine/common/message_attachment_factory.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1+
#pragma once
2+
13
#include <optional>
24
#include "common/message_attachment.h"
35
#include "utils/result.hpp"
46

5-
namespace ThreadMessage {
7+
namespace OpenAi {
68
inline cpp::result<Attachment, std::string> ParseAttachment(
79
Json::Value&& json) {
810
if (json.empty()) {
@@ -45,4 +47,4 @@ ParseAttachments(Json::Value&& json) {
4547

4648
return attachments;
4749
}
48-
}; // namespace ThreadMessage
50+
}; // namespace OpenAi

engine/common/message_content.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#include <string>
44
#include "common/json_serializable.h"
55

6-
namespace ThreadMessage {
6+
namespace OpenAi {
77

88
struct Content : JsonSerializable {
99
std::string type;
@@ -20,4 +20,4 @@ struct Content : JsonSerializable {
2020

2121
virtual ~Content() = default;
2222
};
23-
}; // namespace ThreadMessage
23+
}; // namespace OpenAi

engine/common/message_content_factory.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
#include "utils/logging_utils.h"
99
#include "utils/result.hpp"
1010

11-
namespace ThreadMessage {
11+
namespace OpenAi {
1212
inline cpp::result<std::unique_ptr<Content>, std::string> ParseContent(
1313
Json::Value&& json) {
1414
if (json.empty()) {
@@ -74,4 +74,4 @@ ParseContents(Json::Value&& json) {
7474
}
7575
return contents;
7676
}
77-
} // namespace ThreadMessage
77+
} // namespace OpenAi

engine/common/message_content_image_file.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
#include "common/message_content.h"
44

5-
namespace ThreadMessage {
5+
namespace OpenAi {
66
struct ImageFile {
77
// The File ID of the image in the message content. Set purpose="vision" when uploading the File if you need to later display the file content.
88
std::string file_id;
@@ -66,4 +66,4 @@ struct ImageFileContent : Content {
6666
}
6767
}
6868
};
69-
} // namespace ThreadMessage
69+
} // namespace OpenAi

engine/common/message_content_image_url.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
#include "common/message_content.h"
44

5-
namespace ThreadMessage {
5+
namespace OpenAi {
66

77
struct ImageUrl {
88
// The external URL of the image, must be a supported image types: jpeg, jpg, png, gif, webp.
@@ -68,4 +68,4 @@ struct ImageUrlContent : Content {
6868
}
6969
}
7070
};
71-
} // namespace ThreadMessage
71+
} // namespace OpenAi

engine/common/message_content_refusal.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
#include "common/message_content.h"
44

5-
namespace ThreadMessage {
5+
namespace OpenAi {
66
// The refusal content generated by the assistant.
77
struct Refusal : Content {
88

@@ -43,4 +43,4 @@ struct Refusal : Content {
4343
}
4444
}
4545
};
46-
} // namespace ThreadMessage
46+
} // namespace OpenAi

engine/common/message_content_text.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#include "common/message_content.h"
44
#include "utils/logging_utils.h"
55

6-
namespace ThreadMessage {
6+
namespace OpenAi {
77

88
struct Annotation : JsonSerializable {
99
std::string type;
@@ -239,4 +239,4 @@ struct TextContent : Content {
239239
}
240240
}
241241
};
242-
} // namespace ThreadMessage
242+
} // namespace OpenAi

0 commit comments

Comments
 (0)