// Homelab AI service message contracts. // // This is the single source of truth for all NATS message types. // Generated Go code lives in handler-base/gen/messagespb. // // Naming: field numbers are stable across versions — add new fields, // never reuse or renumber existing ones. // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.36.10 // protoc v6.30.2 // source: messages/v1/messages.proto package messagespb import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" unsafe "unsafe" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) // ErrorResponse is the standard error reply from any handler. type ErrorResponse struct { state protoimpl.MessageState `protogen:"open.v1"` Error bool `protobuf:"varint,1,opt,name=error,proto3" json:"error,omitempty"` Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ErrorResponse) Reset() { *x = ErrorResponse{} mi := &file_messages_v1_messages_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ErrorResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ErrorResponse) ProtoMessage() {} func (x *ErrorResponse) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ErrorResponse.ProtoReflect.Descriptor instead. func (*ErrorResponse) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{0} } func (x *ErrorResponse) GetError() bool { if x != nil { return x.Error } return false } func (x *ErrorResponse) GetMessage() string { if x != nil { return x.Message } return "" } func (x *ErrorResponse) GetType() string { if x != nil { return x.Type } return "" } // LoginEvent is published when a user authenticates. // Subject: ai.chat.user.{user_id}.login type LoginEvent struct { state protoimpl.MessageState `protogen:"open.v1"` UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"` Nickname string `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname,omitempty"` Premium bool `protobuf:"varint,4,opt,name=premium,proto3" json:"premium,omitempty"` Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // Unix seconds unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *LoginEvent) Reset() { *x = LoginEvent{} mi := &file_messages_v1_messages_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *LoginEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*LoginEvent) ProtoMessage() {} func (x *LoginEvent) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use LoginEvent.ProtoReflect.Descriptor instead. func (*LoginEvent) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{1} } func (x *LoginEvent) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *LoginEvent) GetUsername() string { if x != nil { return x.Username } return "" } func (x *LoginEvent) GetNickname() string { if x != nil { return x.Nickname } return "" } func (x *LoginEvent) GetPremium() bool { if x != nil { return x.Premium } return false } func (x *LoginEvent) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } // GreetingRequest asks the LLM to generate a personalised greeting. // Subject: ai.chat.user.{user_id}.greeting.request type GreetingRequest struct { state protoimpl.MessageState `protogen:"open.v1"` UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"` Nickname string `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname,omitempty"` Premium bool `protobuf:"varint,4,opt,name=premium,proto3" json:"premium,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GreetingRequest) Reset() { *x = GreetingRequest{} mi := &file_messages_v1_messages_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GreetingRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GreetingRequest) ProtoMessage() {} func (x *GreetingRequest) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[2] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GreetingRequest.ProtoReflect.Descriptor instead. func (*GreetingRequest) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{2} } func (x *GreetingRequest) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *GreetingRequest) GetUsername() string { if x != nil { return x.Username } return "" } func (x *GreetingRequest) GetNickname() string { if x != nil { return x.Nickname } return "" } func (x *GreetingRequest) GetPremium() bool { if x != nil { return x.Premium } return false } // GreetingResponse carries the generated greeting text. // Subject: ai.chat.user.{user_id}.greeting.response type GreetingResponse struct { state protoimpl.MessageState `protogen:"open.v1"` UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` Greeting string `protobuf:"bytes,2,opt,name=greeting,proto3" json:"greeting,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GreetingResponse) Reset() { *x = GreetingResponse{} mi := &file_messages_v1_messages_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GreetingResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GreetingResponse) ProtoMessage() {} func (x *GreetingResponse) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GreetingResponse.ProtoReflect.Descriptor instead. func (*GreetingResponse) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{3} } func (x *GreetingResponse) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *GreetingResponse) GetGreeting() string { if x != nil { return x.Greeting } return "" } // ChatRequest is an incoming chat message routed via NATS. // Subject: ai.chat.user.{user_id}.message type ChatRequest struct { state protoimpl.MessageState `protogen:"open.v1"` RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` UserId string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"` Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"` Query string `protobuf:"bytes,5,opt,name=query,proto3" json:"query,omitempty"` // alternative to message (EffectiveQuery picks first non-empty) Premium bool `protobuf:"varint,6,opt,name=premium,proto3" json:"premium,omitempty"` EnableRag bool `protobuf:"varint,7,opt,name=enable_rag,json=enableRag,proto3" json:"enable_rag,omitempty"` EnableReranker bool `protobuf:"varint,8,opt,name=enable_reranker,json=enableReranker,proto3" json:"enable_reranker,omitempty"` EnableStreaming bool `protobuf:"varint,9,opt,name=enable_streaming,json=enableStreaming,proto3" json:"enable_streaming,omitempty"` TopK int32 `protobuf:"varint,10,opt,name=top_k,json=topK,proto3" json:"top_k,omitempty"` Collection string `protobuf:"bytes,11,opt,name=collection,proto3" json:"collection,omitempty"` EnableTts bool `protobuf:"varint,12,opt,name=enable_tts,json=enableTts,proto3" json:"enable_tts,omitempty"` SystemPrompt string `protobuf:"bytes,13,opt,name=system_prompt,json=systemPrompt,proto3" json:"system_prompt,omitempty"` ResponseSubject string `protobuf:"bytes,14,opt,name=response_subject,json=responseSubject,proto3" json:"response_subject,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ChatRequest) Reset() { *x = ChatRequest{} mi := &file_messages_v1_messages_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ChatRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChatRequest) ProtoMessage() {} func (x *ChatRequest) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChatRequest.ProtoReflect.Descriptor instead. func (*ChatRequest) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{4} } func (x *ChatRequest) GetRequestId() string { if x != nil { return x.RequestId } return "" } func (x *ChatRequest) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *ChatRequest) GetUsername() string { if x != nil { return x.Username } return "" } func (x *ChatRequest) GetMessage() string { if x != nil { return x.Message } return "" } func (x *ChatRequest) GetQuery() string { if x != nil { return x.Query } return "" } func (x *ChatRequest) GetPremium() bool { if x != nil { return x.Premium } return false } func (x *ChatRequest) GetEnableRag() bool { if x != nil { return x.EnableRag } return false } func (x *ChatRequest) GetEnableReranker() bool { if x != nil { return x.EnableReranker } return false } func (x *ChatRequest) GetEnableStreaming() bool { if x != nil { return x.EnableStreaming } return false } func (x *ChatRequest) GetTopK() int32 { if x != nil { return x.TopK } return 0 } func (x *ChatRequest) GetCollection() string { if x != nil { return x.Collection } return "" } func (x *ChatRequest) GetEnableTts() bool { if x != nil { return x.EnableTts } return false } func (x *ChatRequest) GetSystemPrompt() string { if x != nil { return x.SystemPrompt } return "" } func (x *ChatRequest) GetResponseSubject() string { if x != nil { return x.ResponseSubject } return "" } // ChatResponse is the full reply to a ChatRequest. // Subject: ai.chat.response.{request_id} (or ChatRequest.response_subject) type ChatResponse struct { state protoimpl.MessageState `protogen:"open.v1"` UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` Response string `protobuf:"bytes,2,opt,name=response,proto3" json:"response,omitempty"` ResponseText string `protobuf:"bytes,3,opt,name=response_text,json=responseText,proto3" json:"response_text,omitempty"` UsedRag bool `protobuf:"varint,4,opt,name=used_rag,json=usedRag,proto3" json:"used_rag,omitempty"` RagSources []string `protobuf:"bytes,5,rep,name=rag_sources,json=ragSources,proto3" json:"rag_sources,omitempty"` Success bool `protobuf:"varint,6,opt,name=success,proto3" json:"success,omitempty"` Audio []byte `protobuf:"bytes,7,opt,name=audio,proto3" json:"audio,omitempty"` Error string `protobuf:"bytes,8,opt,name=error,proto3" json:"error,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ChatResponse) Reset() { *x = ChatResponse{} mi := &file_messages_v1_messages_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ChatResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChatResponse) ProtoMessage() {} func (x *ChatResponse) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChatResponse.ProtoReflect.Descriptor instead. func (*ChatResponse) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{5} } func (x *ChatResponse) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *ChatResponse) GetResponse() string { if x != nil { return x.Response } return "" } func (x *ChatResponse) GetResponseText() string { if x != nil { return x.ResponseText } return "" } func (x *ChatResponse) GetUsedRag() bool { if x != nil { return x.UsedRag } return false } func (x *ChatResponse) GetRagSources() []string { if x != nil { return x.RagSources } return nil } func (x *ChatResponse) GetSuccess() bool { if x != nil { return x.Success } return false } func (x *ChatResponse) GetAudio() []byte { if x != nil { return x.Audio } return nil } func (x *ChatResponse) GetError() string { if x != nil { return x.Error } return "" } // ChatStreamChunk is one piece of a streaming LLM response. // Subject: ai.chat.response.stream.{request_id} type ChatStreamChunk struct { state protoimpl.MessageState `protogen:"open.v1"` RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` // "chunk" | "done" Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content,omitempty"` Done bool `protobuf:"varint,4,opt,name=done,proto3" json:"done,omitempty"` Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ChatStreamChunk) Reset() { *x = ChatStreamChunk{} mi := &file_messages_v1_messages_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ChatStreamChunk) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChatStreamChunk) ProtoMessage() {} func (x *ChatStreamChunk) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChatStreamChunk.ProtoReflect.Descriptor instead. func (*ChatStreamChunk) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{6} } func (x *ChatStreamChunk) GetRequestId() string { if x != nil { return x.RequestId } return "" } func (x *ChatStreamChunk) GetType() string { if x != nil { return x.Type } return "" } func (x *ChatStreamChunk) GetContent() string { if x != nil { return x.Content } return "" } func (x *ChatStreamChunk) GetDone() bool { if x != nil { return x.Done } return false } func (x *ChatStreamChunk) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } // VoiceRequest is an incoming voice-to-voice request. // Subject: ai.voice.request type VoiceRequest struct { state protoimpl.MessageState `protogen:"open.v1"` RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` Audio []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"` Language string `protobuf:"bytes,3,opt,name=language,proto3" json:"language,omitempty"` Collection string `protobuf:"bytes,4,opt,name=collection,proto3" json:"collection,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *VoiceRequest) Reset() { *x = VoiceRequest{} mi := &file_messages_v1_messages_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *VoiceRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*VoiceRequest) ProtoMessage() {} func (x *VoiceRequest) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use VoiceRequest.ProtoReflect.Descriptor instead. func (*VoiceRequest) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{7} } func (x *VoiceRequest) GetRequestId() string { if x != nil { return x.RequestId } return "" } func (x *VoiceRequest) GetAudio() []byte { if x != nil { return x.Audio } return nil } func (x *VoiceRequest) GetLanguage() string { if x != nil { return x.Language } return "" } func (x *VoiceRequest) GetCollection() string { if x != nil { return x.Collection } return "" } // DocumentSource is a single RAG search-result citation. type DocumentSource struct { state protoimpl.MessageState `protogen:"open.v1"` Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"` Score float64 `protobuf:"fixed64,2,opt,name=score,proto3" json:"score,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *DocumentSource) Reset() { *x = DocumentSource{} mi := &file_messages_v1_messages_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *DocumentSource) String() string { return protoimpl.X.MessageStringOf(x) } func (*DocumentSource) ProtoMessage() {} func (x *DocumentSource) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use DocumentSource.ProtoReflect.Descriptor instead. func (*DocumentSource) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{8} } func (x *DocumentSource) GetText() string { if x != nil { return x.Text } return "" } func (x *DocumentSource) GetScore() float64 { if x != nil { return x.Score } return 0 } // VoiceResponse is the reply to a VoiceRequest. // Subject: ai.voice.response.{request_id} type VoiceResponse struct { state protoimpl.MessageState `protogen:"open.v1"` RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` Response string `protobuf:"bytes,2,opt,name=response,proto3" json:"response,omitempty"` Audio []byte `protobuf:"bytes,3,opt,name=audio,proto3" json:"audio,omitempty"` Transcription string `protobuf:"bytes,4,opt,name=transcription,proto3" json:"transcription,omitempty"` Sources []*DocumentSource `protobuf:"bytes,5,rep,name=sources,proto3" json:"sources,omitempty"` Error string `protobuf:"bytes,6,opt,name=error,proto3" json:"error,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *VoiceResponse) Reset() { *x = VoiceResponse{} mi := &file_messages_v1_messages_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *VoiceResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*VoiceResponse) ProtoMessage() {} func (x *VoiceResponse) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use VoiceResponse.ProtoReflect.Descriptor instead. func (*VoiceResponse) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{9} } func (x *VoiceResponse) GetRequestId() string { if x != nil { return x.RequestId } return "" } func (x *VoiceResponse) GetResponse() string { if x != nil { return x.Response } return "" } func (x *VoiceResponse) GetAudio() []byte { if x != nil { return x.Audio } return nil } func (x *VoiceResponse) GetTranscription() string { if x != nil { return x.Transcription } return "" } func (x *VoiceResponse) GetSources() []*DocumentSource { if x != nil { return x.Sources } return nil } func (x *VoiceResponse) GetError() string { if x != nil { return x.Error } return "" } // TTSRequest is a text-to-speech synthesis request. // Subject: ai.voice.tts.request.{session_id} type TTSRequest struct { state protoimpl.MessageState `protogen:"open.v1"` Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"` Speaker string `protobuf:"bytes,2,opt,name=speaker,proto3" json:"speaker,omitempty"` Language string `protobuf:"bytes,3,opt,name=language,proto3" json:"language,omitempty"` SpeakerWavB64 string `protobuf:"bytes,4,opt,name=speaker_wav_b64,json=speakerWavB64,proto3" json:"speaker_wav_b64,omitempty"` Stream bool `protobuf:"varint,5,opt,name=stream,proto3" json:"stream,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *TTSRequest) Reset() { *x = TTSRequest{} mi := &file_messages_v1_messages_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *TTSRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*TTSRequest) ProtoMessage() {} func (x *TTSRequest) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TTSRequest.ProtoReflect.Descriptor instead. func (*TTSRequest) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{10} } func (x *TTSRequest) GetText() string { if x != nil { return x.Text } return "" } func (x *TTSRequest) GetSpeaker() string { if x != nil { return x.Speaker } return "" } func (x *TTSRequest) GetLanguage() string { if x != nil { return x.Language } return "" } func (x *TTSRequest) GetSpeakerWavB64() string { if x != nil { return x.SpeakerWavB64 } return "" } func (x *TTSRequest) GetStream() bool { if x != nil { return x.Stream } return false } // TTSAudioChunk is a streamed audio chunk from TTS synthesis. // Subject: ai.voice.tts.audio.{session_id} type TTSAudioChunk struct { state protoimpl.MessageState `protogen:"open.v1"` SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` ChunkIndex int32 `protobuf:"varint,2,opt,name=chunk_index,json=chunkIndex,proto3" json:"chunk_index,omitempty"` TotalChunks int32 `protobuf:"varint,3,opt,name=total_chunks,json=totalChunks,proto3" json:"total_chunks,omitempty"` Audio []byte `protobuf:"bytes,4,opt,name=audio,proto3" json:"audio,omitempty"` IsLast bool `protobuf:"varint,5,opt,name=is_last,json=isLast,proto3" json:"is_last,omitempty"` Timestamp int64 `protobuf:"varint,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"` SampleRate int32 `protobuf:"varint,7,opt,name=sample_rate,json=sampleRate,proto3" json:"sample_rate,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *TTSAudioChunk) Reset() { *x = TTSAudioChunk{} mi := &file_messages_v1_messages_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *TTSAudioChunk) String() string { return protoimpl.X.MessageStringOf(x) } func (*TTSAudioChunk) ProtoMessage() {} func (x *TTSAudioChunk) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TTSAudioChunk.ProtoReflect.Descriptor instead. func (*TTSAudioChunk) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{11} } func (x *TTSAudioChunk) GetSessionId() string { if x != nil { return x.SessionId } return "" } func (x *TTSAudioChunk) GetChunkIndex() int32 { if x != nil { return x.ChunkIndex } return 0 } func (x *TTSAudioChunk) GetTotalChunks() int32 { if x != nil { return x.TotalChunks } return 0 } func (x *TTSAudioChunk) GetAudio() []byte { if x != nil { return x.Audio } return nil } func (x *TTSAudioChunk) GetIsLast() bool { if x != nil { return x.IsLast } return false } func (x *TTSAudioChunk) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } func (x *TTSAudioChunk) GetSampleRate() int32 { if x != nil { return x.SampleRate } return 0 } // TTSFullResponse is a non-streamed TTS response (whole audio blob). // Subject: ai.voice.tts.audio.{session_id} type TTSFullResponse struct { state protoimpl.MessageState `protogen:"open.v1"` SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` Audio []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"` Timestamp int64 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` SampleRate int32 `protobuf:"varint,4,opt,name=sample_rate,json=sampleRate,proto3" json:"sample_rate,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *TTSFullResponse) Reset() { *x = TTSFullResponse{} mi := &file_messages_v1_messages_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *TTSFullResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*TTSFullResponse) ProtoMessage() {} func (x *TTSFullResponse) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TTSFullResponse.ProtoReflect.Descriptor instead. func (*TTSFullResponse) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{12} } func (x *TTSFullResponse) GetSessionId() string { if x != nil { return x.SessionId } return "" } func (x *TTSFullResponse) GetAudio() []byte { if x != nil { return x.Audio } return nil } func (x *TTSFullResponse) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } func (x *TTSFullResponse) GetSampleRate() int32 { if x != nil { return x.SampleRate } return 0 } // TTSStatus is a TTS processing status update. // Subject: ai.voice.tts.status.{session_id} type TTSStatus struct { state protoimpl.MessageState `protogen:"open.v1"` SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *TTSStatus) Reset() { *x = TTSStatus{} mi := &file_messages_v1_messages_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *TTSStatus) String() string { return protoimpl.X.MessageStringOf(x) } func (*TTSStatus) ProtoMessage() {} func (x *TTSStatus) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TTSStatus.ProtoReflect.Descriptor instead. func (*TTSStatus) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{13} } func (x *TTSStatus) GetSessionId() string { if x != nil { return x.SessionId } return "" } func (x *TTSStatus) GetStatus() string { if x != nil { return x.Status } return "" } func (x *TTSStatus) GetMessage() string { if x != nil { return x.Message } return "" } func (x *TTSStatus) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } // TTSVoiceInfo is summary info about a custom voice. type TTSVoiceInfo struct { state protoimpl.MessageState `protogen:"open.v1"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Language string `protobuf:"bytes,2,opt,name=language,proto3" json:"language,omitempty"` ModelType string `protobuf:"bytes,3,opt,name=model_type,json=modelType,proto3" json:"model_type,omitempty"` CreatedAt string `protobuf:"bytes,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *TTSVoiceInfo) Reset() { *x = TTSVoiceInfo{} mi := &file_messages_v1_messages_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *TTSVoiceInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*TTSVoiceInfo) ProtoMessage() {} func (x *TTSVoiceInfo) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TTSVoiceInfo.ProtoReflect.Descriptor instead. func (*TTSVoiceInfo) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{14} } func (x *TTSVoiceInfo) GetName() string { if x != nil { return x.Name } return "" } func (x *TTSVoiceInfo) GetLanguage() string { if x != nil { return x.Language } return "" } func (x *TTSVoiceInfo) GetModelType() string { if x != nil { return x.ModelType } return "" } func (x *TTSVoiceInfo) GetCreatedAt() string { if x != nil { return x.CreatedAt } return "" } // TTSVoiceListResponse is the reply to a voice list request. // Subject: ai.voice.tts.voices.list (request-reply) type TTSVoiceListResponse struct { state protoimpl.MessageState `protogen:"open.v1"` DefaultSpeaker string `protobuf:"bytes,1,opt,name=default_speaker,json=defaultSpeaker,proto3" json:"default_speaker,omitempty"` CustomVoices []*TTSVoiceInfo `protobuf:"bytes,2,rep,name=custom_voices,json=customVoices,proto3" json:"custom_voices,omitempty"` LastRefresh int64 `protobuf:"varint,3,opt,name=last_refresh,json=lastRefresh,proto3" json:"last_refresh,omitempty"` Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *TTSVoiceListResponse) Reset() { *x = TTSVoiceListResponse{} mi := &file_messages_v1_messages_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *TTSVoiceListResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*TTSVoiceListResponse) ProtoMessage() {} func (x *TTSVoiceListResponse) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TTSVoiceListResponse.ProtoReflect.Descriptor instead. func (*TTSVoiceListResponse) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{15} } func (x *TTSVoiceListResponse) GetDefaultSpeaker() string { if x != nil { return x.DefaultSpeaker } return "" } func (x *TTSVoiceListResponse) GetCustomVoices() []*TTSVoiceInfo { if x != nil { return x.CustomVoices } return nil } func (x *TTSVoiceListResponse) GetLastRefresh() int64 { if x != nil { return x.LastRefresh } return 0 } func (x *TTSVoiceListResponse) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } // TTSVoiceRefreshResponse is the reply to a voice refresh request. // Subject: ai.voice.tts.voices.refresh (request-reply) type TTSVoiceRefreshResponse struct { state protoimpl.MessageState `protogen:"open.v1"` Count int32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` CustomVoices []*TTSVoiceInfo `protobuf:"bytes,2,rep,name=custom_voices,json=customVoices,proto3" json:"custom_voices,omitempty"` Timestamp int64 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *TTSVoiceRefreshResponse) Reset() { *x = TTSVoiceRefreshResponse{} mi := &file_messages_v1_messages_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *TTSVoiceRefreshResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*TTSVoiceRefreshResponse) ProtoMessage() {} func (x *TTSVoiceRefreshResponse) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TTSVoiceRefreshResponse.ProtoReflect.Descriptor instead. func (*TTSVoiceRefreshResponse) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{16} } func (x *TTSVoiceRefreshResponse) GetCount() int32 { if x != nil { return x.Count } return 0 } func (x *TTSVoiceRefreshResponse) GetCustomVoices() []*TTSVoiceInfo { if x != nil { return x.CustomVoices } return nil } func (x *TTSVoiceRefreshResponse) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } // STTStreamMessage is any message on the ai.voice.stream.{session_id} subject. type STTStreamMessage struct { state protoimpl.MessageState `protogen:"open.v1"` Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` // "start" | "chunk" | "state_change" | "end" Audio []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"` State string `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"` SpeakerId string `protobuf:"bytes,4,opt,name=speaker_id,json=speakerId,proto3" json:"speaker_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *STTStreamMessage) Reset() { *x = STTStreamMessage{} mi := &file_messages_v1_messages_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *STTStreamMessage) String() string { return protoimpl.X.MessageStringOf(x) } func (*STTStreamMessage) ProtoMessage() {} func (x *STTStreamMessage) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[17] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use STTStreamMessage.ProtoReflect.Descriptor instead. func (*STTStreamMessage) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{17} } func (x *STTStreamMessage) GetType() string { if x != nil { return x.Type } return "" } func (x *STTStreamMessage) GetAudio() []byte { if x != nil { return x.Audio } return nil } func (x *STTStreamMessage) GetState() string { if x != nil { return x.State } return "" } func (x *STTStreamMessage) GetSpeakerId() string { if x != nil { return x.SpeakerId } return "" } // STTTranscription is the transcription result published by the STT module. // Subject: ai.voice.transcription.{session_id} type STTTranscription struct { state protoimpl.MessageState `protogen:"open.v1"` SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` Transcript string `protobuf:"bytes,2,opt,name=transcript,proto3" json:"transcript,omitempty"` Sequence int32 `protobuf:"varint,3,opt,name=sequence,proto3" json:"sequence,omitempty"` IsPartial bool `protobuf:"varint,4,opt,name=is_partial,json=isPartial,proto3" json:"is_partial,omitempty"` IsFinal bool `protobuf:"varint,5,opt,name=is_final,json=isFinal,proto3" json:"is_final,omitempty"` Timestamp int64 `protobuf:"varint,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"` SpeakerId string `protobuf:"bytes,7,opt,name=speaker_id,json=speakerId,proto3" json:"speaker_id,omitempty"` HasVoiceActivity bool `protobuf:"varint,8,opt,name=has_voice_activity,json=hasVoiceActivity,proto3" json:"has_voice_activity,omitempty"` State string `protobuf:"bytes,9,opt,name=state,proto3" json:"state,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *STTTranscription) Reset() { *x = STTTranscription{} mi := &file_messages_v1_messages_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *STTTranscription) String() string { return protoimpl.X.MessageStringOf(x) } func (*STTTranscription) ProtoMessage() {} func (x *STTTranscription) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use STTTranscription.ProtoReflect.Descriptor instead. func (*STTTranscription) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{18} } func (x *STTTranscription) GetSessionId() string { if x != nil { return x.SessionId } return "" } func (x *STTTranscription) GetTranscript() string { if x != nil { return x.Transcript } return "" } func (x *STTTranscription) GetSequence() int32 { if x != nil { return x.Sequence } return 0 } func (x *STTTranscription) GetIsPartial() bool { if x != nil { return x.IsPartial } return false } func (x *STTTranscription) GetIsFinal() bool { if x != nil { return x.IsFinal } return false } func (x *STTTranscription) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } func (x *STTTranscription) GetSpeakerId() string { if x != nil { return x.SpeakerId } return "" } func (x *STTTranscription) GetHasVoiceActivity() bool { if x != nil { return x.HasVoiceActivity } return false } func (x *STTTranscription) GetState() string { if x != nil { return x.State } return "" } // STTInterrupt is published when the STT module detects a user interrupt. // Subject: ai.voice.transcription.{session_id} type STTInterrupt struct { state protoimpl.MessageState `protogen:"open.v1"` SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` // "interrupt" Timestamp int64 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` SpeakerId string `protobuf:"bytes,4,opt,name=speaker_id,json=speakerId,proto3" json:"speaker_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *STTInterrupt) Reset() { *x = STTInterrupt{} mi := &file_messages_v1_messages_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *STTInterrupt) String() string { return protoimpl.X.MessageStringOf(x) } func (*STTInterrupt) ProtoMessage() {} func (x *STTInterrupt) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use STTInterrupt.ProtoReflect.Descriptor instead. func (*STTInterrupt) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{19} } func (x *STTInterrupt) GetSessionId() string { if x != nil { return x.SessionId } return "" } func (x *STTInterrupt) GetType() string { if x != nil { return x.Type } return "" } func (x *STTInterrupt) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } func (x *STTInterrupt) GetSpeakerId() string { if x != nil { return x.SpeakerId } return "" } // PipelineTrigger is the request to start a pipeline. // Subject: ai.pipeline.trigger type PipelineTrigger struct { state protoimpl.MessageState `protogen:"open.v1"` RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` Pipeline string `protobuf:"bytes,2,opt,name=pipeline,proto3" json:"pipeline,omitempty"` // Protobuf Struct could be used here, but a simple string map covers // all current use-cases and avoids a google/protobuf import. Parameters map[string]string `protobuf:"bytes,3,rep,name=parameters,proto3" json:"parameters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PipelineTrigger) Reset() { *x = PipelineTrigger{} mi := &file_messages_v1_messages_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PipelineTrigger) String() string { return protoimpl.X.MessageStringOf(x) } func (*PipelineTrigger) ProtoMessage() {} func (x *PipelineTrigger) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PipelineTrigger.ProtoReflect.Descriptor instead. func (*PipelineTrigger) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{20} } func (x *PipelineTrigger) GetRequestId() string { if x != nil { return x.RequestId } return "" } func (x *PipelineTrigger) GetPipeline() string { if x != nil { return x.Pipeline } return "" } func (x *PipelineTrigger) GetParameters() map[string]string { if x != nil { return x.Parameters } return nil } // PipelineStatus is the response / status update for a pipeline run. // Subject: ai.pipeline.status.{request_id} type PipelineStatus struct { state protoimpl.MessageState `protogen:"open.v1"` RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` RunId string `protobuf:"bytes,3,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` Engine string `protobuf:"bytes,4,opt,name=engine,proto3" json:"engine,omitempty"` Pipeline string `protobuf:"bytes,5,opt,name=pipeline,proto3" json:"pipeline,omitempty"` SubmittedAt string `protobuf:"bytes,6,opt,name=submitted_at,json=submittedAt,proto3" json:"submitted_at,omitempty"` Error string `protobuf:"bytes,7,opt,name=error,proto3" json:"error,omitempty"` AvailablePipelines []string `protobuf:"bytes,8,rep,name=available_pipelines,json=availablePipelines,proto3" json:"available_pipelines,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PipelineStatus) Reset() { *x = PipelineStatus{} mi := &file_messages_v1_messages_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PipelineStatus) String() string { return protoimpl.X.MessageStringOf(x) } func (*PipelineStatus) ProtoMessage() {} func (x *PipelineStatus) ProtoReflect() protoreflect.Message { mi := &file_messages_v1_messages_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PipelineStatus.ProtoReflect.Descriptor instead. func (*PipelineStatus) Descriptor() ([]byte, []int) { return file_messages_v1_messages_proto_rawDescGZIP(), []int{21} } func (x *PipelineStatus) GetRequestId() string { if x != nil { return x.RequestId } return "" } func (x *PipelineStatus) GetStatus() string { if x != nil { return x.Status } return "" } func (x *PipelineStatus) GetRunId() string { if x != nil { return x.RunId } return "" } func (x *PipelineStatus) GetEngine() string { if x != nil { return x.Engine } return "" } func (x *PipelineStatus) GetPipeline() string { if x != nil { return x.Pipeline } return "" } func (x *PipelineStatus) GetSubmittedAt() string { if x != nil { return x.SubmittedAt } return "" } func (x *PipelineStatus) GetError() string { if x != nil { return x.Error } return "" } func (x *PipelineStatus) GetAvailablePipelines() []string { if x != nil { return x.AvailablePipelines } return nil } var File_messages_v1_messages_proto protoreflect.FileDescriptor const file_messages_v1_messages_proto_rawDesc = "" + "\n" + "\x1amessages/v1/messages.proto\x12\vmessages.v1\"S\n" + "\rErrorResponse\x12\x14\n" + "\x05error\x18\x01 \x01(\bR\x05error\x12\x18\n" + "\amessage\x18\x02 \x01(\tR\amessage\x12\x12\n" + "\x04type\x18\x03 \x01(\tR\x04type\"\x95\x01\n" + "\n" + "LoginEvent\x12\x17\n" + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x1a\n" + "\busername\x18\x02 \x01(\tR\busername\x12\x1a\n" + "\bnickname\x18\x03 \x01(\tR\bnickname\x12\x18\n" + "\apremium\x18\x04 \x01(\bR\apremium\x12\x1c\n" + "\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\"|\n" + "\x0fGreetingRequest\x12\x17\n" + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x1a\n" + "\busername\x18\x02 \x01(\tR\busername\x12\x1a\n" + "\bnickname\x18\x03 \x01(\tR\bnickname\x12\x18\n" + "\apremium\x18\x04 \x01(\bR\apremium\"G\n" + "\x10GreetingResponse\x12\x17\n" + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x1a\n" + "\bgreeting\x18\x02 \x01(\tR\bgreeting\"\xc2\x03\n" + "\vChatRequest\x12\x1d\n" + "\n" + "request_id\x18\x01 \x01(\tR\trequestId\x12\x17\n" + "\auser_id\x18\x02 \x01(\tR\x06userId\x12\x1a\n" + "\busername\x18\x03 \x01(\tR\busername\x12\x18\n" + "\amessage\x18\x04 \x01(\tR\amessage\x12\x14\n" + "\x05query\x18\x05 \x01(\tR\x05query\x12\x18\n" + "\apremium\x18\x06 \x01(\bR\apremium\x12\x1d\n" + "\n" + "enable_rag\x18\a \x01(\bR\tenableRag\x12'\n" + "\x0fenable_reranker\x18\b \x01(\bR\x0eenableReranker\x12)\n" + "\x10enable_streaming\x18\t \x01(\bR\x0fenableStreaming\x12\x13\n" + "\x05top_k\x18\n" + " \x01(\x05R\x04topK\x12\x1e\n" + "\n" + "collection\x18\v \x01(\tR\n" + "collection\x12\x1d\n" + "\n" + "enable_tts\x18\f \x01(\bR\tenableTts\x12#\n" + "\rsystem_prompt\x18\r \x01(\tR\fsystemPrompt\x12)\n" + "\x10response_subject\x18\x0e \x01(\tR\x0fresponseSubject\"\xea\x01\n" + "\fChatResponse\x12\x17\n" + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x1a\n" + "\bresponse\x18\x02 \x01(\tR\bresponse\x12#\n" + "\rresponse_text\x18\x03 \x01(\tR\fresponseText\x12\x19\n" + "\bused_rag\x18\x04 \x01(\bR\ausedRag\x12\x1f\n" + "\vrag_sources\x18\x05 \x03(\tR\n" + "ragSources\x12\x18\n" + "\asuccess\x18\x06 \x01(\bR\asuccess\x12\x14\n" + "\x05audio\x18\a \x01(\fR\x05audio\x12\x14\n" + "\x05error\x18\b \x01(\tR\x05error\"\x90\x01\n" + "\x0fChatStreamChunk\x12\x1d\n" + "\n" + "request_id\x18\x01 \x01(\tR\trequestId\x12\x12\n" + "\x04type\x18\x02 \x01(\tR\x04type\x12\x18\n" + "\acontent\x18\x03 \x01(\tR\acontent\x12\x12\n" + "\x04done\x18\x04 \x01(\bR\x04done\x12\x1c\n" + "\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\"\x7f\n" + "\fVoiceRequest\x12\x1d\n" + "\n" + "request_id\x18\x01 \x01(\tR\trequestId\x12\x14\n" + "\x05audio\x18\x02 \x01(\fR\x05audio\x12\x1a\n" + "\blanguage\x18\x03 \x01(\tR\blanguage\x12\x1e\n" + "\n" + "collection\x18\x04 \x01(\tR\n" + "collection\":\n" + "\x0eDocumentSource\x12\x12\n" + "\x04text\x18\x01 \x01(\tR\x04text\x12\x14\n" + "\x05score\x18\x02 \x01(\x01R\x05score\"\xd3\x01\n" + "\rVoiceResponse\x12\x1d\n" + "\n" + "request_id\x18\x01 \x01(\tR\trequestId\x12\x1a\n" + "\bresponse\x18\x02 \x01(\tR\bresponse\x12\x14\n" + "\x05audio\x18\x03 \x01(\fR\x05audio\x12$\n" + "\rtranscription\x18\x04 \x01(\tR\rtranscription\x125\n" + "\asources\x18\x05 \x03(\v2\x1b.messages.v1.DocumentSourceR\asources\x12\x14\n" + "\x05error\x18\x06 \x01(\tR\x05error\"\x96\x01\n" + "\n" + "TTSRequest\x12\x12\n" + "\x04text\x18\x01 \x01(\tR\x04text\x12\x18\n" + "\aspeaker\x18\x02 \x01(\tR\aspeaker\x12\x1a\n" + "\blanguage\x18\x03 \x01(\tR\blanguage\x12&\n" + "\x0fspeaker_wav_b64\x18\x04 \x01(\tR\rspeakerWavB64\x12\x16\n" + "\x06stream\x18\x05 \x01(\bR\x06stream\"\xe0\x01\n" + "\rTTSAudioChunk\x12\x1d\n" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x12\x1f\n" + "\vchunk_index\x18\x02 \x01(\x05R\n" + "chunkIndex\x12!\n" + "\ftotal_chunks\x18\x03 \x01(\x05R\vtotalChunks\x12\x14\n" + "\x05audio\x18\x04 \x01(\fR\x05audio\x12\x17\n" + "\ais_last\x18\x05 \x01(\bR\x06isLast\x12\x1c\n" + "\ttimestamp\x18\x06 \x01(\x03R\ttimestamp\x12\x1f\n" + "\vsample_rate\x18\a \x01(\x05R\n" + "sampleRate\"\x85\x01\n" + "\x0fTTSFullResponse\x12\x1d\n" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x12\x14\n" + "\x05audio\x18\x02 \x01(\fR\x05audio\x12\x1c\n" + "\ttimestamp\x18\x03 \x01(\x03R\ttimestamp\x12\x1f\n" + "\vsample_rate\x18\x04 \x01(\x05R\n" + "sampleRate\"z\n" + "\tTTSStatus\x12\x1d\n" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x12\x16\n" + "\x06status\x18\x02 \x01(\tR\x06status\x12\x18\n" + "\amessage\x18\x03 \x01(\tR\amessage\x12\x1c\n" + "\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\"|\n" + "\fTTSVoiceInfo\x12\x12\n" + "\x04name\x18\x01 \x01(\tR\x04name\x12\x1a\n" + "\blanguage\x18\x02 \x01(\tR\blanguage\x12\x1d\n" + "\n" + "model_type\x18\x03 \x01(\tR\tmodelType\x12\x1d\n" + "\n" + "created_at\x18\x04 \x01(\tR\tcreatedAt\"\xc0\x01\n" + "\x14TTSVoiceListResponse\x12'\n" + "\x0fdefault_speaker\x18\x01 \x01(\tR\x0edefaultSpeaker\x12>\n" + "\rcustom_voices\x18\x02 \x03(\v2\x19.messages.v1.TTSVoiceInfoR\fcustomVoices\x12!\n" + "\flast_refresh\x18\x03 \x01(\x03R\vlastRefresh\x12\x1c\n" + "\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\"\x8d\x01\n" + "\x17TTSVoiceRefreshResponse\x12\x14\n" + "\x05count\x18\x01 \x01(\x05R\x05count\x12>\n" + "\rcustom_voices\x18\x02 \x03(\v2\x19.messages.v1.TTSVoiceInfoR\fcustomVoices\x12\x1c\n" + "\ttimestamp\x18\x03 \x01(\x03R\ttimestamp\"q\n" + "\x10STTStreamMessage\x12\x12\n" + "\x04type\x18\x01 \x01(\tR\x04type\x12\x14\n" + "\x05audio\x18\x02 \x01(\fR\x05audio\x12\x14\n" + "\x05state\x18\x03 \x01(\tR\x05state\x12\x1d\n" + "\n" + "speaker_id\x18\x04 \x01(\tR\tspeakerId\"\xa8\x02\n" + "\x10STTTranscription\x12\x1d\n" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x12\x1e\n" + "\n" + "transcript\x18\x02 \x01(\tR\n" + "transcript\x12\x1a\n" + "\bsequence\x18\x03 \x01(\x05R\bsequence\x12\x1d\n" + "\n" + "is_partial\x18\x04 \x01(\bR\tisPartial\x12\x19\n" + "\bis_final\x18\x05 \x01(\bR\aisFinal\x12\x1c\n" + "\ttimestamp\x18\x06 \x01(\x03R\ttimestamp\x12\x1d\n" + "\n" + "speaker_id\x18\a \x01(\tR\tspeakerId\x12,\n" + "\x12has_voice_activity\x18\b \x01(\bR\x10hasVoiceActivity\x12\x14\n" + "\x05state\x18\t \x01(\tR\x05state\"~\n" + "\fSTTInterrupt\x12\x1d\n" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x12\x12\n" + "\x04type\x18\x02 \x01(\tR\x04type\x12\x1c\n" + "\ttimestamp\x18\x03 \x01(\x03R\ttimestamp\x12\x1d\n" + "\n" + "speaker_id\x18\x04 \x01(\tR\tspeakerId\"\xd9\x01\n" + "\x0fPipelineTrigger\x12\x1d\n" + "\n" + "request_id\x18\x01 \x01(\tR\trequestId\x12\x1a\n" + "\bpipeline\x18\x02 \x01(\tR\bpipeline\x12L\n" + "\n" + "parameters\x18\x03 \x03(\v2,.messages.v1.PipelineTrigger.ParametersEntryR\n" + "parameters\x1a=\n" + "\x0fParametersEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xfc\x01\n" + "\x0ePipelineStatus\x12\x1d\n" + "\n" + "request_id\x18\x01 \x01(\tR\trequestId\x12\x16\n" + "\x06status\x18\x02 \x01(\tR\x06status\x12\x15\n" + "\x06run_id\x18\x03 \x01(\tR\x05runId\x12\x16\n" + "\x06engine\x18\x04 \x01(\tR\x06engine\x12\x1a\n" + "\bpipeline\x18\x05 \x01(\tR\bpipeline\x12!\n" + "\fsubmitted_at\x18\x06 \x01(\tR\vsubmittedAt\x12\x14\n" + "\x05error\x18\a \x01(\tR\x05error\x12/\n" + "\x13available_pipelines\x18\b \x03(\tR\x12availablePipelinesBBZ@git.daviestechlabs.io/daviestechlabs/handler-base/gen/messagespbb\x06proto3" var ( file_messages_v1_messages_proto_rawDescOnce sync.Once file_messages_v1_messages_proto_rawDescData []byte ) func file_messages_v1_messages_proto_rawDescGZIP() []byte { file_messages_v1_messages_proto_rawDescOnce.Do(func() { file_messages_v1_messages_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_messages_v1_messages_proto_rawDesc), len(file_messages_v1_messages_proto_rawDesc))) }) return file_messages_v1_messages_proto_rawDescData } var file_messages_v1_messages_proto_msgTypes = make([]protoimpl.MessageInfo, 23) var file_messages_v1_messages_proto_goTypes = []any{ (*ErrorResponse)(nil), // 0: messages.v1.ErrorResponse (*LoginEvent)(nil), // 1: messages.v1.LoginEvent (*GreetingRequest)(nil), // 2: messages.v1.GreetingRequest (*GreetingResponse)(nil), // 3: messages.v1.GreetingResponse (*ChatRequest)(nil), // 4: messages.v1.ChatRequest (*ChatResponse)(nil), // 5: messages.v1.ChatResponse (*ChatStreamChunk)(nil), // 6: messages.v1.ChatStreamChunk (*VoiceRequest)(nil), // 7: messages.v1.VoiceRequest (*DocumentSource)(nil), // 8: messages.v1.DocumentSource (*VoiceResponse)(nil), // 9: messages.v1.VoiceResponse (*TTSRequest)(nil), // 10: messages.v1.TTSRequest (*TTSAudioChunk)(nil), // 11: messages.v1.TTSAudioChunk (*TTSFullResponse)(nil), // 12: messages.v1.TTSFullResponse (*TTSStatus)(nil), // 13: messages.v1.TTSStatus (*TTSVoiceInfo)(nil), // 14: messages.v1.TTSVoiceInfo (*TTSVoiceListResponse)(nil), // 15: messages.v1.TTSVoiceListResponse (*TTSVoiceRefreshResponse)(nil), // 16: messages.v1.TTSVoiceRefreshResponse (*STTStreamMessage)(nil), // 17: messages.v1.STTStreamMessage (*STTTranscription)(nil), // 18: messages.v1.STTTranscription (*STTInterrupt)(nil), // 19: messages.v1.STTInterrupt (*PipelineTrigger)(nil), // 20: messages.v1.PipelineTrigger (*PipelineStatus)(nil), // 21: messages.v1.PipelineStatus nil, // 22: messages.v1.PipelineTrigger.ParametersEntry } var file_messages_v1_messages_proto_depIdxs = []int32{ 8, // 0: messages.v1.VoiceResponse.sources:type_name -> messages.v1.DocumentSource 14, // 1: messages.v1.TTSVoiceListResponse.custom_voices:type_name -> messages.v1.TTSVoiceInfo 14, // 2: messages.v1.TTSVoiceRefreshResponse.custom_voices:type_name -> messages.v1.TTSVoiceInfo 22, // 3: messages.v1.PipelineTrigger.parameters:type_name -> messages.v1.PipelineTrigger.ParametersEntry 4, // [4:4] is the sub-list for method output_type 4, // [4:4] is the sub-list for method input_type 4, // [4:4] is the sub-list for extension type_name 4, // [4:4] is the sub-list for extension extendee 0, // [0:4] is the sub-list for field type_name } func init() { file_messages_v1_messages_proto_init() } func file_messages_v1_messages_proto_init() { if File_messages_v1_messages_proto != nil { return } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_messages_v1_messages_proto_rawDesc), len(file_messages_v1_messages_proto_rawDesc)), NumEnums: 0, NumMessages: 23, NumExtensions: 0, NumServices: 0, }, GoTypes: file_messages_v1_messages_proto_goTypes, DependencyIndexes: file_messages_v1_messages_proto_depIdxs, MessageInfos: file_messages_v1_messages_proto_msgTypes, }.Build() File_messages_v1_messages_proto = out.File file_messages_v1_messages_proto_goTypes = nil file_messages_v1_messages_proto_depIdxs = nil }