| chat_grpc.pb.go | ||
| chat.pb.go | ||
| chat.proto | ||
| generate_proto.bat | ||
| README.md | ||
l-ai-chat-proto
Protobuf-контракты Live Chat (l-ai-chat). Репозиторий хранит и .proto, и сгенерированный Go-код (как остальные proto-модули проекта).
Содержимое
chat.proto— единый контрактChatService(topics list/get/create/update, post/get/history, subscribe, acknowledge) +Message/Topic+ enumsAuthorType/MessageSource.chat.pb.go,chat_grpc.pb.go— сгенерированный код, закоммичен.
Регенерация
Нужны protoc + protoc-gen-go + protoc-gen-go-grpc в PATH:
generate_proto.bat
Сгенерированный код коммитится в этот репозиторий; сервисы подключают его как git submodule (см. l-ai-chat/proto/l-ai-chat-proto).
Соглашения
package chat,option go_package = "git.be.kaien.ru/l-ai/l-ai-chat-proto/proto".- Enum-значения префиксованы (
AUTHOR_TYPE_*,MESSAGE_SOURCE_*) — избегаем C++-scoping коллизий. - История пагинируется по
sequence(before_sequence/after_sequence), offset-пагинации нет.