This commit is contained in:
Manfred Touron
2017-05-18 18:54:23 +02:00
parent dc386661ca
commit 5448f25fd6
645 changed files with 55908 additions and 33297 deletions

View File

@@ -1065,11 +1065,8 @@ type Document struct {
// The language of the document (if not specified, the language is
// automatically detected). Both ISO and BCP-47 language codes are
// accepted.<br>
// **Current Language Restrictions:**
//
// * Only English, Spanish, and Japanese textual content
// are supported, with the following additional restriction:
// * `analyzeSentiment` only supports English text.
// [Language Support](https://cloud.google.com/natural-language/docs/languages)
// lists currently supported languages for each API method.
// If the language (either specified by the caller or automatically detected)
// is not supported by the called API method, an `INVALID_ARGUMENT` error
// is returned.
@@ -1343,7 +1340,7 @@ type Sentiment struct {
// negative).
Magnitude float32 `protobuf:"fixed32,2,opt,name=magnitude" json:"magnitude,omitempty"`
// Sentiment score between -1.0 (negative sentiment) and 1.0
// (positive sentiment.)
// (positive sentiment).
Score float32 `protobuf:"fixed32,3,opt,name=score" json:"score,omitempty"`
}
@@ -1576,8 +1573,7 @@ func (m *TextSpan) GetBeginOffset() int32 {
// The sentiment analysis request message.
type AnalyzeSentimentRequest struct {
// Input document. Currently, `analyzeSentiment` only supports English text
// ([Document.language][google.cloud.language.v1.Document.language]="EN").
// Input document.
Document *Document `protobuf:"bytes,1,opt,name=document" json:"document,omitempty"`
// The encoding type used by the API to calculate sentence offsets.
EncodingType EncodingType `protobuf:"varint,2,opt,name=encoding_type,json=encodingType,enum=google.cloud.language.v1.EncodingType" json:"encoding_type,omitempty"`
@@ -1608,7 +1604,7 @@ type AnalyzeSentimentResponse struct {
DocumentSentiment *Sentiment `protobuf:"bytes,1,opt,name=document_sentiment,json=documentSentiment" json:"document_sentiment,omitempty"`
// The language of the text, which will be the same as the language specified
// in the request or, if not specified, the automatically-detected language.
// See `Document.language` field for more details.
// See [Document.language][google.cloud.language.v1.Document.language] field for more details.
Language string `protobuf:"bytes,2,opt,name=language" json:"language,omitempty"`
// The sentiment for all the sentences in the document.
Sentences []*Sentence `protobuf:"bytes,3,rep,name=sentences" json:"sentences,omitempty"`
@@ -1673,7 +1669,7 @@ type AnalyzeEntitiesResponse struct {
Entities []*Entity `protobuf:"bytes,1,rep,name=entities" json:"entities,omitempty"`
// The language of the text, which will be the same as the language specified
// in the request or, if not specified, the automatically-detected language.
// See `Document.language` field for more details.
// See [Document.language][google.cloud.language.v1.Document.language] field for more details.
Language string `protobuf:"bytes,2,opt,name=language" json:"language,omitempty"`
}
@@ -1731,7 +1727,7 @@ type AnalyzeSyntaxResponse struct {
Tokens []*Token `protobuf:"bytes,2,rep,name=tokens" json:"tokens,omitempty"`
// The language of the text, which will be the same as the language specified
// in the request or, if not specified, the automatically-detected language.
// See `Document.language` field for more details.
// See [Document.language][google.cloud.language.v1.Document.language] field for more details.
Language string `protobuf:"bytes,3,opt,name=language" json:"language,omitempty"`
}
@@ -1855,7 +1851,7 @@ type AnnotateTextResponse struct {
DocumentSentiment *Sentiment `protobuf:"bytes,4,opt,name=document_sentiment,json=documentSentiment" json:"document_sentiment,omitempty"`
// The language of the text, which will be the same as the language specified
// in the request or, if not specified, the automatically-detected language.
// See `Document.language` field for more details.
// See [Document.language][google.cloud.language.v1.Document.language] field for more details.
Language string `protobuf:"bytes,5,opt,name=language" json:"language,omitempty"`
}
@@ -1950,8 +1946,9 @@ const _ = grpc.SupportPackageIsVersion4
type LanguageServiceClient interface {
// Analyzes the sentiment of the provided text.
AnalyzeSentiment(ctx context.Context, in *AnalyzeSentimentRequest, opts ...grpc.CallOption) (*AnalyzeSentimentResponse, error)
// Finds named entities (currently finds proper names) in the text,
// entity types, salience, mentions for each entity, and other properties.
// Finds named entities (currently proper names and common nouns) in the text
// along with entity types, salience, mentions for each entity, and
// other properties.
AnalyzeEntities(ctx context.Context, in *AnalyzeEntitiesRequest, opts ...grpc.CallOption) (*AnalyzeEntitiesResponse, error)
// Analyzes the syntax of the text and provides sentence boundaries and
// tokenization along with part of speech tags, dependency trees, and other
@@ -2011,8 +2008,9 @@ func (c *languageServiceClient) AnnotateText(ctx context.Context, in *AnnotateTe
type LanguageServiceServer interface {
// Analyzes the sentiment of the provided text.
AnalyzeSentiment(context.Context, *AnalyzeSentimentRequest) (*AnalyzeSentimentResponse, error)
// Finds named entities (currently finds proper names) in the text,
// entity types, salience, mentions for each entity, and other properties.
// Finds named entities (currently proper names and common nouns) in the text
// along with entity types, salience, mentions for each entity, and
// other properties.
AnalyzeEntities(context.Context, *AnalyzeEntitiesRequest) (*AnalyzeEntitiesResponse, error)
// Analyzes the syntax of the text and provides sentence boundaries and
// tokenization along with part of speech tags, dependency trees, and other

View File

@@ -1065,11 +1065,8 @@ type Document struct {
// The language of the document (if not specified, the language is
// automatically detected). Both ISO and BCP-47 language codes are
// accepted.<br>
// **Current Language Restrictions:**
//
// * Only English, Spanish, and Japanese textual content
// are supported, with the following additional restriction:
// * `analyzeSentiment` only supports English text.
// [Language Support](https://cloud.google.com/natural-language/docs/languages)
// lists currently supported languages for each API method.
// If the language (either specified by the caller or automatically detected)
// is not supported by the called API method, an `INVALID_ARGUMENT` error
// is returned.
@@ -1347,7 +1344,7 @@ type Sentiment struct {
// negative).
Magnitude float32 `protobuf:"fixed32,2,opt,name=magnitude" json:"magnitude,omitempty"`
// Sentiment score between -1.0 (negative sentiment) and 1.0
// (positive sentiment.)
// (positive sentiment).
Score float32 `protobuf:"fixed32,3,opt,name=score" json:"score,omitempty"`
}
@@ -1583,8 +1580,7 @@ func (m *TextSpan) GetBeginOffset() int32 {
// The sentiment analysis request message.
type AnalyzeSentimentRequest struct {
// Input document. Currently, `analyzeSentiment` only supports English text
// ([Document.language][google.cloud.language.v1beta1.Document.language]="EN").
// Input document.
Document *Document `protobuf:"bytes,1,opt,name=document" json:"document,omitempty"`
// The encoding type used by the API to calculate sentence offsets for the
// sentence sentiment.
@@ -1616,6 +1612,7 @@ type AnalyzeSentimentResponse struct {
DocumentSentiment *Sentiment `protobuf:"bytes,1,opt,name=document_sentiment,json=documentSentiment" json:"document_sentiment,omitempty"`
// The language of the text, which will be the same as the language specified
// in the request or, if not specified, the automatically-detected language.
// See [Document.language][google.cloud.language.v1beta1.Document.language] field for more details.
Language string `protobuf:"bytes,2,opt,name=language" json:"language,omitempty"`
// The sentiment for all the sentences in the document.
Sentences []*Sentence `protobuf:"bytes,3,rep,name=sentences" json:"sentences,omitempty"`
@@ -1957,8 +1954,9 @@ const _ = grpc.SupportPackageIsVersion4
type LanguageServiceClient interface {
// Analyzes the sentiment of the provided text.
AnalyzeSentiment(ctx context.Context, in *AnalyzeSentimentRequest, opts ...grpc.CallOption) (*AnalyzeSentimentResponse, error)
// Finds named entities (currently finds proper names) in the text,
// entity types, salience, mentions for each entity, and other properties.
// Finds named entities (currently proper names and common nouns) in the text
// along with entity types, salience, mentions for each entity, and
// other properties.
AnalyzeEntities(ctx context.Context, in *AnalyzeEntitiesRequest, opts ...grpc.CallOption) (*AnalyzeEntitiesResponse, error)
// Analyzes the syntax of the text and provides sentence boundaries and
// tokenization along with part of speech tags, dependency trees, and other
@@ -2018,8 +2016,9 @@ func (c *languageServiceClient) AnnotateText(ctx context.Context, in *AnnotateTe
type LanguageServiceServer interface {
// Analyzes the sentiment of the provided text.
AnalyzeSentiment(context.Context, *AnalyzeSentimentRequest) (*AnalyzeSentimentResponse, error)
// Finds named entities (currently finds proper names) in the text,
// entity types, salience, mentions for each entity, and other properties.
// Finds named entities (currently proper names and common nouns) in the text
// along with entity types, salience, mentions for each entity, and
// other properties.
AnalyzeEntities(context.Context, *AnalyzeEntitiesRequest) (*AnalyzeEntitiesResponse, error)
// Analyzes the syntax of the text and provides sentence boundaries and
// tokenization along with part of speech tags, dependency trees, and other

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -31,7 +31,8 @@ import fmt "fmt"
import math "math"
import _ "google.golang.org/genproto/googleapis/api/annotations"
import google_longrunning "google.golang.org/genproto/googleapis/longrunning"
import google_protobuf3 "github.com/golang/protobuf/ptypes/timestamp"
import _ "github.com/golang/protobuf/ptypes/duration"
import google_protobuf4 "github.com/golang/protobuf/ptypes/timestamp"
import google_rpc "google.golang.org/genproto/googleapis/rpc/status"
import (
@@ -114,16 +115,26 @@ type StreamingRecognizeResponse_EndpointerType int32
const (
// No endpointer event specified.
StreamingRecognizeResponse_ENDPOINTER_EVENT_UNSPECIFIED StreamingRecognizeResponse_EndpointerType = 0
// Speech has been detected in the audio stream.
// Speech has been detected in the audio stream, and the service is
// beginning to process it.
StreamingRecognizeResponse_START_OF_SPEECH StreamingRecognizeResponse_EndpointerType = 1
// Speech has ceased to be detected in the audio stream.
// Speech has ceased to be detected in the audio stream. (For example, the
// user may have paused after speaking.) If `single_utterance` is `false`,
// the service will continue to process audio, and if subsequent speech is
// detected, will send another START_OF_SPEECH event.
StreamingRecognizeResponse_END_OF_SPEECH StreamingRecognizeResponse_EndpointerType = 2
// The end of the audio stream has been reached. and it is being processed.
// This event is sent after the client has half-closed the input stream gRPC
// connection and the server has received all of the audio. (The server may
// still be processing the audio and may subsequently return additional
// results.)
StreamingRecognizeResponse_END_OF_AUDIO StreamingRecognizeResponse_EndpointerType = 3
// This event is only sent when `single_utterance` is `true`. It indicates
// that the server has detected the end of the user's speech utterance and
// expects no additional speech. Therefore, the server will not process
// additional audio. The client should stop sending additional audio data.
// additional audio (although it may subsequently return additional
// results). The client should stop sending additional audio data,
// half-close the gRPC connection, and wait for any additional results
// until the server closes the gRPC connection.
StreamingRecognizeResponse_END_OF_UTTERANCE StreamingRecognizeResponse_EndpointerType = 4
)
@@ -149,13 +160,12 @@ func (StreamingRecognizeResponse_EndpointerType) EnumDescriptor() ([]byte, []int
return fileDescriptor0, []int{10, 0}
}
// `SyncRecognizeRequest` is the top-level message sent by the client for
// the `SyncRecognize` method.
// The top-level message sent by the client for the `SyncRecognize` method.
type SyncRecognizeRequest struct {
// [Required] The `config` message provides information to the recognizer
// that specifies how to process the request.
// *Required* Provides information to the recognizer that specifies how to
// process the request.
Config *RecognitionConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
// [Required] The audio data to be recognized.
// *Required* The audio data to be recognized.
Audio *RecognitionAudio `protobuf:"bytes,2,opt,name=audio" json:"audio,omitempty"`
}
@@ -178,13 +188,12 @@ func (m *SyncRecognizeRequest) GetAudio() *RecognitionAudio {
return nil
}
// `AsyncRecognizeRequest` is the top-level message sent by the client for
// the `AsyncRecognize` method.
// The top-level message sent by the client for the `AsyncRecognize` method.
type AsyncRecognizeRequest struct {
// [Required] The `config` message provides information to the recognizer
// that specifies how to process the request.
// *Required* Provides information to the recognizer that specifies how to
// process the request.
Config *RecognitionConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
// [Required] The audio data to be recognized.
// *Required* The audio data to be recognized.
Audio *RecognitionAudio `protobuf:"bytes,2,opt,name=audio" json:"audio,omitempty"`
}
@@ -207,11 +216,11 @@ func (m *AsyncRecognizeRequest) GetAudio() *RecognitionAudio {
return nil
}
// `StreamingRecognizeRequest` is the top-level message sent by the client for
// the `StreamingRecognize`. Multiple `StreamingRecognizeRequest` messages are
// sent. The first message must contain a `streaming_config` message and must
// not contain `audio` data. All subsequent messages must contain `audio` data
// and must not contain a `streaming_config` message.
// The top-level message sent by the client for the `StreamingRecognize` method.
// Multiple `StreamingRecognizeRequest` messages are sent. The first message
// must contain a `streaming_config` message and must not contain `audio` data.
// All subsequent messages must contain `audio` data and must not contain a
// `streaming_config` message.
type StreamingRecognizeRequest struct {
// Types that are valid to be assigned to StreamingRequest:
// *StreamingRecognizeRequest_StreamingConfig
@@ -329,24 +338,24 @@ func _StreamingRecognizeRequest_OneofSizer(msg proto.Message) (n int) {
return n
}
// The `StreamingRecognitionConfig` message provides information to the
// recognizer that specifies how to process the request.
// Provides information to the recognizer that specifies how to process the
// request.
type StreamingRecognitionConfig struct {
// [Required] The `config` message provides information to the recognizer
// that specifies how to process the request.
// *Required* Provides information to the recognizer that specifies how to
// process the request.
Config *RecognitionConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
// [Optional] If `false` or omitted, the recognizer will perform continuous
// recognition (continuing to process audio even if the user pauses speaking)
// until the client closes the output stream (gRPC API) or when the maximum
// time limit has been reached. Multiple `StreamingRecognitionResult`s with
// the `is_final` flag set to `true` may be returned.
// *Optional* If `false` or omitted, the recognizer will perform continuous
// recognition (continuing to wait for and process audio even if the user
// pauses speaking) until the client closes the input stream (gRPC API) or
// until the maximum time limit has been reached. May return multiple
// `StreamingRecognitionResult`s with the `is_final` flag set to `true`.
//
// If `true`, the recognizer will detect a single spoken utterance. When it
// detects that the user has paused or stopped speaking, it will return an
// `END_OF_UTTERANCE` event and cease recognition. It will return no more than
// one `StreamingRecognitionResult` with the `is_final` flag set to `true`.
SingleUtterance bool `protobuf:"varint,2,opt,name=single_utterance,json=singleUtterance" json:"single_utterance,omitempty"`
// [Optional] If `true`, interim results (tentative hypotheses) may be
// *Optional* If `true`, interim results (tentative hypotheses) may be
// returned as they become available (these interim results are indicated with
// the `is_final=false` flag).
// If `false` or omitted, only `is_final=true` result(s) are returned.
@@ -379,36 +388,36 @@ func (m *StreamingRecognitionConfig) GetInterimResults() bool {
return false
}
// The `RecognitionConfig` message provides information to the recognizer
// that specifies how to process the request.
// Provides information to the recognizer that specifies how to process the
// request.
type RecognitionConfig struct {
// [Required] Encoding of audio data sent in all `RecognitionAudio` messages.
// *Required* Encoding of audio data sent in all `RecognitionAudio` messages.
Encoding RecognitionConfig_AudioEncoding `protobuf:"varint,1,opt,name=encoding,enum=google.cloud.speech.v1beta1.RecognitionConfig_AudioEncoding" json:"encoding,omitempty"`
// [Required] Sample rate in Hertz of the audio data sent in all
// *Required* Sample rate in Hertz of the audio data sent in all
// `RecognitionAudio` messages. Valid values are: 8000-48000.
// 16000 is optimal. For best results, set the sampling rate of the audio
// source to 16000 Hz. If that's not possible, use the native sample rate of
// the audio source (instead of re-sampling).
SampleRate int32 `protobuf:"varint,2,opt,name=sample_rate,json=sampleRate" json:"sample_rate,omitempty"`
// [Optional] The language of the supplied audio as a BCP-47 language tag.
// *Optional* The language of the supplied audio as a BCP-47 language tag.
// Example: "en-GB" https://www.rfc-editor.org/rfc/bcp/bcp47.txt
// If omitted, defaults to "en-US". See
// [Language Support](https://cloud.google.com/speech/docs/best-practices#language_support)
// [Language Support](https://cloud.google.com/speech/docs/languages)
// for a list of the currently supported language codes.
LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode" json:"language_code,omitempty"`
// [Optional] Maximum number of recognition hypotheses to be returned.
// *Optional* Maximum number of recognition hypotheses to be returned.
// Specifically, the maximum number of `SpeechRecognitionAlternative` messages
// within each `SpeechRecognitionResult`.
// The server may return fewer than `max_alternatives`.
// Valid values are `0`-`30`. A value of `0` or `1` will return a maximum of
// `1`. If omitted, defaults to `1`.
// one. If omitted, will return a maximum of one.
MaxAlternatives int32 `protobuf:"varint,4,opt,name=max_alternatives,json=maxAlternatives" json:"max_alternatives,omitempty"`
// [Optional] If set to `true`, the server will attempt to filter out
// *Optional* If set to `true`, the server will attempt to filter out
// profanities, replacing all but the initial character in each filtered word
// with asterisks, e.g. "f***". If set to `false` or omitted, profanities
// won't be filtered out.
ProfanityFilter bool `protobuf:"varint,5,opt,name=profanity_filter,json=profanityFilter" json:"profanity_filter,omitempty"`
// [Optional] A means to provide context to assist the speech recognition.
// *Optional* A means to provide context to assist the speech recognition.
SpeechContext *SpeechContext `protobuf:"bytes,6,opt,name=speech_context,json=speechContext" json:"speech_context,omitempty"`
}
@@ -462,7 +471,7 @@ func (m *RecognitionConfig) GetSpeechContext() *SpeechContext {
// Provides "hints" to the speech recognizer to favor specific words and phrases
// in the results.
type SpeechContext struct {
// [Optional] A list of strings containing words and phrases "hints" so that
// *Optional* A list of strings containing words and phrases "hints" so that
// the speech recognition is more likely to recognize them. This can be used
// to improve the accuracy for specific words and phrases, for example, if
// specific commands are typically spoken by the user. This can also be used
@@ -600,11 +609,11 @@ func _RecognitionAudio_OneofSizer(msg proto.Message) (n int) {
return n
}
// `SyncRecognizeResponse` is the only message returned to the client by
// `SyncRecognize`. It contains the result as zero or more sequential
// `SpeechRecognitionResult` messages.
// The only message returned to the client by `SyncRecognize`. It
// contains the result as zero or more sequential `SpeechRecognitionResult`
// messages.
type SyncRecognizeResponse struct {
// [Output-only] Sequential list of transcription results corresponding to
// *Output-only* Sequential list of transcription results corresponding to
// sequential portions of audio.
Results []*SpeechRecognitionResult `protobuf:"bytes,2,rep,name=results" json:"results,omitempty"`
}
@@ -621,13 +630,12 @@ func (m *SyncRecognizeResponse) GetResults() []*SpeechRecognitionResult {
return nil
}
// `AsyncRecognizeResponse` is the only message returned to the client by
// `AsyncRecognize`. It contains the result as zero or more sequential
// `SpeechRecognitionResult` messages. It is included in the `result.response`
// field of the `Operation` returned by the `GetOperation` call of the
// `google::longrunning::Operations` service.
// The only message returned to the client by `AsyncRecognize`. It contains the
// result as zero or more sequential `SpeechRecognitionResult` messages. It is
// included in the `result.response` field of the `Operation` returned by the
// `GetOperation` call of the `google::longrunning::Operations` service.
type AsyncRecognizeResponse struct {
// [Output-only] Sequential list of transcription results corresponding to
// *Output-only* Sequential list of transcription results corresponding to
// sequential portions of audio.
Results []*SpeechRecognitionResult `protobuf:"bytes,2,rep,name=results" json:"results,omitempty"`
}
@@ -644,18 +652,17 @@ func (m *AsyncRecognizeResponse) GetResults() []*SpeechRecognitionResult {
return nil
}
// `AsyncRecognizeMetadata` describes the progress of a long-running
// `AsyncRecognize` call. It is included in the `metadata` field of the
// `Operation` returned by the `GetOperation` call of the
// `google::longrunning::Operations` service.
// Describes the progress of a long-running `AsyncRecognize` call. It is
// included in the `metadata` field of the `Operation` returned by the
// `GetOperation` call of the `google::longrunning::Operations` service.
type AsyncRecognizeMetadata struct {
// Approximate percentage of audio processed thus far. Guaranteed to be 100
// when the audio is fully processed and the results are available.
ProgressPercent int32 `protobuf:"varint,1,opt,name=progress_percent,json=progressPercent" json:"progress_percent,omitempty"`
// Time when the request was received.
StartTime *google_protobuf3.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
StartTime *google_protobuf4.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
// Time of the most recent processing update.
LastUpdateTime *google_protobuf3.Timestamp `protobuf:"bytes,3,opt,name=last_update_time,json=lastUpdateTime" json:"last_update_time,omitempty"`
LastUpdateTime *google_protobuf4.Timestamp `protobuf:"bytes,3,opt,name=last_update_time,json=lastUpdateTime" json:"last_update_time,omitempty"`
}
func (m *AsyncRecognizeMetadata) Reset() { *m = AsyncRecognizeMetadata{} }
@@ -670,14 +677,14 @@ func (m *AsyncRecognizeMetadata) GetProgressPercent() int32 {
return 0
}
func (m *AsyncRecognizeMetadata) GetStartTime() *google_protobuf3.Timestamp {
func (m *AsyncRecognizeMetadata) GetStartTime() *google_protobuf4.Timestamp {
if m != nil {
return m.StartTime
}
return nil
}
func (m *AsyncRecognizeMetadata) GetLastUpdateTime() *google_protobuf3.Timestamp {
func (m *AsyncRecognizeMetadata) GetLastUpdateTime() *google_protobuf4.Timestamp {
if m != nil {
return m.LastUpdateTime
}
@@ -737,24 +744,27 @@ func (m *AsyncRecognizeMetadata) GetLastUpdateTime() *google_protobuf3.Timestamp
// change, the second portion has a low stability and is very likely to
// change. A UI designer might choose to show only high stability `results`.
//
// - The specific `stability` and `confidence` values shown above are only for
// illustrative purposes. Actual values may vary.
//
// - The `result_index` indicates the portion of audio that has had final
// results returned, and is no longer being processed. For example, the
// `results` in #6 and later correspond to the portion of audio after
// "to be or not to be".
type StreamingRecognizeResponse struct {
// [Output-only] If set, returns a [google.rpc.Status][] message that
// *Output-only* If set, returns a [google.rpc.Status][google.rpc.Status] message that
// specifies the error for the operation.
Error *google_rpc.Status `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
// [Output-only] This repeated list contains zero or more results that
// *Output-only* This repeated list contains zero or more results that
// correspond to consecutive portions of the audio currently being processed.
// It contains zero or one `is_final=true` result (the newly settled portion),
// followed by zero or more `is_final=false` results.
Results []*StreamingRecognitionResult `protobuf:"bytes,2,rep,name=results" json:"results,omitempty"`
// [Output-only] Indicates the lowest index in the `results` array that has
// *Output-only* Indicates the lowest index in the `results` array that has
// changed. The repeated `StreamingRecognitionResult` results overwrite past
// results at this index and higher.
ResultIndex int32 `protobuf:"varint,3,opt,name=result_index,json=resultIndex" json:"result_index,omitempty"`
// [Output-only] Indicates the type of endpointer event.
// *Output-only* Indicates the type of endpointer event.
EndpointerType StreamingRecognizeResponse_EndpointerType `protobuf:"varint,4,opt,name=endpointer_type,json=endpointerType,enum=google.cloud.speech.v1beta1.StreamingRecognizeResponse_EndpointerType" json:"endpointer_type,omitempty"`
}
@@ -794,22 +804,20 @@ func (m *StreamingRecognizeResponse) GetEndpointerType() StreamingRecognizeRespo
// A streaming speech recognition result corresponding to a portion of the audio
// that is currently being processed.
type StreamingRecognitionResult struct {
// [Output-only] May contain one or more recognition hypotheses (up to the
// *Output-only* May contain one or more recognition hypotheses (up to the
// maximum specified in `max_alternatives`).
Alternatives []*SpeechRecognitionAlternative `protobuf:"bytes,1,rep,name=alternatives" json:"alternatives,omitempty"`
// [Output-only] If `false`, this `StreamingRecognitionResult` represents an
// *Output-only* If `false`, this `StreamingRecognitionResult` represents an
// interim result that may change. If `true`, this is the final time the
// speech service will return this particular `StreamingRecognitionResult`,
// the recognizer will not return any further hypotheses for this portion of
// the transcript and corresponding audio.
IsFinal bool `protobuf:"varint,2,opt,name=is_final,json=isFinal" json:"is_final,omitempty"`
// [Output-only] An estimate of the probability that the recognizer will not
// *Output-only* An estimate of the likelihood that the recognizer will not
// change its guess about this interim result. Values range from 0.0
// (completely unstable) to 1.0 (completely stable). Note that this is not the
// same as `confidence`, which estimates the probability that a recognition
// result is correct.
// (completely unstable) to 1.0 (completely stable).
// This field is only provided for interim results (`is_final=false`).
// The default of 0.0 is a sentinel value indicating stability was not set.
// The default of 0.0 is a sentinel value indicating `stability` was not set.
Stability float32 `protobuf:"fixed32,3,opt,name=stability" json:"stability,omitempty"`
}
@@ -841,7 +849,7 @@ func (m *StreamingRecognitionResult) GetStability() float32 {
// A speech recognition result corresponding to a portion of the audio.
type SpeechRecognitionResult struct {
// [Output-only] May contain one or more recognition hypotheses (up to the
// *Output-only* May contain one or more recognition hypotheses (up to the
// maximum specified in `max_alternatives`).
Alternatives []*SpeechRecognitionAlternative `protobuf:"bytes,1,rep,name=alternatives" json:"alternatives,omitempty"`
}
@@ -860,13 +868,15 @@ func (m *SpeechRecognitionResult) GetAlternatives() []*SpeechRecognitionAlternat
// Alternative hypotheses (a.k.a. n-best list).
type SpeechRecognitionAlternative struct {
// [Output-only] Transcript text representing the words that the user spoke.
// *Output-only* Transcript text representing the words that the user spoke.
Transcript string `protobuf:"bytes,1,opt,name=transcript" json:"transcript,omitempty"`
// [Output-only] The confidence estimate between 0.0 and 1.0. A higher number
// means the system is more confident that the recognition is correct.
// This field is typically provided only for the top hypothesis, and only for
// `is_final=true` results.
// The default of 0.0 is a sentinel value indicating confidence was not set.
// *Output-only* The confidence estimate between 0.0 and 1.0. A higher number
// indicates an estimated greater likelihood that the recognized words are
// correct. This field is typically provided only for the top hypothesis, and
// only for `is_final=true` results. Clients should not rely on the
// `confidence` field as it is not guaranteed to be accurate, or even set, in
// any of the results.
// The default of 0.0 is a sentinel value indicating `confidence` was not set.
Confidence float32 `protobuf:"fixed32,2,opt,name=confidence" json:"confidence,omitempty"`
}
@@ -919,15 +929,17 @@ const _ = grpc.SupportPackageIsVersion4
// Client API for Speech service
type SpeechClient interface {
// Perform synchronous speech-recognition: receive results after all audio
// Performs synchronous speech recognition: receive results after all audio
// has been sent and processed.
SyncRecognize(ctx context.Context, in *SyncRecognizeRequest, opts ...grpc.CallOption) (*SyncRecognizeResponse, error)
// Perform asynchronous speech-recognition: receive results via the
// google.longrunning.Operations interface. Returns either an
// Performs asynchronous speech recognition: receive results via the
// [google.longrunning.Operations]
// (/speech/reference/rest/v1beta1/operations#Operation)
// interface. Returns either an
// `Operation.error` or an `Operation.response` which contains
// an `AsyncRecognizeResponse` message.
AsyncRecognize(ctx context.Context, in *AsyncRecognizeRequest, opts ...grpc.CallOption) (*google_longrunning.Operation, error)
// Perform bidirectional streaming speech-recognition: receive results while
// Performs bidirectional streaming speech recognition: receive results while
// sending audio. This method is only available via the gRPC API (not REST).
StreamingRecognize(ctx context.Context, opts ...grpc.CallOption) (Speech_StreamingRecognizeClient, error)
}
@@ -992,15 +1004,17 @@ func (x *speechStreamingRecognizeClient) Recv() (*StreamingRecognizeResponse, er
// Server API for Speech service
type SpeechServer interface {
// Perform synchronous speech-recognition: receive results after all audio
// Performs synchronous speech recognition: receive results after all audio
// has been sent and processed.
SyncRecognize(context.Context, *SyncRecognizeRequest) (*SyncRecognizeResponse, error)
// Perform asynchronous speech-recognition: receive results via the
// google.longrunning.Operations interface. Returns either an
// Performs asynchronous speech recognition: receive results via the
// [google.longrunning.Operations]
// (/speech/reference/rest/v1beta1/operations#Operation)
// interface. Returns either an
// `Operation.error` or an `Operation.response` which contains
// an `AsyncRecognizeResponse` message.
AsyncRecognize(context.Context, *AsyncRecognizeRequest) (*google_longrunning.Operation, error)
// Perform bidirectional streaming speech-recognition: receive results while
// Performs bidirectional streaming speech recognition: receive results while
// sending audio. This method is only available via the gRPC API (not REST).
StreamingRecognize(Speech_StreamingRecognizeServer) error
}
@@ -1098,81 +1112,81 @@ var _Speech_serviceDesc = grpc.ServiceDesc{
func init() { proto.RegisterFile("google/cloud/speech/v1beta1/cloud_speech.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 1206 bytes of a gzipped FileDescriptorProto
// 1214 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0x4d, 0x6f, 0x1b, 0xc5,
0x1b, 0xcf, 0xda, 0x71, 0x5e, 0x9e, 0xd8, 0xce, 0x76, 0xda, 0xfe, 0xeb, 0xfa, 0x9f, 0xb6, 0x61,
0x2b, 0x44, 0x5a, 0x89, 0x35, 0x09, 0xa8, 0x55, 0x0b, 0x17, 0xc7, 0x59, 0x13, 0x4b, 0x8d, 0x93,
0x4e, 0x1c, 0x8a, 0x90, 0x60, 0x35, 0x59, 0x4f, 0xb6, 0x2b, 0xd9, 0x33, 0xcb, 0xcc, 0x6c, 0x95,
0x70, 0xec, 0x8d, 0x0b, 0x17, 0xbe, 0x00, 0x12, 0x7c, 0x02, 0xc4, 0x81, 0x0b, 0xe2, 0xc2, 0x81,
0x3b, 0x5f, 0x81, 0x0f, 0x82, 0x76, 0x66, 0x37, 0xb1, 0x9d, 0xc6, 0x34, 0x88, 0x4a, 0xdc, 0xfc,
0xfc, 0xe6, 0x79, 0xf9, 0xed, 0x33, 0xcf, 0xcb, 0x18, 0xdc, 0x90, 0xf3, 0x70, 0x40, 0x1b, 0xc1,
0xfc, 0x9e, 0x97, 0xf9, 0xed, 0x33, 0xcf, 0xcb, 0x18, 0xdc, 0x90, 0xf3, 0x70, 0x40, 0x1b, 0xc1,
0x80, 0x27, 0xfd, 0x86, 0x8c, 0x29, 0x0d, 0x9e, 0x37, 0x5e, 0xac, 0x1f, 0x52, 0x45, 0xd6, 0x0d,
0xe8, 0x1b, 0xd0, 0x8d, 0x05, 0x57, 0x1c, 0xfd, 0xdf, 0xe8, 0xbb, 0xfa, 0xc8, 0xcd, 0x8e, 0x32,
0xfd, 0xfa, 0x4a, 0xe6, 0x8c, 0xc4, 0x51, 0x83, 0x30, 0xc6, 0x15, 0x51, 0x11, 0x67, 0xd2, 0x98,
0xd6, 0xef, 0x66, 0xa7, 0x03, 0xce, 0x42, 0x91, 0x30, 0x16, 0xb1, 0xb0, 0xc1, 0x63, 0x2a, 0xc6,
0x94, 0xee, 0x64, 0x4a, 0x5a, 0x3a, 0x4c, 0x8e, 0x1a, 0x2a, 0x1a, 0x52, 0xa9, 0xc8, 0x30, 0xce,
0x14, 0x6e, 0x64, 0x0a, 0x22, 0x0e, 0x1a, 0x52, 0x11, 0x95, 0x64, 0x96, 0xce, 0xf7, 0x16, 0x5c,
0xdb, 0x3f, 0x61, 0x01, 0xa6, 0x01, 0x0f, 0x59, 0xf4, 0x15, 0xc5, 0xf4, 0xcb, 0x84, 0x4a, 0x85,
0xda, 0x30, 0x17, 0x70, 0x76, 0x14, 0x85, 0x35, 0x6b, 0xd5, 0x5a, 0x5b, 0xda, 0x70, 0xdd, 0x29,
0xdf, 0xe0, 0x66, 0xe6, 0x29, 0xa7, 0x96, 0xb6, 0xc2, 0x99, 0x35, 0x6a, 0x41, 0x89, 0x24, 0xfd,
0x88, 0xd7, 0x0a, 0xda, 0xcd, 0xbb, 0xaf, 0xeb, 0xa6, 0x99, 0x1a, 0x61, 0x63, 0xeb, 0xfc, 0x60,
0xc1, 0xf5, 0xa6, 0xfc, 0xcf, 0xd3, 0xfc, 0xc5, 0x82, 0x9b, 0xfb, 0x4a, 0x50, 0x32, 0x8c, 0x58,
0x78, 0x8e, 0x6a, 0x1f, 0x6c, 0x99, 0x1f, 0xfa, 0x63, 0xa4, 0x1f, 0x4e, 0x8d, 0x36, 0xe9, 0xf1,
0x8c, 0xfd, 0xf6, 0x0c, 0x5e, 0x3e, 0x75, 0x69, 0x20, 0xf4, 0x36, 0x54, 0x34, 0x99, 0x34, 0x82,
0xa2, 0x4c, 0xe9, 0x0f, 0x2a, 0x6f, 0xcf, 0xe0, 0xb2, 0x86, 0x5b, 0x06, 0xdd, 0xbc, 0x0a, 0x57,
0xce, 0xc8, 0x08, 0xc3, 0xd0, 0xf9, 0xd9, 0x82, 0xfa, 0xc5, 0xd1, 0xfe, 0xb5, 0x5c, 0xdf, 0x03,
0x5b, 0x46, 0x2c, 0x1c, 0x50, 0x3f, 0x51, 0x8a, 0x0a, 0xc2, 0x02, 0xaa, 0x59, 0x2e, 0xe0, 0x65,
0x83, 0x1f, 0xe4, 0x30, 0x7a, 0x07, 0x96, 0x23, 0xa6, 0xa8, 0x88, 0x86, 0xbe, 0xa0, 0x32, 0x19,
0x28, 0x59, 0x2b, 0x6a, 0xcd, 0x6a, 0x06, 0x63, 0x83, 0x3a, 0xbf, 0x16, 0xe1, 0xca, 0x79, 0xc6,
0x9f, 0xc2, 0x02, 0x65, 0x01, 0xef, 0x47, 0xcc, 0x70, 0xae, 0x6e, 0x7c, 0x74, 0x39, 0xce, 0xae,
0xbe, 0x5f, 0x2f, 0xf3, 0x81, 0x4f, 0xbd, 0xa1, 0x3b, 0xb0, 0x24, 0xc9, 0x30, 0x1e, 0x50, 0x5f,
0x10, 0x65, 0xe8, 0x97, 0x30, 0x18, 0x08, 0x13, 0x45, 0xd1, 0x5d, 0xa8, 0x0c, 0x08, 0x0b, 0x13,
0x12, 0x52, 0x3f, 0xe0, 0x7d, 0xaa, 0x79, 0x2f, 0xe2, 0x72, 0x0e, 0xb6, 0x78, 0x9f, 0xa6, 0x99,
0x18, 0x92, 0x63, 0x9f, 0x0c, 0x14, 0x15, 0x8c, 0xa8, 0xe8, 0x05, 0x95, 0xb5, 0x59, 0xed, 0x6a,
0x79, 0x48, 0x8e, 0x9b, 0x23, 0x70, 0xaa, 0x1a, 0x0b, 0x7e, 0x44, 0x58, 0xa4, 0x4e, 0xfc, 0xa3,
0x28, 0x3d, 0xaa, 0x95, 0x4c, 0xd2, 0x4e, 0xf1, 0xb6, 0x86, 0xd1, 0x53, 0xa8, 0x9a, 0xef, 0x32,
0x35, 0x70, 0xac, 0x6a, 0x73, 0xfa, 0xbe, 0xee, 0x4f, 0x2f, 0x33, 0x2d, 0xb6, 0x8c, 0x05, 0xae,
0xc8, 0x51, 0xd1, 0x21, 0x50, 0x19, 0xcb, 0x04, 0xaa, 0xc1, 0x35, 0xaf, 0xdb, 0xda, 0xdd, 0xea,
0x74, 0x3f, 0xf6, 0x0f, 0xba, 0xfb, 0x7b, 0x5e, 0xab, 0xd3, 0xee, 0x78, 0x5b, 0xf6, 0x0c, 0x2a,
0xc3, 0xc2, 0x93, 0x4e, 0xd7, 0x6b, 0xe2, 0xf5, 0x07, 0xb6, 0x85, 0x16, 0x60, 0xb6, 0xfd, 0xa4,
0xd9, 0xb2, 0x0b, 0x68, 0x11, 0x4a, 0x3b, 0x07, 0x4f, 0x9a, 0xcf, 0xec, 0x22, 0x9a, 0x87, 0x62,
0x73, 0x07, 0xdb, 0xb3, 0x08, 0x60, 0xae, 0xb9, 0x83, 0xfd, 0x67, 0x9b, 0x76, 0xc9, 0xb9, 0x07,
0x95, 0x31, 0x0a, 0xa8, 0x06, 0xf3, 0xf1, 0x73, 0x41, 0x24, 0x95, 0x35, 0x6b, 0xb5, 0xb8, 0xb6,
0x88, 0x73, 0xd1, 0xc1, 0x60, 0x4f, 0xb6, 0x20, 0xaa, 0xc3, 0x7c, 0x5e, 0xf1, 0x56, 0x56, 0xf1,
0x39, 0x80, 0x10, 0x14, 0x13, 0x11, 0xe9, 0x4b, 0x5a, 0xdc, 0x9e, 0xc1, 0xa9, 0xb0, 0x59, 0x05,
0xd3, 0x10, 0xbe, 0xe4, 0x89, 0x08, 0xa8, 0x13, 0xc2, 0xf5, 0x89, 0x39, 0x28, 0x63, 0xce, 0x24,
0x45, 0x5d, 0x98, 0xcf, 0x4b, 0xaf, 0xb0, 0x5a, 0x5c, 0x5b, 0xda, 0xf8, 0xe0, 0x35, 0xd2, 0x38,
0x42, 0xcf, 0x54, 0x28, 0xce, 0x9d, 0x38, 0xcf, 0xe1, 0x7f, 0x93, 0xa3, 0xec, 0x0d, 0x45, 0xfa,
0xcd, 0x9a, 0x0c, 0xb5, 0x43, 0x15, 0xe9, 0x13, 0x45, 0xb2, 0x6a, 0x0a, 0x05, 0x95, 0xd2, 0x8f,
0xa9, 0x08, 0xf2, 0xb4, 0x95, 0x74, 0x35, 0x69, 0x7c, 0xcf, 0xc0, 0xe8, 0x11, 0x80, 0x54, 0x44,
0x28, 0x3f, 0xdd, 0x29, 0xd9, 0x78, 0xac, 0xe7, 0xc4, 0xf2, 0x85, 0xe3, 0xf6, 0xf2, 0x85, 0x83,
0x17, 0xb5, 0x76, 0x2a, 0xa3, 0x2d, 0xb0, 0x07, 0x44, 0x2a, 0x3f, 0x89, 0xfb, 0x44, 0x51, 0xe3,
0xa0, 0xf8, 0xb7, 0x0e, 0xaa, 0xa9, 0xcd, 0x81, 0x36, 0x49, 0x41, 0xe7, 0xc7, 0xe2, 0xf9, 0xa9,
0x34, 0x92, 0xb5, 0x35, 0x28, 0x51, 0x21, 0xb8, 0xc8, 0x86, 0x12, 0xca, 0x3d, 0x8b, 0x38, 0x70,
0xf7, 0xf5, 0xaa, 0xc3, 0x46, 0x01, 0x3d, 0x9d, 0xcc, 0xef, 0xe5, 0xe7, 0xee, 0x44, 0x8a, 0xd1,
0x5b, 0x50, 0x36, 0x3f, 0xfd, 0x88, 0xf5, 0xe9, 0xb1, 0xfe, 0xba, 0x12, 0x5e, 0x32, 0x58, 0x27,
0x85, 0x10, 0x87, 0x65, 0xca, 0xfa, 0x31, 0xd7, 0x03, 0xcb, 0x57, 0x27, 0x31, 0xd5, 0x2d, 0x5e,
0xdd, 0x68, 0x5f, 0x2a, 0xfa, 0xd9, 0x17, 0xbb, 0xde, 0xa9, 0xbb, 0xde, 0x49, 0x4c, 0x71, 0x95,
0x8e, 0xc9, 0xce, 0x4b, 0x0b, 0xaa, 0xe3, 0x2a, 0x68, 0x15, 0x56, 0xbc, 0xee, 0xd6, 0xde, 0x6e,
0xa7, 0xdb, 0xf3, 0xb0, 0xef, 0x7d, 0xe2, 0x75, 0x7b, 0x13, 0x5d, 0x7b, 0x15, 0x96, 0xf7, 0x7b,
0x4d, 0xdc, 0xf3, 0x77, 0xdb, 0xfe, 0xfe, 0x9e, 0xe7, 0xb5, 0xb6, 0x6d, 0x0b, 0x5d, 0x81, 0x8a,
0xd7, 0xdd, 0x1a, 0x81, 0x0a, 0xc8, 0x86, 0x72, 0x06, 0x35, 0x0f, 0xb6, 0x3a, 0xbb, 0x76, 0x11,
0x5d, 0x03, 0x3b, 0x43, 0x0e, 0x7a, 0x3d, 0x0f, 0x37, 0xbb, 0x2d, 0xcf, 0x9e, 0x75, 0x7e, 0xba,
0x60, 0x95, 0x98, 0x04, 0xa2, 0xcf, 0xa1, 0x3c, 0x36, 0xf4, 0x2c, 0x7d, 0x1f, 0x8f, 0x2e, 0x57,
0xef, 0x23, 0xf3, 0x11, 0x8f, 0xb9, 0x43, 0x37, 0x61, 0x21, 0x92, 0xfe, 0x51, 0xc4, 0xc8, 0x20,
0xdb, 0x2c, 0xf3, 0x91, 0x6c, 0xa7, 0x22, 0x5a, 0x81, 0xb4, 0x40, 0x0f, 0xa3, 0x41, 0xa4, 0x4e,
0xf4, 0x75, 0x15, 0xf0, 0x19, 0xe0, 0x1c, 0xc3, 0x8d, 0x0b, 0xda, 0xea, 0x0d, 0x53, 0x76, 0xbe,
0x80, 0x95, 0x69, 0xda, 0xe8, 0x36, 0x80, 0x12, 0x84, 0xc9, 0x40, 0x44, 0xb1, 0xe9, 0xd5, 0x45,
0x3c, 0x82, 0xa4, 0xe7, 0x7a, 0xbd, 0xf6, 0x69, 0xbe, 0x4e, 0x0b, 0x78, 0x04, 0xd9, 0xf8, 0xbd,
0x08, 0x73, 0x26, 0x00, 0xfa, 0xce, 0x82, 0xca, 0xd8, 0xac, 0x43, 0xeb, 0xd3, 0xbf, 0xe2, 0x15,
0x0f, 0xaf, 0xfa, 0xc6, 0x65, 0x4c, 0x4c, 0xe1, 0x3a, 0x6b, 0x2f, 0xff, 0xf8, 0xf3, 0xdb, 0x82,
0xe3, 0xdc, 0x3a, 0x7d, 0x2b, 0x1b, 0xb3, 0xc7, 0xe9, 0x90, 0x12, 0xb9, 0xfa, 0x63, 0xeb, 0x3e,
0xfa, 0xc6, 0x82, 0xea, 0xf8, 0xe8, 0x42, 0xd3, 0x03, 0xbe, 0xf2, 0x75, 0x58, 0xbf, 0x95, 0xdb,
0x8c, 0xbc, 0x9e, 0xdd, 0xdd, 0xfc, 0xf5, 0xec, 0xdc, 0xd3, 0x7c, 0xee, 0x3a, 0xb7, 0x27, 0xf9,
0x90, 0x73, 0x84, 0xbe, 0xb6, 0x00, 0x9d, 0x6f, 0x49, 0xf4, 0xe0, 0xd2, 0x3d, 0x6c, 0x88, 0x3d,
0xfc, 0x87, 0xbd, 0xbf, 0x66, 0xbd, 0x67, 0x6d, 0x4a, 0xb8, 0x13, 0xf0, 0xe1, 0x34, 0x0f, 0x9b,
0x4b, 0xe6, 0xaa, 0xf7, 0xd2, 0xe9, 0xba, 0x67, 0x7d, 0xd6, 0xcc, 0x74, 0x43, 0x9e, 0x3e, 0x3f,
0x5c, 0x2e, 0xc2, 0x46, 0x48, 0x99, 0x9e, 0xbd, 0x0d, 0x73, 0x44, 0xe2, 0x48, 0xbe, 0xf2, 0xef,
0xcc, 0x87, 0x46, 0x3c, 0x9c, 0xd3, 0xda, 0xef, 0xff, 0x15, 0x00, 0x00, 0xff, 0xff, 0xf5, 0xe0,
0xdc, 0xd0, 0xfb, 0x0c, 0x00, 0x00,
0xe8, 0x1b, 0xd0, 0x8d, 0x05, 0x57, 0x1c, 0xfd, 0xdf, 0xd8, 0xbb, 0x5a, 0xe5, 0x66, 0xaa, 0xcc,
0xbe, 0xbe, 0x92, 0x05, 0x23, 0x71, 0xd4, 0x20, 0x8c, 0x71, 0x45, 0x54, 0xc4, 0x99, 0x34, 0xae,
0xf5, 0xbb, 0x99, 0x76, 0xc0, 0x59, 0x28, 0x12, 0xc6, 0x22, 0x16, 0x36, 0x78, 0x4c, 0xc5, 0x98,
0xd1, 0xed, 0xcc, 0x48, 0x4b, 0x87, 0xc9, 0x51, 0xa3, 0x9f, 0x18, 0x83, 0x4c, 0x7f, 0x67, 0x52,
0xaf, 0xa2, 0x21, 0x95, 0x8a, 0x0c, 0xe3, 0xcc, 0xe0, 0x46, 0x66, 0x20, 0xe2, 0xa0, 0x21, 0x15,
0x51, 0x49, 0x16, 0xd9, 0xf9, 0xde, 0x82, 0x6b, 0xfb, 0x27, 0x2c, 0xc0, 0x34, 0xe0, 0x21, 0x8b,
0xbe, 0xa2, 0x98, 0x7e, 0x99, 0x50, 0xa9, 0x50, 0x1b, 0xe6, 0x02, 0xce, 0x8e, 0xa2, 0xb0, 0x66,
0xad, 0x5a, 0x6b, 0x4b, 0x1b, 0xae, 0x3b, 0xe5, 0x1b, 0xdd, 0xcc, 0x3d, 0xa5, 0xd4, 0xd2, 0x5e,
0x38, 0xf3, 0x46, 0x2d, 0x28, 0x91, 0xa4, 0x1f, 0xf1, 0x5a, 0x41, 0x87, 0x79, 0xf7, 0x75, 0xc3,
0x34, 0x53, 0x27, 0x6c, 0x7c, 0x9d, 0x1f, 0x2c, 0xb8, 0xde, 0x94, 0xff, 0x79, 0x9a, 0xbf, 0x58,
0x70, 0x73, 0x5f, 0x09, 0x4a, 0x86, 0x11, 0x0b, 0xcf, 0x51, 0xed, 0x83, 0x2d, 0x73, 0xa5, 0x3f,
0x46, 0xfa, 0xe1, 0xd4, 0xd3, 0x26, 0x23, 0x9e, 0xb1, 0xdf, 0x9e, 0xc1, 0xcb, 0xa7, 0x21, 0x0d,
0x84, 0xde, 0x86, 0x8a, 0x26, 0x93, 0x9e, 0xa0, 0x28, 0x53, 0xfa, 0x83, 0xca, 0xdb, 0x33, 0xb8,
0xac, 0xe1, 0x96, 0x41, 0x37, 0xaf, 0xc2, 0x95, 0x33, 0x32, 0xc2, 0x30, 0x74, 0x7e, 0xb6, 0xa0,
0x7e, 0xf1, 0x69, 0xff, 0x5a, 0xae, 0xef, 0x81, 0x2d, 0x23, 0x16, 0x0e, 0xa8, 0x9f, 0x28, 0x45,
0x05, 0x61, 0x01, 0xd5, 0x2c, 0x17, 0xf0, 0xb2, 0xc1, 0x0f, 0x72, 0x18, 0xbd, 0x03, 0xcb, 0x11,
0x53, 0x54, 0x44, 0x43, 0x5f, 0x50, 0x99, 0x0c, 0x94, 0xac, 0x15, 0xb5, 0x65, 0x35, 0x83, 0xb1,
0x41, 0x9d, 0x5f, 0x8b, 0x70, 0xe5, 0x3c, 0xe3, 0x4f, 0x61, 0x81, 0xb2, 0x80, 0xf7, 0x23, 0x66,
0x38, 0x57, 0x37, 0x3e, 0xba, 0x1c, 0x67, 0x57, 0xdf, 0xaf, 0x97, 0xc5, 0xc0, 0xa7, 0xd1, 0xd0,
0x1d, 0x58, 0x92, 0x64, 0x18, 0x0f, 0xa8, 0x2f, 0x88, 0x32, 0xf4, 0x4b, 0x18, 0x0c, 0x84, 0x89,
0xa2, 0xe8, 0x2e, 0x54, 0x06, 0x84, 0x85, 0x09, 0x09, 0xa9, 0x1f, 0xf0, 0x3e, 0xd5, 0xbc, 0x17,
0x71, 0x39, 0x07, 0x5b, 0xbc, 0x4f, 0xd3, 0x4c, 0x0c, 0xc9, 0xb1, 0x4f, 0x06, 0x8a, 0x0a, 0x46,
0x54, 0xf4, 0x82, 0xca, 0xda, 0xac, 0x0e, 0xb5, 0x3c, 0x24, 0xc7, 0xcd, 0x11, 0x38, 0x35, 0x8d,
0x05, 0x3f, 0x22, 0x2c, 0x52, 0x27, 0xfe, 0x51, 0x94, 0xaa, 0x6a, 0x25, 0x93, 0xb4, 0x53, 0xbc,
0xad, 0x61, 0xf4, 0x14, 0xaa, 0xe6, 0xbb, 0x4c, 0x0d, 0x1c, 0xab, 0xda, 0x9c, 0xbe, 0xaf, 0xfb,
0xd3, 0xcb, 0x4c, 0x8b, 0x2d, 0xe3, 0x81, 0x2b, 0x72, 0x54, 0x74, 0x08, 0x54, 0xc6, 0x32, 0x81,
0x6a, 0x70, 0xcd, 0xeb, 0xb6, 0x76, 0xb7, 0x3a, 0xdd, 0x8f, 0xfd, 0x83, 0xee, 0xfe, 0x9e, 0xd7,
0xea, 0xb4, 0x3b, 0xde, 0x96, 0x3d, 0x83, 0xca, 0xb0, 0xf0, 0xa4, 0xd3, 0xf5, 0x9a, 0x78, 0xfd,
0x81, 0x6d, 0xa1, 0x05, 0x98, 0x6d, 0x3f, 0x69, 0xb6, 0xec, 0x02, 0x5a, 0x84, 0xd2, 0xce, 0xc1,
0x93, 0xe6, 0x33, 0xbb, 0x88, 0xe6, 0xa1, 0xd8, 0xdc, 0xc1, 0xf6, 0x2c, 0x02, 0x98, 0x6b, 0xee,
0x60, 0xff, 0xd9, 0xa6, 0x5d, 0x72, 0xee, 0x41, 0x65, 0x8c, 0x02, 0xaa, 0xc1, 0x7c, 0xfc, 0x5c,
0x10, 0x49, 0x65, 0xcd, 0x5a, 0x2d, 0xae, 0x2d, 0xe2, 0x5c, 0x74, 0x30, 0xd8, 0x93, 0x2d, 0x88,
0xea, 0x30, 0x9f, 0x57, 0xbc, 0x95, 0x55, 0x7c, 0x0e, 0x20, 0x04, 0xc5, 0x44, 0x44, 0xfa, 0x92,
0x16, 0xb7, 0x67, 0x70, 0x2a, 0x6c, 0x56, 0xc1, 0x34, 0x84, 0x2f, 0x79, 0x22, 0x02, 0xea, 0x84,
0x70, 0x7d, 0x62, 0x0e, 0xca, 0x98, 0x33, 0x49, 0x51, 0x17, 0xe6, 0xf3, 0xd2, 0x2b, 0xac, 0x16,
0xd7, 0x96, 0x36, 0x3e, 0x78, 0x8d, 0x34, 0x8e, 0xd0, 0x33, 0x15, 0x8a, 0xf3, 0x20, 0xce, 0x73,
0xf8, 0xdf, 0xe4, 0x28, 0x7b, 0x43, 0x27, 0xfd, 0x66, 0x4d, 0x1e, 0xb5, 0x43, 0x15, 0xe9, 0x13,
0x45, 0xb2, 0x6a, 0x0a, 0x05, 0x95, 0xd2, 0x8f, 0xa9, 0x08, 0xf2, 0xb4, 0x95, 0x74, 0x35, 0x69,
0x7c, 0xcf, 0xc0, 0xe8, 0x11, 0x80, 0x54, 0x44, 0x28, 0x3f, 0xdd, 0x29, 0xd9, 0x78, 0xac, 0xe7,
0xc4, 0xf2, 0x85, 0xe3, 0xf6, 0xf2, 0x85, 0x83, 0x17, 0xb5, 0x75, 0x2a, 0xa3, 0x2d, 0xb0, 0x07,
0x44, 0x2a, 0x3f, 0x89, 0xfb, 0x44, 0x51, 0x13, 0xa0, 0xf8, 0xb7, 0x01, 0xaa, 0xa9, 0xcf, 0x81,
0x76, 0x49, 0x41, 0xe7, 0xc7, 0xe2, 0xf9, 0xa9, 0x34, 0x92, 0xb5, 0x35, 0x28, 0x51, 0x21, 0xb8,
0xc8, 0x86, 0x12, 0xca, 0x23, 0x8b, 0x38, 0x70, 0xf7, 0xf5, 0xaa, 0xc3, 0xc6, 0x00, 0x3d, 0x9d,
0xcc, 0xef, 0xe5, 0xe7, 0xee, 0x44, 0x8a, 0xd1, 0x5b, 0x50, 0x36, 0x3f, 0xfd, 0x88, 0xf5, 0xe9,
0xb1, 0xfe, 0xba, 0x12, 0x5e, 0x32, 0x58, 0x27, 0x85, 0x10, 0x87, 0x65, 0xca, 0xfa, 0x31, 0xd7,
0x03, 0xcb, 0x57, 0x27, 0x31, 0xd5, 0x2d, 0x5e, 0xdd, 0x68, 0x5f, 0xea, 0xf4, 0xb3, 0x2f, 0x76,
0xbd, 0xd3, 0x70, 0xbd, 0x93, 0x98, 0xe2, 0x2a, 0x1d, 0x93, 0x9d, 0x97, 0x16, 0x54, 0xc7, 0x4d,
0xd0, 0x2a, 0xac, 0x78, 0xdd, 0xad, 0xbd, 0xdd, 0x4e, 0xb7, 0xe7, 0x61, 0xdf, 0xfb, 0xc4, 0xeb,
0xf6, 0x26, 0xba, 0xf6, 0x2a, 0x2c, 0xef, 0xf7, 0x9a, 0xb8, 0xe7, 0xef, 0xb6, 0xfd, 0xfd, 0x3d,
0xcf, 0x6b, 0x6d, 0xdb, 0x16, 0xba, 0x02, 0x15, 0xaf, 0xbb, 0x35, 0x02, 0x15, 0x90, 0x0d, 0xe5,
0x0c, 0x6a, 0x1e, 0x6c, 0x75, 0x76, 0xed, 0x22, 0xba, 0x06, 0x76, 0x86, 0x1c, 0xf4, 0x7a, 0x1e,
0x6e, 0x76, 0x5b, 0x9e, 0x3d, 0xeb, 0xfc, 0x74, 0xc1, 0x2a, 0x31, 0x09, 0x44, 0x9f, 0x43, 0x79,
0x6c, 0xe8, 0x59, 0xfa, 0x3e, 0x1e, 0x5d, 0xae, 0xde, 0x47, 0xe6, 0x23, 0x1e, 0x0b, 0x87, 0x6e,
0xc2, 0x42, 0x24, 0xfd, 0xa3, 0x88, 0x91, 0x41, 0xb6, 0x59, 0xe6, 0x23, 0xd9, 0x4e, 0x45, 0xb4,
0x02, 0x69, 0x81, 0x1e, 0x46, 0x83, 0x48, 0x9d, 0xe8, 0xeb, 0x2a, 0xe0, 0x33, 0xc0, 0x39, 0x86,
0x1b, 0x17, 0xb4, 0xd5, 0x1b, 0xa6, 0xec, 0x7c, 0x01, 0x2b, 0xd3, 0xac, 0xd1, 0x6d, 0x00, 0x25,
0x08, 0x93, 0x81, 0x88, 0x62, 0xd3, 0xab, 0x8b, 0x78, 0x04, 0x49, 0xf5, 0x7a, 0xbd, 0xf6, 0x69,
0xbe, 0x4e, 0x0b, 0x78, 0x04, 0xd9, 0xf8, 0xbd, 0x08, 0x73, 0xe6, 0x00, 0xf4, 0x9d, 0x05, 0x95,
0xb1, 0x59, 0x87, 0xd6, 0xa7, 0x7f, 0xc5, 0x2b, 0x1e, 0x5e, 0xf5, 0x8d, 0xcb, 0xb8, 0x98, 0xc2,
0x75, 0xd6, 0x5e, 0xfe, 0xf1, 0xe7, 0xb7, 0x05, 0xc7, 0xb9, 0x75, 0xfa, 0x96, 0x36, 0x6e, 0x8f,
0xd3, 0x21, 0x25, 0x72, 0xf3, 0xc7, 0xd6, 0x7d, 0xf4, 0x8d, 0x05, 0xd5, 0xf1, 0xd1, 0x85, 0xa6,
0x1f, 0xf8, 0xca, 0xd7, 0x61, 0xfd, 0x56, 0xee, 0x33, 0xf2, 0xba, 0x76, 0x77, 0xf3, 0xd7, 0xb5,
0x73, 0x4f, 0xf3, 0xb9, 0xeb, 0xdc, 0x9e, 0xe4, 0x43, 0xce, 0x11, 0xfa, 0xda, 0x02, 0x74, 0xbe,
0x25, 0xd1, 0x83, 0x4b, 0xf7, 0xb0, 0x21, 0xf6, 0xf0, 0x1f, 0xf6, 0xfe, 0x9a, 0xf5, 0x9e, 0xb5,
0x29, 0xe1, 0x4e, 0xc0, 0x87, 0xd3, 0x22, 0x6c, 0x2e, 0x99, 0xab, 0xde, 0x4b, 0xa7, 0xeb, 0x9e,
0xf5, 0x59, 0x33, 0xb3, 0x0d, 0x79, 0xfa, 0xfc, 0x70, 0xb9, 0x08, 0x1b, 0x21, 0x65, 0x7a, 0xf6,
0x36, 0x8c, 0x8a, 0xc4, 0x91, 0x7c, 0xe5, 0xdf, 0x9d, 0x0f, 0x8d, 0x78, 0x38, 0xa7, 0xad, 0xdf,
0xff, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x25, 0x0d, 0x06, 0x48, 0x1b, 0x0d, 0x00, 0x00,
}

View File

@@ -0,0 +1,865 @@
// Code generated by protoc-gen-go.
// source: google/cloud/support/common.proto
// DO NOT EDIT!
/*
Package common is a generated protocol buffer package.
It is generated from these files:
google/cloud/support/common.proto
It has these top-level messages:
SupportAccount
Case
CustomerIssue
SupportRole
Comment
IssueTaxonomy
*/
package common
import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "google.golang.org/genproto/googleapis/api/annotations"
import google_protobuf1 "github.com/golang/protobuf/ptypes/timestamp"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
// The current state of this SupportAccount.
type SupportAccount_State int32
const (
// Account is in an unknown state.
SupportAccount_STATE_UNSPECIFIED SupportAccount_State = 0
// Account is in an active state.
SupportAccount_ACTIVE SupportAccount_State = 1
// Account has been created but is being provisioned in support systems.
SupportAccount_PENDING SupportAccount_State = 2
// Account deletion has been requested by the user.
SupportAccount_PENDING_DELETION SupportAccount_State = 3
)
var SupportAccount_State_name = map[int32]string{
0: "STATE_UNSPECIFIED",
1: "ACTIVE",
2: "PENDING",
3: "PENDING_DELETION",
}
var SupportAccount_State_value = map[string]int32{
"STATE_UNSPECIFIED": 0,
"ACTIVE": 1,
"PENDING": 2,
"PENDING_DELETION": 3,
}
func (x SupportAccount_State) String() string {
return proto.EnumName(SupportAccount_State_name, int32(x))
}
func (SupportAccount_State) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0} }
// Pricing model applicable to this support account.
type SupportAccount_PricingModel int32
const (
// This account is subscribed to an unknown pricing model.
SupportAccount_PRICING_MODEL_UNKNOWN SupportAccount_PricingModel = 0
// Package based pricing (Platinum, Gold, Silver, Bronze).
SupportAccount_PACKAGES SupportAccount_PricingModel = 1
// Support charges are calculated based on user seats a.k.a,
// "Pick Your Team" model.
SupportAccount_USER_ROLES SupportAccount_PricingModel = 2
)
var SupportAccount_PricingModel_name = map[int32]string{
0: "PRICING_MODEL_UNKNOWN",
1: "PACKAGES",
2: "USER_ROLES",
}
var SupportAccount_PricingModel_value = map[string]int32{
"PRICING_MODEL_UNKNOWN": 0,
"PACKAGES": 1,
"USER_ROLES": 2,
}
func (x SupportAccount_PricingModel) String() string {
return proto.EnumName(SupportAccount_PricingModel_name, int32(x))
}
func (SupportAccount_PricingModel) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{0, 1}
}
// The case priority with P0 being the most urgent and P4 the least.
type Case_Priority int32
const (
// Priority is undefined or has not been set yet.
Case_PRIORITY_UNSPECIFIED Case_Priority = 0
// Extreme impact on a production service - Service is hard down.
Case_P0 Case_Priority = 1
// Critical impact on a production service - Service is currently unusable.
Case_P1 Case_Priority = 2
// Severe impact on a production service - Service is usable but greatly
// impaired.
Case_P2 Case_Priority = 3
// Medium impact on a production service - Service is available, but
// moderately impaired.
Case_P3 Case_Priority = 4
// General questions or minor issues - Production service is fully
// available.
Case_P4 Case_Priority = 5
)
var Case_Priority_name = map[int32]string{
0: "PRIORITY_UNSPECIFIED",
1: "P0",
2: "P1",
3: "P2",
4: "P3",
5: "P4",
}
var Case_Priority_value = map[string]int32{
"PRIORITY_UNSPECIFIED": 0,
"P0": 1,
"P1": 2,
"P2": 3,
"P3": 4,
"P4": 5,
}
func (x Case_Priority) String() string {
return proto.EnumName(Case_Priority_name, int32(x))
}
func (Case_Priority) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1, 0} }
// The state of a case.
type Case_State int32
const (
// Case is in an unknown state.
Case_STATE_UNSPECIFIED Case_State = 0
// Case has been created but no one is assigned to work on it yet.
Case_NEW Case_State = 1
// Case has been assigned to a support agent.
Case_ASSIGNED Case_State = 2
// A support agent is currently investigating the case.
Case_IN_PROGRESS_GOOGLE_SUPPORT Case_State = 3
// Case has been forwarded to product team for further investigation.
Case_IN_PROGRESS_GOOGLE_ENG Case_State = 4
// Case is under investigation and relates to a known issue.
Case_IN_PROGRESS_KNOWN_ISSUE Case_State = 5
// Case is waiting for a response from the customer.
Case_WAITING_FOR_CUSTOMER_RESPONSE Case_State = 6
// A solution has been offered for the case but it isn't closed yet.
Case_SOLUTION_OFFERED Case_State = 7
// Cases has been fully resolved and is in a closed state.
Case_CLOSED Case_State = 8
)
var Case_State_name = map[int32]string{
0: "STATE_UNSPECIFIED",
1: "NEW",
2: "ASSIGNED",
3: "IN_PROGRESS_GOOGLE_SUPPORT",
4: "IN_PROGRESS_GOOGLE_ENG",
5: "IN_PROGRESS_KNOWN_ISSUE",
6: "WAITING_FOR_CUSTOMER_RESPONSE",
7: "SOLUTION_OFFERED",
8: "CLOSED",
}
var Case_State_value = map[string]int32{
"STATE_UNSPECIFIED": 0,
"NEW": 1,
"ASSIGNED": 2,
"IN_PROGRESS_GOOGLE_SUPPORT": 3,
"IN_PROGRESS_GOOGLE_ENG": 4,
"IN_PROGRESS_KNOWN_ISSUE": 5,
"WAITING_FOR_CUSTOMER_RESPONSE": 6,
"SOLUTION_OFFERED": 7,
"CLOSED": 8,
}
func (x Case_State) String() string {
return proto.EnumName(Case_State_name, int32(x))
}
func (Case_State) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1, 1} }
// The status of a customer issue.
type CustomerIssue_IssueState int32
const (
// Issue in an unknown state.
CustomerIssue_ISSUE_STATE_UNSPECIFIED CustomerIssue_IssueState = 0
// Issue is currently open but the work on it has not been started.
CustomerIssue_OPEN CustomerIssue_IssueState = 1
// Issue is currently being worked on.
CustomerIssue_IN_PROGRESS CustomerIssue_IssueState = 2
// Issue is fixed.
CustomerIssue_FIXED CustomerIssue_IssueState = 3
// Issue has been marked as invalid.
CustomerIssue_WONT_FIX CustomerIssue_IssueState = 4
// Issue verified and in production.
CustomerIssue_VERIFIED CustomerIssue_IssueState = 5
)
var CustomerIssue_IssueState_name = map[int32]string{
0: "ISSUE_STATE_UNSPECIFIED",
1: "OPEN",
2: "IN_PROGRESS",
3: "FIXED",
4: "WONT_FIX",
5: "VERIFIED",
}
var CustomerIssue_IssueState_value = map[string]int32{
"ISSUE_STATE_UNSPECIFIED": 0,
"OPEN": 1,
"IN_PROGRESS": 2,
"FIXED": 3,
"WONT_FIX": 4,
"VERIFIED": 5,
}
func (x CustomerIssue_IssueState) String() string {
return proto.EnumName(CustomerIssue_IssueState_name, int32(x))
}
func (CustomerIssue_IssueState) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{2, 0} }
// A role which determines the support resources and features a user might
// get access to.
type SupportRole_Role int32
const (
// An unknown role.
SupportRole_ROLE_UNSPECIFIED SupportRole_Role = 0
// The basic support role.
SupportRole_BASIC SupportRole_Role = 1
// The developer role.
SupportRole_DEVELOPER SupportRole_Role = 2
// The operation role.
SupportRole_OPERATION SupportRole_Role = 3
// The site reliability role.
SupportRole_SITE_RELIABILITY SupportRole_Role = 4
)
var SupportRole_Role_name = map[int32]string{
0: "ROLE_UNSPECIFIED",
1: "BASIC",
2: "DEVELOPER",
3: "OPERATION",
4: "SITE_RELIABILITY",
}
var SupportRole_Role_value = map[string]int32{
"ROLE_UNSPECIFIED": 0,
"BASIC": 1,
"DEVELOPER": 2,
"OPERATION": 3,
"SITE_RELIABILITY": 4,
}
func (x SupportRole_Role) String() string {
return proto.EnumName(SupportRole_Role_name, int32(x))
}
func (SupportRole_Role) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{3, 0} }
// A Google Cloud Platform account that identifies support eligibility for a
// Cloud resource. Currently the Cloud resource can only be an Organization
// but this might change in future.
type SupportAccount struct {
// The resource name for a support account in format
// `supportAccounts/{account_id}`.
// Output only.
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
// Identifier for this entity that gets persisted in storage system. The
// resource name is populated using this field in format
// `supportAccounts/{account_id}`.
AccountId string `protobuf:"bytes,2,opt,name=account_id,json=accountId" json:"account_id,omitempty"`
// The Cloud resource with which this support account is associated.
CloudResource string `protobuf:"bytes,3,opt,name=cloud_resource,json=cloudResource" json:"cloud_resource,omitempty"`
// A user friendly display name assigned to this support account.
DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName" json:"display_name,omitempty"`
// Indicates the current state of an account.
State SupportAccount_State `protobuf:"varint,5,opt,name=state,enum=google.cloud.support.common.SupportAccount_State" json:"state,omitempty"`
// Time when this account was created.
// Output only.
CreateTime *google_protobuf1.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime" json:"create_time,omitempty"`
// The resource name of a billing account associated with this support
// account. For example, `billingAccounts/ABCDEF-012345-567890`.
BillingAccountName string `protobuf:"bytes,7,opt,name=billing_account_name,json=billingAccountName" json:"billing_account_name,omitempty"`
UnifyAccountId string `protobuf:"bytes,8,opt,name=unify_account_id,json=unifyAccountId" json:"unify_account_id,omitempty"`
// The PricingModel applicable to this support account.
PricingModel SupportAccount_PricingModel `protobuf:"varint,9,opt,name=pricing_model,json=pricingModel,enum=google.cloud.support.common.SupportAccount_PricingModel" json:"pricing_model,omitempty"`
}
func (m *SupportAccount) Reset() { *m = SupportAccount{} }
func (m *SupportAccount) String() string { return proto.CompactTextString(m) }
func (*SupportAccount) ProtoMessage() {}
func (*SupportAccount) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
func (m *SupportAccount) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *SupportAccount) GetAccountId() string {
if m != nil {
return m.AccountId
}
return ""
}
func (m *SupportAccount) GetCloudResource() string {
if m != nil {
return m.CloudResource
}
return ""
}
func (m *SupportAccount) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *SupportAccount) GetState() SupportAccount_State {
if m != nil {
return m.State
}
return SupportAccount_STATE_UNSPECIFIED
}
func (m *SupportAccount) GetCreateTime() *google_protobuf1.Timestamp {
if m != nil {
return m.CreateTime
}
return nil
}
func (m *SupportAccount) GetBillingAccountName() string {
if m != nil {
return m.BillingAccountName
}
return ""
}
func (m *SupportAccount) GetUnifyAccountId() string {
if m != nil {
return m.UnifyAccountId
}
return ""
}
func (m *SupportAccount) GetPricingModel() SupportAccount_PricingModel {
if m != nil {
return m.PricingModel
}
return SupportAccount_PRICING_MODEL_UNKNOWN
}
// A support case created by the user.
type Case struct {
// The resource name for the Case in format
// `supportAccounts/{account_id}/cases/{case_id}`
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
// The short summary of the issue reported in this case.
DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName" json:"display_name,omitempty"`
// The board description of issue provided with initial summary.
Description string `protobuf:"bytes,3,opt,name=description" json:"description,omitempty"`
// The product component for which this Case is reported.
Component string `protobuf:"bytes,4,opt,name=component" json:"component,omitempty"`
// The product subcomponent for which this Case is reported.
Subcomponent string `protobuf:"bytes,5,opt,name=subcomponent" json:"subcomponent,omitempty"`
// Timezone the client sending this request is in.
// It should be in a format IANA recognizes: https://www.iana.org/time-zone
// There is no additional validation done by the API.
ClientTimezone string `protobuf:"bytes,6,opt,name=client_timezone,json=clientTimezone" json:"client_timezone,omitempty"`
// The email addresses that can be copied to receive updates on this case.
// Users can specify a maximum of 10 email addresses.
CcAddresses []string `protobuf:"bytes,7,rep,name=cc_addresses,json=ccAddresses" json:"cc_addresses,omitempty"`
// The Google Cloud Platform project ID for which this case is created.
ProjectId string `protobuf:"bytes,8,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
// List of customer issues associated with this case.
Issues []*CustomerIssue `protobuf:"bytes,10,rep,name=issues" json:"issues,omitempty"`
// The current priority of this case.
Priority Case_Priority `protobuf:"varint,11,opt,name=priority,enum=google.cloud.support.common.Case_Priority" json:"priority,omitempty"`
// The current state of this case.
State Case_State `protobuf:"varint,12,opt,name=state,enum=google.cloud.support.common.Case_State" json:"state,omitempty"`
// Time when this case was created.
// Output only.
CreateTime *google_protobuf1.Timestamp `protobuf:"bytes,13,opt,name=create_time,json=createTime" json:"create_time,omitempty"`
// Time when this case was last updated.
// Output only.
UpdateTime *google_protobuf1.Timestamp `protobuf:"bytes,14,opt,name=update_time,json=updateTime" json:"update_time,omitempty"`
// Email address of user who created this case.
// Output only. It is inferred from credentials supplied during case creation.
CreatorEmail string `protobuf:"bytes,15,opt,name=creator_email,json=creatorEmail" json:"creator_email,omitempty"`
// The issue category applicable to this case.
Category string `protobuf:"bytes,16,opt,name=category" json:"category,omitempty"`
}
func (m *Case) Reset() { *m = Case{} }
func (m *Case) String() string { return proto.CompactTextString(m) }
func (*Case) ProtoMessage() {}
func (*Case) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
func (m *Case) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *Case) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *Case) GetDescription() string {
if m != nil {
return m.Description
}
return ""
}
func (m *Case) GetComponent() string {
if m != nil {
return m.Component
}
return ""
}
func (m *Case) GetSubcomponent() string {
if m != nil {
return m.Subcomponent
}
return ""
}
func (m *Case) GetClientTimezone() string {
if m != nil {
return m.ClientTimezone
}
return ""
}
func (m *Case) GetCcAddresses() []string {
if m != nil {
return m.CcAddresses
}
return nil
}
func (m *Case) GetProjectId() string {
if m != nil {
return m.ProjectId
}
return ""
}
func (m *Case) GetIssues() []*CustomerIssue {
if m != nil {
return m.Issues
}
return nil
}
func (m *Case) GetPriority() Case_Priority {
if m != nil {
return m.Priority
}
return Case_PRIORITY_UNSPECIFIED
}
func (m *Case) GetState() Case_State {
if m != nil {
return m.State
}
return Case_STATE_UNSPECIFIED
}
func (m *Case) GetCreateTime() *google_protobuf1.Timestamp {
if m != nil {
return m.CreateTime
}
return nil
}
func (m *Case) GetUpdateTime() *google_protobuf1.Timestamp {
if m != nil {
return m.UpdateTime
}
return nil
}
func (m *Case) GetCreatorEmail() string {
if m != nil {
return m.CreatorEmail
}
return ""
}
func (m *Case) GetCategory() string {
if m != nil {
return m.Category
}
return ""
}
// Reference to a Google internal ticket used for investigating a support case.
// Not every support case will have an internal ticket associated with it.
// A support case can have multiple tickets linked to it.
type CustomerIssue struct {
// Unique identifier for the internal issue.
// Output only.
IssueId string `protobuf:"bytes,1,opt,name=issue_id,json=issueId" json:"issue_id,omitempty"`
// Represents current status of the internal ticket.
// Output only.
State CustomerIssue_IssueState `protobuf:"varint,2,opt,name=state,enum=google.cloud.support.common.CustomerIssue_IssueState" json:"state,omitempty"`
// Time when the internal issue was created.
// Output only.
CreateTime *google_protobuf1.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime" json:"create_time,omitempty"`
// Time when the internal issue was marked as resolved.
// Output only.
ResolveTime *google_protobuf1.Timestamp `protobuf:"bytes,4,opt,name=resolve_time,json=resolveTime" json:"resolve_time,omitempty"`
// Time when the internal issue was last updated.
// Output only.
UpdateTime *google_protobuf1.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime" json:"update_time,omitempty"`
}
func (m *CustomerIssue) Reset() { *m = CustomerIssue{} }
func (m *CustomerIssue) String() string { return proto.CompactTextString(m) }
func (*CustomerIssue) ProtoMessage() {}
func (*CustomerIssue) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
func (m *CustomerIssue) GetIssueId() string {
if m != nil {
return m.IssueId
}
return ""
}
func (m *CustomerIssue) GetState() CustomerIssue_IssueState {
if m != nil {
return m.State
}
return CustomerIssue_ISSUE_STATE_UNSPECIFIED
}
func (m *CustomerIssue) GetCreateTime() *google_protobuf1.Timestamp {
if m != nil {
return m.CreateTime
}
return nil
}
func (m *CustomerIssue) GetResolveTime() *google_protobuf1.Timestamp {
if m != nil {
return m.ResolveTime
}
return nil
}
func (m *CustomerIssue) GetUpdateTime() *google_protobuf1.Timestamp {
if m != nil {
return m.UpdateTime
}
return nil
}
// A message that contains mapping of a user and their role under a support
// account.
type SupportRole struct {
// Email address of user being added through this Role.
Email string `protobuf:"bytes,1,opt,name=email" json:"email,omitempty"`
// The type of role assigned to user.
Role SupportRole_Role `protobuf:"varint,2,opt,name=role,enum=google.cloud.support.common.SupportRole_Role" json:"role,omitempty"`
}
func (m *SupportRole) Reset() { *m = SupportRole{} }
func (m *SupportRole) String() string { return proto.CompactTextString(m) }
func (*SupportRole) ProtoMessage() {}
func (*SupportRole) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
func (m *SupportRole) GetEmail() string {
if m != nil {
return m.Email
}
return ""
}
func (m *SupportRole) GetRole() SupportRole_Role {
if m != nil {
return m.Role
}
return SupportRole_ROLE_UNSPECIFIED
}
// The comment text associated with a `Case`.
type Comment struct {
// Text containing a maximum of 3000 characters.
Text string `protobuf:"bytes,1,opt,name=text" json:"text,omitempty"`
// Time when this update was created.
// Output only.
CreateTime *google_protobuf1.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime" json:"create_time,omitempty"`
// The email address/name of user who created this comment.
// Output only.
Author string `protobuf:"bytes,3,opt,name=author" json:"author,omitempty"`
// The resource name for this comment in format
// `supportAccounts/{account_id}/cases/{case_id}/{comment_id}`.
// Output only.
Name string `protobuf:"bytes,4,opt,name=name" json:"name,omitempty"`
}
func (m *Comment) Reset() { *m = Comment{} }
func (m *Comment) String() string { return proto.CompactTextString(m) }
func (*Comment) ProtoMessage() {}
func (*Comment) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
func (m *Comment) GetText() string {
if m != nil {
return m.Text
}
return ""
}
func (m *Comment) GetCreateTime() *google_protobuf1.Timestamp {
if m != nil {
return m.CreateTime
}
return nil
}
func (m *Comment) GetAuthor() string {
if m != nil {
return m.Author
}
return ""
}
func (m *Comment) GetName() string {
if m != nil {
return m.Name
}
return ""
}
// Represents the product component taxonomy that is to be used while creating
// or updating a `Case`. A client should obtain the list of issue categories,
// component/subcomponent from this object and specify it in `Case.category`,
// `Case.component` and `Case.subcomponent` fields respectively.
type IssueTaxonomy struct {
// Map of available categories.
Categories map[string]*IssueTaxonomy_Category `protobuf:"bytes,1,rep,name=categories" json:"categories,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
}
func (m *IssueTaxonomy) Reset() { *m = IssueTaxonomy{} }
func (m *IssueTaxonomy) String() string { return proto.CompactTextString(m) }
func (*IssueTaxonomy) ProtoMessage() {}
func (*IssueTaxonomy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
func (m *IssueTaxonomy) GetCategories() map[string]*IssueTaxonomy_Category {
if m != nil {
return m.Categories
}
return nil
}
// The representation of a product component. It is composed of a canonical
// name for the product (e.g., Google App Engine), languages in which a
// support ticket can be created under this component, a template that
// provides hints on important details to be filled out before submitting a
// case. It also contains an embedded list of product subcomponents that have
// similar attributes as top-level components.
// (e.g., Google App Engine > Memcache).
type IssueTaxonomy_Component struct {
// User friendly name of this component.
DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName" json:"display_name,omitempty"`
// List of languages in which a support case can be created under this
// component. Represented by language codes in ISO_639-1 standard.
Languages []string `protobuf:"bytes,2,rep,name=languages" json:"languages,omitempty"`
// Template to be used while filling the description of a support case.
Template string `protobuf:"bytes,3,opt,name=template" json:"template,omitempty"`
// List of subcomponents under this component.
Subcomponents []*IssueTaxonomy_Component `protobuf:"bytes,4,rep,name=subcomponents" json:"subcomponents,omitempty"`
}
func (m *IssueTaxonomy_Component) Reset() { *m = IssueTaxonomy_Component{} }
func (m *IssueTaxonomy_Component) String() string { return proto.CompactTextString(m) }
func (*IssueTaxonomy_Component) ProtoMessage() {}
func (*IssueTaxonomy_Component) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5, 0} }
func (m *IssueTaxonomy_Component) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *IssueTaxonomy_Component) GetLanguages() []string {
if m != nil {
return m.Languages
}
return nil
}
func (m *IssueTaxonomy_Component) GetTemplate() string {
if m != nil {
return m.Template
}
return ""
}
func (m *IssueTaxonomy_Component) GetSubcomponents() []*IssueTaxonomy_Component {
if m != nil {
return m.Subcomponents
}
return nil
}
// Represents the category of issue (Technical or Non-Technical)
// reported through a support case.
type IssueTaxonomy_Category struct {
// User friendly name of this category.
DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName" json:"display_name,omitempty"`
// Map of product components under this category.
Components map[string]*IssueTaxonomy_Component `protobuf:"bytes,2,rep,name=components" json:"components,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
}
func (m *IssueTaxonomy_Category) Reset() { *m = IssueTaxonomy_Category{} }
func (m *IssueTaxonomy_Category) String() string { return proto.CompactTextString(m) }
func (*IssueTaxonomy_Category) ProtoMessage() {}
func (*IssueTaxonomy_Category) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5, 1} }
func (m *IssueTaxonomy_Category) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *IssueTaxonomy_Category) GetComponents() map[string]*IssueTaxonomy_Component {
if m != nil {
return m.Components
}
return nil
}
func init() {
proto.RegisterType((*SupportAccount)(nil), "google.cloud.support.common.SupportAccount")
proto.RegisterType((*Case)(nil), "google.cloud.support.common.Case")
proto.RegisterType((*CustomerIssue)(nil), "google.cloud.support.common.CustomerIssue")
proto.RegisterType((*SupportRole)(nil), "google.cloud.support.common.SupportRole")
proto.RegisterType((*Comment)(nil), "google.cloud.support.common.Comment")
proto.RegisterType((*IssueTaxonomy)(nil), "google.cloud.support.common.IssueTaxonomy")
proto.RegisterType((*IssueTaxonomy_Component)(nil), "google.cloud.support.common.IssueTaxonomy.Component")
proto.RegisterType((*IssueTaxonomy_Category)(nil), "google.cloud.support.common.IssueTaxonomy.Category")
proto.RegisterEnum("google.cloud.support.common.SupportAccount_State", SupportAccount_State_name, SupportAccount_State_value)
proto.RegisterEnum("google.cloud.support.common.SupportAccount_PricingModel", SupportAccount_PricingModel_name, SupportAccount_PricingModel_value)
proto.RegisterEnum("google.cloud.support.common.Case_Priority", Case_Priority_name, Case_Priority_value)
proto.RegisterEnum("google.cloud.support.common.Case_State", Case_State_name, Case_State_value)
proto.RegisterEnum("google.cloud.support.common.CustomerIssue_IssueState", CustomerIssue_IssueState_name, CustomerIssue_IssueState_value)
proto.RegisterEnum("google.cloud.support.common.SupportRole_Role", SupportRole_Role_name, SupportRole_Role_value)
}
func init() { proto.RegisterFile("google/cloud/support/common.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 1336 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0x61, 0x6e, 0xdb, 0xc6,
0x12, 0x0e, 0x29, 0xc9, 0x92, 0x46, 0x96, 0xbd, 0x59, 0x38, 0x79, 0x8c, 0x92, 0xbc, 0x38, 0x7a,
0x78, 0x88, 0x51, 0xa0, 0x72, 0xe2, 0xa4, 0x40, 0x90, 0x20, 0x3f, 0x64, 0x6a, 0x2d, 0xb0, 0x91,
0x49, 0x82, 0xa4, 0xe3, 0x24, 0x45, 0x41, 0xd0, 0xd4, 0x46, 0x65, 0x43, 0x72, 0x09, 0x92, 0x4a,
0xa3, 0x1e, 0xa0, 0x3d, 0x45, 0xef, 0xd0, 0x5f, 0xbd, 0x40, 0x7b, 0x83, 0xde, 0xa1, 0xe7, 0x28,
0x76, 0x49, 0xc9, 0xb2, 0x63, 0xd8, 0x51, 0xfe, 0x68, 0x39, 0xb3, 0x33, 0xb3, 0x33, 0xb3, 0xdf,
0xb7, 0x63, 0xc3, 0xfd, 0x09, 0x63, 0x93, 0x90, 0xee, 0xfa, 0x21, 0x9b, 0x8e, 0x77, 0xb3, 0x69,
0x92, 0xb0, 0x34, 0xdf, 0xf5, 0x59, 0x14, 0xb1, 0xb8, 0x97, 0xa4, 0x2c, 0x67, 0xf8, 0x76, 0x61,
0xd2, 0x13, 0x26, 0xbd, 0xd2, 0xa4, 0x57, 0x98, 0x74, 0xee, 0x94, 0xfe, 0x5e, 0x12, 0xec, 0x7a,
0x71, 0xcc, 0x72, 0x2f, 0x0f, 0x58, 0x9c, 0x15, 0xae, 0x9d, 0x7b, 0xe5, 0xae, 0x90, 0x4e, 0xa6,
0xef, 0x76, 0xf3, 0x20, 0xa2, 0x59, 0xee, 0x45, 0x49, 0x61, 0xd0, 0xfd, 0xa7, 0x0a, 0x1b, 0x76,
0x11, 0xb1, 0xef, 0xfb, 0x6c, 0x1a, 0xe7, 0x18, 0x43, 0x35, 0xf6, 0x22, 0xaa, 0x48, 0xdb, 0xd2,
0x4e, 0xd3, 0x12, 0xdf, 0xf8, 0x2e, 0x80, 0x57, 0x6c, 0xbb, 0xc1, 0x58, 0x91, 0xc5, 0x4e, 0xb3,
0xd4, 0x68, 0x63, 0xfc, 0x7f, 0xd8, 0x10, 0xc9, 0xb9, 0x29, 0xcd, 0xd8, 0x34, 0xf5, 0xa9, 0x52,
0x11, 0x26, 0x6d, 0xa1, 0xb5, 0x4a, 0x25, 0xbe, 0x0f, 0xeb, 0xe3, 0x20, 0x4b, 0x42, 0x6f, 0xe6,
0x8a, 0x13, 0xaa, 0xc2, 0xa8, 0x55, 0xea, 0x74, 0x7e, 0xd0, 0x10, 0x6a, 0x59, 0xee, 0xe5, 0x54,
0xa9, 0x6d, 0x4b, 0x3b, 0x1b, 0x7b, 0x8f, 0x7a, 0x97, 0xd4, 0xde, 0x3b, 0x9b, 0x78, 0xcf, 0xe6,
0x8e, 0x56, 0xe1, 0x8f, 0x9f, 0x43, 0xcb, 0x4f, 0xa9, 0x97, 0x53, 0x97, 0x97, 0xac, 0xac, 0x6d,
0x4b, 0x3b, 0xad, 0xbd, 0xce, 0x3c, 0xdc, 0xbc, 0x1f, 0x3d, 0x67, 0xde, 0x0f, 0x0b, 0x0a, 0x73,
0xae, 0xc0, 0x0f, 0x61, 0xeb, 0x24, 0x08, 0xc3, 0x20, 0x9e, 0xb8, 0xf3, 0xb2, 0x45, 0xc2, 0x75,
0x91, 0x30, 0x2e, 0xf7, 0xca, 0x73, 0x45, 0xde, 0x3b, 0x80, 0xa6, 0x71, 0xf0, 0x6e, 0xe6, 0x2e,
0xb5, 0xa9, 0x21, 0xac, 0x37, 0x84, 0xbe, 0xbf, 0xe8, 0xd5, 0xf7, 0xd0, 0x4e, 0xd2, 0xc0, 0xe7,
0xb1, 0x23, 0x36, 0xa6, 0xa1, 0xd2, 0x14, 0x95, 0x3e, 0x5d, 0xa5, 0x52, 0xb3, 0x08, 0x70, 0xc8,
0xfd, 0xad, 0xf5, 0x64, 0x49, 0xea, 0x1e, 0x42, 0x4d, 0xf4, 0x01, 0xdf, 0x80, 0xeb, 0xb6, 0xd3,
0x77, 0x88, 0x7b, 0xa4, 0xdb, 0x26, 0x51, 0xb5, 0x03, 0x8d, 0x0c, 0xd0, 0x35, 0x0c, 0xb0, 0xd6,
0x57, 0x1d, 0xed, 0x15, 0x41, 0x12, 0x6e, 0x41, 0xdd, 0x24, 0xfa, 0x40, 0xd3, 0x87, 0x48, 0xc6,
0x5b, 0x80, 0x4a, 0xc1, 0x1d, 0x90, 0x11, 0x71, 0x34, 0x43, 0x47, 0x95, 0xee, 0x10, 0xd6, 0x97,
0x0f, 0xc3, 0xb7, 0xe0, 0x86, 0x69, 0x69, 0x2a, 0xb7, 0x3a, 0x34, 0x06, 0x64, 0xe4, 0x1e, 0xe9,
0x2f, 0x75, 0xe3, 0x58, 0x47, 0xd7, 0xf0, 0x3a, 0x34, 0xcc, 0xbe, 0xfa, 0xb2, 0x3f, 0x24, 0x36,
0x92, 0xf0, 0x06, 0xc0, 0x91, 0x4d, 0x2c, 0xd7, 0x32, 0x46, 0xc4, 0x46, 0x72, 0xf7, 0x8f, 0x3a,
0x54, 0x55, 0x2f, 0xa3, 0x17, 0xc2, 0xeb, 0x3c, 0x30, 0xe4, 0x4f, 0x81, 0xb1, 0x0d, 0xad, 0x31,
0xcd, 0xfc, 0x34, 0x48, 0x38, 0xbe, 0x4b, 0x7c, 0x2d, 0xab, 0xf0, 0x1d, 0x68, 0xfa, 0x2c, 0x4a,
0x58, 0x4c, 0xe3, 0xbc, 0x84, 0xd6, 0xa9, 0x02, 0x77, 0x61, 0x3d, 0x9b, 0x9e, 0x9c, 0x1a, 0xd4,
0x84, 0xc1, 0x19, 0x1d, 0x7e, 0x00, 0x9b, 0x7e, 0x18, 0xd0, 0x38, 0x17, 0x98, 0xf9, 0x99, 0xc5,
0x05, 0x6e, 0x9a, 0xd6, 0x46, 0xa1, 0x76, 0x4a, 0x2d, 0xcf, 0xd7, 0xf7, 0x5d, 0x6f, 0x3c, 0x4e,
0x69, 0x96, 0xd1, 0x4c, 0xa9, 0x6f, 0x57, 0x78, 0x36, 0xbe, 0xdf, 0x9f, 0xab, 0x38, 0x63, 0x92,
0x94, 0xfd, 0x48, 0xfd, 0x25, 0x28, 0x34, 0x4b, 0x8d, 0x36, 0xc6, 0xfb, 0xb0, 0x16, 0x64, 0xd9,
0x94, 0x66, 0x0a, 0x6c, 0x57, 0x76, 0x5a, 0x7b, 0x5f, 0x5d, 0x7a, 0xfd, 0xea, 0x34, 0xcb, 0x59,
0x44, 0x53, 0x8d, 0xbb, 0x58, 0xa5, 0x27, 0x3e, 0x80, 0x46, 0x92, 0x06, 0x2c, 0x0d, 0xf2, 0x99,
0xd2, 0x12, 0x20, 0xba, 0x22, 0x8a, 0x97, 0x51, 0x0e, 0x1d, 0xe1, 0x61, 0x2d, 0x7c, 0xf1, 0x8b,
0x39, 0xe7, 0xd6, 0x45, 0x90, 0x07, 0x57, 0x07, 0xb9, 0x8c, 0x69, 0xed, 0x95, 0x98, 0xf6, 0x1c,
0x5a, 0xd3, 0x64, 0xbc, 0x70, 0xde, 0xb8, 0xda, 0xb9, 0x30, 0x17, 0xce, 0xff, 0x83, 0xb6, 0x08,
0xc5, 0x52, 0x97, 0x46, 0x5e, 0x10, 0x2a, 0x9b, 0xc5, 0xa5, 0x96, 0x4a, 0xc2, 0x75, 0xb8, 0x03,
0x0d, 0xdf, 0xcb, 0xe9, 0x84, 0xa5, 0x33, 0x05, 0x89, 0xfd, 0x85, 0xdc, 0x1d, 0x41, 0x63, 0xde,
0x0f, 0xac, 0xc0, 0x96, 0x69, 0x69, 0x86, 0xa5, 0x39, 0x6f, 0xce, 0x51, 0x66, 0x0d, 0x64, 0xf3,
0x21, 0x92, 0xc4, 0xfa, 0x08, 0xc9, 0x62, 0xdd, 0x43, 0x15, 0xb1, 0x3e, 0x46, 0x55, 0xb1, 0x3e,
0x41, 0xb5, 0xee, 0xdf, 0xd2, 0x15, 0xdc, 0xab, 0x43, 0x45, 0x27, 0xc7, 0x48, 0xe2, 0x54, 0xe9,
0xdb, 0xb6, 0x36, 0xd4, 0xc9, 0x00, 0xc9, 0xf8, 0xbf, 0xd0, 0xd1, 0x74, 0xd7, 0xb4, 0x8c, 0xa1,
0x45, 0x6c, 0xdb, 0x1d, 0x1a, 0xc6, 0x70, 0x44, 0x5c, 0xfb, 0xc8, 0x34, 0x0d, 0xcb, 0x41, 0x15,
0xdc, 0x81, 0x9b, 0x17, 0xec, 0x13, 0x7d, 0x88, 0xaa, 0xf8, 0x36, 0xfc, 0x67, 0x79, 0x4f, 0x70,
0xd1, 0xd5, 0x6c, 0xfb, 0x88, 0xa0, 0x1a, 0xbe, 0x0f, 0x77, 0x8f, 0xfb, 0x9a, 0xc3, 0xc9, 0x7a,
0x60, 0x58, 0xae, 0x7a, 0x64, 0x3b, 0xc6, 0x21, 0xe7, 0x24, 0xb1, 0x4d, 0x43, 0xb7, 0x09, 0x5a,
0xe3, 0xac, 0xb7, 0x8d, 0xd1, 0x11, 0x67, 0xbb, 0x6b, 0x1c, 0x1c, 0x10, 0x8b, 0x0c, 0x50, 0x9d,
0x3f, 0x12, 0xea, 0xc8, 0xb0, 0xc9, 0x00, 0x35, 0xba, 0xbf, 0x55, 0xa0, 0x7d, 0x06, 0x7f, 0xf8,
0x16, 0x34, 0x04, 0x02, 0x39, 0xb0, 0x0b, 0x16, 0xd7, 0x85, 0xac, 0x8d, 0xf1, 0xcb, 0x39, 0x94,
0x64, 0x01, 0xa5, 0x6f, 0x3e, 0x1f, 0xd5, 0x3d, 0xf1, 0x7b, 0x19, 0xb0, 0x2a, 0x2b, 0x01, 0xeb,
0x05, 0xac, 0xf3, 0x61, 0x14, 0x7e, 0x28, 0xbd, 0xab, 0x57, 0x7a, 0xb7, 0x4a, 0xfb, 0x8b, 0x70,
0x59, 0x5b, 0x05, 0x97, 0xdd, 0xf7, 0x00, 0xa7, 0xd5, 0x88, 0x2b, 0xe2, 0x17, 0xe2, 0x5e, 0x04,
0x89, 0x06, 0x54, 0x0d, 0x93, 0xe8, 0x48, 0xc2, 0x9b, 0xd0, 0x5a, 0xba, 0x49, 0x24, 0xe3, 0x26,
0xd4, 0x0e, 0xb4, 0xd7, 0x64, 0x80, 0x2a, 0x1c, 0x2f, 0xc7, 0x86, 0xee, 0xb8, 0x07, 0xda, 0x6b,
0x54, 0xe5, 0xd2, 0x2b, 0x62, 0x15, 0x11, 0x6a, 0xdd, 0x3f, 0x25, 0x68, 0x95, 0xe3, 0xc1, 0x62,
0x21, 0xc5, 0x5b, 0x50, 0x2b, 0xc8, 0x50, 0x5c, 0x4d, 0x21, 0xe0, 0x3e, 0x54, 0x53, 0x16, 0xce,
0xef, 0xe5, 0xeb, 0xcf, 0x19, 0x36, 0x3c, 0x5a, 0x8f, 0xff, 0x58, 0xc2, 0xb5, 0xfb, 0x1d, 0x54,
0xcb, 0x03, 0x10, 0x7f, 0xd4, 0xcf, 0x15, 0xd2, 0x84, 0xda, 0x7e, 0xdf, 0xd6, 0x54, 0x24, 0xe1,
0x36, 0x34, 0x07, 0xe4, 0x15, 0x19, 0x19, 0x26, 0xb1, 0x90, 0xcc, 0x45, 0xfe, 0xd5, 0x2f, 0x26,
0x8a, 0x40, 0x9c, 0xe6, 0x10, 0xd7, 0x22, 0x23, 0xad, 0xbf, 0xaf, 0x8d, 0x34, 0xe7, 0x0d, 0xaa,
0x76, 0x7f, 0x91, 0xa0, 0xae, 0xb2, 0x28, 0xa2, 0xc5, 0x1f, 0x20, 0x39, 0xfd, 0x98, 0xcf, 0x27,
0x04, 0xff, 0x3e, 0x8f, 0x05, 0x79, 0x25, 0x2c, 0xdc, 0x84, 0x35, 0x6f, 0x9a, 0xff, 0xc0, 0xd2,
0x72, 0x6c, 0x94, 0xd2, 0x62, 0x14, 0x55, 0x4f, 0x47, 0x51, 0xf7, 0xf7, 0x1a, 0xb4, 0xc5, 0xe5,
0x39, 0xde, 0x47, 0x16, 0xb3, 0x68, 0x86, 0xdf, 0x02, 0x94, 0x0f, 0x46, 0x40, 0x33, 0x45, 0x12,
0xcf, 0xf5, 0xb3, 0x4b, 0x1b, 0x78, 0xc6, 0xbf, 0xa7, 0x2e, 0x9c, 0x49, 0x9c, 0xa7, 0x33, 0x6b,
0x29, 0x5a, 0xe7, 0x2f, 0x09, 0x9a, 0xea, 0x62, 0xfe, 0x9c, 0x1f, 0x83, 0xd2, 0xa7, 0x63, 0xf0,
0x0e, 0x34, 0x43, 0x2f, 0x9e, 0x4c, 0xbd, 0x09, 0xcd, 0x14, 0x59, 0x8c, 0x9d, 0x53, 0x05, 0x7f,
0xeb, 0x72, 0x1a, 0x25, 0x21, 0x67, 0x60, 0x51, 0xea, 0x42, 0xc6, 0x6f, 0xa1, 0xbd, 0x3c, 0xec,
0x32, 0xa5, 0x2a, 0x2a, 0x79, 0xb2, 0x4a, 0x25, 0x73, 0x67, 0xeb, 0x6c, 0xa8, 0xce, 0xaf, 0x32,
0x34, 0xca, 0x32, 0x67, 0x9f, 0x53, 0x85, 0x0f, 0xb0, 0x94, 0x88, 0x2c, 0x12, 0x51, 0x57, 0x6f,
0xe9, 0x52, 0x46, 0x8b, 0xde, 0x9e, 0x26, 0x95, 0xc1, 0xe6, 0xb9, 0x6d, 0x8c, 0xa0, 0xf2, 0x9e,
0xce, 0xca, 0x8c, 0xf8, 0x27, 0xfe, 0x16, 0x6a, 0x1f, 0xbc, 0x70, 0x3a, 0x47, 0xd4, 0x97, 0x75,
0xa3, 0x08, 0xf1, 0x4c, 0x7e, 0x2a, 0x75, 0x52, 0xd8, 0x3c, 0x77, 0xdf, 0x17, 0x1c, 0xaa, 0x9d,
0x3d, 0xf4, 0xf1, 0x17, 0x54, 0xbe, 0x74, 0xe6, 0xfe, 0x4f, 0x70, 0xcf, 0x67, 0xd1, 0x65, 0x41,
0xf6, 0xaf, 0xab, 0x5c, 0x5b, 0x12, 0xdb, 0xe4, 0x6c, 0x79, 0xdb, 0x2f, 0xed, 0x27, 0x8c, 0xe3,
0xa7, 0xc7, 0xd2, 0xc9, 0xee, 0x84, 0xc6, 0x82, 0x49, 0xbb, 0xc5, 0x96, 0x97, 0x04, 0xd9, 0x85,
0xff, 0x97, 0x3c, 0x2f, 0x96, 0x93, 0x35, 0x61, 0xfd, 0xf8, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff,
0x0c, 0xd0, 0x7b, 0x46, 0xc4, 0x0c, 0x00, 0x00,
}

View File

@@ -0,0 +1,807 @@
// Code generated by protoc-gen-go.
// source: google/cloud/support/v1alpha1/cloud_support.proto
// DO NOT EDIT!
/*
Package support is a generated protocol buffer package.
It is generated from these files:
google/cloud/support/v1alpha1/cloud_support.proto
It has these top-level messages:
GetSupportAccountRequest
ListSupportAccountsRequest
ListSupportAccountsResponse
GetCaseRequest
ListCasesRequest
ListCasesResponse
ListCommentsRequest
ListCommentsResponse
CreateCaseRequest
UpdateCaseRequest
CreateCommentRequest
GetIssueTaxonomyRequest
*/
package support
import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "google.golang.org/genproto/googleapis/api/annotations"
import google_cloud_support_common "google.golang.org/genproto/googleapis/cloud/support/common"
import _ "github.com/golang/protobuf/ptypes/empty"
import google_protobuf3 "google.golang.org/genproto/protobuf/field_mask"
import (
context "golang.org/x/net/context"
grpc "google.golang.org/grpc"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
// The request message for `GetSupportAccount`.
type GetSupportAccountRequest struct {
// The resource name of the support accounts. For example:
// `supportAccounts/accountA`.
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}
func (m *GetSupportAccountRequest) Reset() { *m = GetSupportAccountRequest{} }
func (m *GetSupportAccountRequest) String() string { return proto.CompactTextString(m) }
func (*GetSupportAccountRequest) ProtoMessage() {}
func (*GetSupportAccountRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
func (m *GetSupportAccountRequest) GetName() string {
if m != nil {
return m.Name
}
return ""
}
// The request message for `ListSupportAccount`.
type ListSupportAccountsRequest struct {
// The filter applied to search results. It only supports filtering a support
// account list by a cloud_resource. For example, to filter results by support
// accounts associated with an Organization, its value should be:
// "cloud_resource:organizations/<organization_id>"
Filter string `protobuf:"bytes,1,opt,name=filter" json:"filter,omitempty"`
// Maximum number of accounts fetched with each request.
PageSize int64 `protobuf:"varint,2,opt,name=page_size,json=pageSize" json:"page_size,omitempty"`
// A token identifying the page of results to return. If unspecified, the
// first page is retrieved.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken" json:"page_token,omitempty"`
}
func (m *ListSupportAccountsRequest) Reset() { *m = ListSupportAccountsRequest{} }
func (m *ListSupportAccountsRequest) String() string { return proto.CompactTextString(m) }
func (*ListSupportAccountsRequest) ProtoMessage() {}
func (*ListSupportAccountsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
func (m *ListSupportAccountsRequest) GetFilter() string {
if m != nil {
return m.Filter
}
return ""
}
func (m *ListSupportAccountsRequest) GetPageSize() int64 {
if m != nil {
return m.PageSize
}
return 0
}
func (m *ListSupportAccountsRequest) GetPageToken() string {
if m != nil {
return m.PageToken
}
return ""
}
// The response message for `ListSupportAccount`.
type ListSupportAccountsResponse struct {
// A list of support accounts.
Accounts []*google_cloud_support_common.SupportAccount `protobuf:"bytes,1,rep,name=accounts" json:"accounts,omitempty"`
// A token to retrieve the next page of results. This should be passed on in
// `page_token` field of `ListSupportAccountRequest` for next request. If
// unspecified, there are no more results to retrieve.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken" json:"next_page_token,omitempty"`
}
func (m *ListSupportAccountsResponse) Reset() { *m = ListSupportAccountsResponse{} }
func (m *ListSupportAccountsResponse) String() string { return proto.CompactTextString(m) }
func (*ListSupportAccountsResponse) ProtoMessage() {}
func (*ListSupportAccountsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
func (m *ListSupportAccountsResponse) GetAccounts() []*google_cloud_support_common.SupportAccount {
if m != nil {
return m.Accounts
}
return nil
}
func (m *ListSupportAccountsResponse) GetNextPageToken() string {
if m != nil {
return m.NextPageToken
}
return ""
}
// The request message for `GetCase` method.
type GetCaseRequest struct {
// Name of case resource requested.
// For example: "supportAccounts/accountA/cases/123"
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}
func (m *GetCaseRequest) Reset() { *m = GetCaseRequest{} }
func (m *GetCaseRequest) String() string { return proto.CompactTextString(m) }
func (*GetCaseRequest) ProtoMessage() {}
func (*GetCaseRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
func (m *GetCaseRequest) GetName() string {
if m != nil {
return m.Name
}
return ""
}
// The request message for `ListCase` method.
type ListCasesRequest struct {
// Name of the account resource for which cases are requested. For example:
// "supportAccounts/accountA"
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
// The filter applied to the search results. Currently it only accepts "OPEN"
// or "CLOSED" strings, filtering out cases that are open or resolved.
Filter string `protobuf:"bytes,2,opt,name=filter" json:"filter,omitempty"`
// Maximum number of cases fetched with each request.
PageSize int64 `protobuf:"varint,3,opt,name=page_size,json=pageSize" json:"page_size,omitempty"`
// A token identifying the page of results to return. If unspecified, the
// first page is retrieved.
PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken" json:"page_token,omitempty"`
}
func (m *ListCasesRequest) Reset() { *m = ListCasesRequest{} }
func (m *ListCasesRequest) String() string { return proto.CompactTextString(m) }
func (*ListCasesRequest) ProtoMessage() {}
func (*ListCasesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
func (m *ListCasesRequest) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *ListCasesRequest) GetFilter() string {
if m != nil {
return m.Filter
}
return ""
}
func (m *ListCasesRequest) GetPageSize() int64 {
if m != nil {
return m.PageSize
}
return 0
}
func (m *ListCasesRequest) GetPageToken() string {
if m != nil {
return m.PageToken
}
return ""
}
// The response message for `ListCase` method.
type ListCasesResponse struct {
// A list of cases.
Cases []*google_cloud_support_common.Case `protobuf:"bytes,1,rep,name=cases" json:"cases,omitempty"`
// A token to retrieve the next page of results. This should be passed on in
// `page_token` field of `ListCaseRequest` for next request. If unspecified,
// there are no more results to retrieve.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken" json:"next_page_token,omitempty"`
}
func (m *ListCasesResponse) Reset() { *m = ListCasesResponse{} }
func (m *ListCasesResponse) String() string { return proto.CompactTextString(m) }
func (*ListCasesResponse) ProtoMessage() {}
func (*ListCasesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
func (m *ListCasesResponse) GetCases() []*google_cloud_support_common.Case {
if m != nil {
return m.Cases
}
return nil
}
func (m *ListCasesResponse) GetNextPageToken() string {
if m != nil {
return m.NextPageToken
}
return ""
}
// The request message for `ListComments` method.
type ListCommentsRequest struct {
// The resource name of case for which comments should be listed.
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}
func (m *ListCommentsRequest) Reset() { *m = ListCommentsRequest{} }
func (m *ListCommentsRequest) String() string { return proto.CompactTextString(m) }
func (*ListCommentsRequest) ProtoMessage() {}
func (*ListCommentsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
func (m *ListCommentsRequest) GetName() string {
if m != nil {
return m.Name
}
return ""
}
// The response message for `ListComments` method.
type ListCommentsResponse struct {
// A list of comments.
Comments []*google_cloud_support_common.Comment `protobuf:"bytes,1,rep,name=comments" json:"comments,omitempty"`
}
func (m *ListCommentsResponse) Reset() { *m = ListCommentsResponse{} }
func (m *ListCommentsResponse) String() string { return proto.CompactTextString(m) }
func (*ListCommentsResponse) ProtoMessage() {}
func (*ListCommentsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
func (m *ListCommentsResponse) GetComments() []*google_cloud_support_common.Comment {
if m != nil {
return m.Comments
}
return nil
}
// The request message for `CreateCase` method.
type CreateCaseRequest struct {
// The resource name for `SupportAccount` under which this case is created.
Parent string `protobuf:"bytes,1,opt,name=parent" json:"parent,omitempty"`
// The case resource to create.
Case *google_cloud_support_common.Case `protobuf:"bytes,2,opt,name=case" json:"case,omitempty"`
}
func (m *CreateCaseRequest) Reset() { *m = CreateCaseRequest{} }
func (m *CreateCaseRequest) String() string { return proto.CompactTextString(m) }
func (*CreateCaseRequest) ProtoMessage() {}
func (*CreateCaseRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
func (m *CreateCaseRequest) GetParent() string {
if m != nil {
return m.Parent
}
return ""
}
func (m *CreateCaseRequest) GetCase() *google_cloud_support_common.Case {
if m != nil {
return m.Case
}
return nil
}
// The request message for `UpdateCase` method.
type UpdateCaseRequest struct {
// The case resource to update.
Case *google_cloud_support_common.Case `protobuf:"bytes,1,opt,name=case" json:"case,omitempty"`
// A field that represents attributes of a Case object that should be updated
// as part of this request.
UpdateMask *google_protobuf3.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask" json:"update_mask,omitempty"`
}
func (m *UpdateCaseRequest) Reset() { *m = UpdateCaseRequest{} }
func (m *UpdateCaseRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateCaseRequest) ProtoMessage() {}
func (*UpdateCaseRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
func (m *UpdateCaseRequest) GetCase() *google_cloud_support_common.Case {
if m != nil {
return m.Case
}
return nil
}
func (m *UpdateCaseRequest) GetUpdateMask() *google_protobuf3.FieldMask {
if m != nil {
return m.UpdateMask
}
return nil
}
// The request message for `CreateComment` method.
type CreateCommentRequest struct {
// The resource name of case to which this comment should be added.
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
// The `Comment` to be added to this case.
Comment *google_cloud_support_common.Comment `protobuf:"bytes,2,opt,name=comment" json:"comment,omitempty"`
}
func (m *CreateCommentRequest) Reset() { *m = CreateCommentRequest{} }
func (m *CreateCommentRequest) String() string { return proto.CompactTextString(m) }
func (*CreateCommentRequest) ProtoMessage() {}
func (*CreateCommentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
func (m *CreateCommentRequest) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *CreateCommentRequest) GetComment() *google_cloud_support_common.Comment {
if m != nil {
return m.Comment
}
return nil
}
// The request message for `GetIssueTaxonomy` method.
type GetIssueTaxonomyRequest struct {
}
func (m *GetIssueTaxonomyRequest) Reset() { *m = GetIssueTaxonomyRequest{} }
func (m *GetIssueTaxonomyRequest) String() string { return proto.CompactTextString(m) }
func (*GetIssueTaxonomyRequest) ProtoMessage() {}
func (*GetIssueTaxonomyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
func init() {
proto.RegisterType((*GetSupportAccountRequest)(nil), "google.cloud.support.v1alpha1.GetSupportAccountRequest")
proto.RegisterType((*ListSupportAccountsRequest)(nil), "google.cloud.support.v1alpha1.ListSupportAccountsRequest")
proto.RegisterType((*ListSupportAccountsResponse)(nil), "google.cloud.support.v1alpha1.ListSupportAccountsResponse")
proto.RegisterType((*GetCaseRequest)(nil), "google.cloud.support.v1alpha1.GetCaseRequest")
proto.RegisterType((*ListCasesRequest)(nil), "google.cloud.support.v1alpha1.ListCasesRequest")
proto.RegisterType((*ListCasesResponse)(nil), "google.cloud.support.v1alpha1.ListCasesResponse")
proto.RegisterType((*ListCommentsRequest)(nil), "google.cloud.support.v1alpha1.ListCommentsRequest")
proto.RegisterType((*ListCommentsResponse)(nil), "google.cloud.support.v1alpha1.ListCommentsResponse")
proto.RegisterType((*CreateCaseRequest)(nil), "google.cloud.support.v1alpha1.CreateCaseRequest")
proto.RegisterType((*UpdateCaseRequest)(nil), "google.cloud.support.v1alpha1.UpdateCaseRequest")
proto.RegisterType((*CreateCommentRequest)(nil), "google.cloud.support.v1alpha1.CreateCommentRequest")
proto.RegisterType((*GetIssueTaxonomyRequest)(nil), "google.cloud.support.v1alpha1.GetIssueTaxonomyRequest")
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4
// Client API for CloudSupport service
type CloudSupportClient interface {
// Retrieves the support account details given an account identifier.
// The authenticated user calling this method must be the account owner.
GetSupportAccount(ctx context.Context, in *GetSupportAccountRequest, opts ...grpc.CallOption) (*google_cloud_support_common.SupportAccount, error)
// Retrieves the list of accounts the current authenticated user has access
// to.
ListSupportAccounts(ctx context.Context, in *ListSupportAccountsRequest, opts ...grpc.CallOption) (*ListSupportAccountsResponse, error)
// Retrieves the details for a support case. The current authenticated user
// calling this method must have permissions to view this case.
GetCase(ctx context.Context, in *GetCaseRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Case, error)
// Retrieves the list of support cases associated with an account. The current
// authenticated user must have the permission to list and view these cases.
ListCases(ctx context.Context, in *ListCasesRequest, opts ...grpc.CallOption) (*ListCasesResponse, error)
// Lists all comments from a case.
ListComments(ctx context.Context, in *ListCommentsRequest, opts ...grpc.CallOption) (*ListCommentsResponse, error)
// Creates a case and associates it with a
// [SupportAccount][google.cloud.support.v1alpha2.SupportAcccount]. The
// authenticated user attempting this action must have permissions to create a
// `Case` under that [SupportAccount].
CreateCase(ctx context.Context, in *CreateCaseRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Case, error)
// Updates a support case. Only a small set of details (priority, subject and
// cc_address) can be update after a case is created.
UpdateCase(ctx context.Context, in *UpdateCaseRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Case, error)
// Adds a new comment to a case.
CreateComment(ctx context.Context, in *CreateCommentRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Comment, error)
// Retrieves the taxonomy of product categories and components to be used
// while creating a support case.
GetIssueTaxonomy(ctx context.Context, in *GetIssueTaxonomyRequest, opts ...grpc.CallOption) (*google_cloud_support_common.IssueTaxonomy, error)
}
type cloudSupportClient struct {
cc *grpc.ClientConn
}
func NewCloudSupportClient(cc *grpc.ClientConn) CloudSupportClient {
return &cloudSupportClient{cc}
}
func (c *cloudSupportClient) GetSupportAccount(ctx context.Context, in *GetSupportAccountRequest, opts ...grpc.CallOption) (*google_cloud_support_common.SupportAccount, error) {
out := new(google_cloud_support_common.SupportAccount)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/GetSupportAccount", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) ListSupportAccounts(ctx context.Context, in *ListSupportAccountsRequest, opts ...grpc.CallOption) (*ListSupportAccountsResponse, error) {
out := new(ListSupportAccountsResponse)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/ListSupportAccounts", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) GetCase(ctx context.Context, in *GetCaseRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Case, error) {
out := new(google_cloud_support_common.Case)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/GetCase", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) ListCases(ctx context.Context, in *ListCasesRequest, opts ...grpc.CallOption) (*ListCasesResponse, error) {
out := new(ListCasesResponse)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/ListCases", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) ListComments(ctx context.Context, in *ListCommentsRequest, opts ...grpc.CallOption) (*ListCommentsResponse, error) {
out := new(ListCommentsResponse)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/ListComments", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) CreateCase(ctx context.Context, in *CreateCaseRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Case, error) {
out := new(google_cloud_support_common.Case)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/CreateCase", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) UpdateCase(ctx context.Context, in *UpdateCaseRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Case, error) {
out := new(google_cloud_support_common.Case)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/UpdateCase", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) CreateComment(ctx context.Context, in *CreateCommentRequest, opts ...grpc.CallOption) (*google_cloud_support_common.Comment, error) {
out := new(google_cloud_support_common.Comment)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/CreateComment", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *cloudSupportClient) GetIssueTaxonomy(ctx context.Context, in *GetIssueTaxonomyRequest, opts ...grpc.CallOption) (*google_cloud_support_common.IssueTaxonomy, error) {
out := new(google_cloud_support_common.IssueTaxonomy)
err := grpc.Invoke(ctx, "/google.cloud.support.v1alpha1.CloudSupport/GetIssueTaxonomy", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// Server API for CloudSupport service
type CloudSupportServer interface {
// Retrieves the support account details given an account identifier.
// The authenticated user calling this method must be the account owner.
GetSupportAccount(context.Context, *GetSupportAccountRequest) (*google_cloud_support_common.SupportAccount, error)
// Retrieves the list of accounts the current authenticated user has access
// to.
ListSupportAccounts(context.Context, *ListSupportAccountsRequest) (*ListSupportAccountsResponse, error)
// Retrieves the details for a support case. The current authenticated user
// calling this method must have permissions to view this case.
GetCase(context.Context, *GetCaseRequest) (*google_cloud_support_common.Case, error)
// Retrieves the list of support cases associated with an account. The current
// authenticated user must have the permission to list and view these cases.
ListCases(context.Context, *ListCasesRequest) (*ListCasesResponse, error)
// Lists all comments from a case.
ListComments(context.Context, *ListCommentsRequest) (*ListCommentsResponse, error)
// Creates a case and associates it with a
// [SupportAccount][google.cloud.support.v1alpha2.SupportAcccount]. The
// authenticated user attempting this action must have permissions to create a
// `Case` under that [SupportAccount].
CreateCase(context.Context, *CreateCaseRequest) (*google_cloud_support_common.Case, error)
// Updates a support case. Only a small set of details (priority, subject and
// cc_address) can be update after a case is created.
UpdateCase(context.Context, *UpdateCaseRequest) (*google_cloud_support_common.Case, error)
// Adds a new comment to a case.
CreateComment(context.Context, *CreateCommentRequest) (*google_cloud_support_common.Comment, error)
// Retrieves the taxonomy of product categories and components to be used
// while creating a support case.
GetIssueTaxonomy(context.Context, *GetIssueTaxonomyRequest) (*google_cloud_support_common.IssueTaxonomy, error)
}
func RegisterCloudSupportServer(s *grpc.Server, srv CloudSupportServer) {
s.RegisterService(&_CloudSupport_serviceDesc, srv)
}
func _CloudSupport_GetSupportAccount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetSupportAccountRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).GetSupportAccount(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/GetSupportAccount",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).GetSupportAccount(ctx, req.(*GetSupportAccountRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_ListSupportAccounts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListSupportAccountsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).ListSupportAccounts(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/ListSupportAccounts",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).ListSupportAccounts(ctx, req.(*ListSupportAccountsRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_GetCase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetCaseRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).GetCase(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/GetCase",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).GetCase(ctx, req.(*GetCaseRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_ListCases_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListCasesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).ListCases(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/ListCases",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).ListCases(ctx, req.(*ListCasesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_ListComments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListCommentsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).ListComments(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/ListComments",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).ListComments(ctx, req.(*ListCommentsRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_CreateCase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateCaseRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).CreateCase(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/CreateCase",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).CreateCase(ctx, req.(*CreateCaseRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_UpdateCase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateCaseRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).UpdateCase(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/UpdateCase",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).UpdateCase(ctx, req.(*UpdateCaseRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_CreateComment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateCommentRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).CreateComment(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/CreateComment",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).CreateComment(ctx, req.(*CreateCommentRequest))
}
return interceptor(ctx, in, info, handler)
}
func _CloudSupport_GetIssueTaxonomy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetIssueTaxonomyRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(CloudSupportServer).GetIssueTaxonomy(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.support.v1alpha1.CloudSupport/GetIssueTaxonomy",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CloudSupportServer).GetIssueTaxonomy(ctx, req.(*GetIssueTaxonomyRequest))
}
return interceptor(ctx, in, info, handler)
}
var _CloudSupport_serviceDesc = grpc.ServiceDesc{
ServiceName: "google.cloud.support.v1alpha1.CloudSupport",
HandlerType: (*CloudSupportServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "GetSupportAccount",
Handler: _CloudSupport_GetSupportAccount_Handler,
},
{
MethodName: "ListSupportAccounts",
Handler: _CloudSupport_ListSupportAccounts_Handler,
},
{
MethodName: "GetCase",
Handler: _CloudSupport_GetCase_Handler,
},
{
MethodName: "ListCases",
Handler: _CloudSupport_ListCases_Handler,
},
{
MethodName: "ListComments",
Handler: _CloudSupport_ListComments_Handler,
},
{
MethodName: "CreateCase",
Handler: _CloudSupport_CreateCase_Handler,
},
{
MethodName: "UpdateCase",
Handler: _CloudSupport_UpdateCase_Handler,
},
{
MethodName: "CreateComment",
Handler: _CloudSupport_CreateComment_Handler,
},
{
MethodName: "GetIssueTaxonomy",
Handler: _CloudSupport_GetIssueTaxonomy_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "google/cloud/support/v1alpha1/cloud_support.proto",
}
func init() { proto.RegisterFile("google/cloud/support/v1alpha1/cloud_support.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 863 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0x41, 0x4f, 0x33, 0x45,
0x18, 0xce, 0xb4, 0xc8, 0x07, 0x2f, 0xdf, 0xa7, 0x5f, 0x47, 0x82, 0x65, 0x0b, 0x49, 0x3b, 0x21,
0xa6, 0x56, 0xdd, 0x85, 0x36, 0x88, 0x96, 0x40, 0x14, 0x88, 0x8d, 0x89, 0x26, 0xa4, 0x60, 0x62,
0xbc, 0x34, 0x43, 0x19, 0xd6, 0x95, 0xee, 0xce, 0xda, 0x99, 0x1a, 0x40, 0xbd, 0x78, 0xf1, 0xa6,
0x07, 0x6f, 0x7a, 0xe1, 0xe2, 0x59, 0x0f, 0xfe, 0x13, 0xff, 0x82, 0xfe, 0x0f, 0xb3, 0xb3, 0xb3,
0xed, 0x76, 0x69, 0x77, 0x17, 0x6e, 0xdd, 0x77, 0xde, 0xe7, 0x7d, 0x9f, 0x79, 0xe6, 0x9d, 0x67,
0x0a, 0x3b, 0x36, 0xe7, 0xf6, 0x80, 0x59, 0xfd, 0x01, 0x1f, 0x5d, 0x5a, 0x62, 0xe4, 0xfb, 0x7c,
0x28, 0xad, 0x6f, 0x77, 0xe8, 0xc0, 0xff, 0x8a, 0xee, 0x84, 0xe1, 0x9e, 0x0e, 0x9b, 0xfe, 0x90,
0x4b, 0x8e, 0x37, 0x43, 0x88, 0xa9, 0xd6, 0xcc, 0x68, 0x2d, 0x82, 0x18, 0x1b, 0xba, 0x22, 0xf5,
0x1d, 0x8b, 0x7a, 0x1e, 0x97, 0x54, 0x3a, 0xdc, 0x13, 0x21, 0xd8, 0xa8, 0xcd, 0xec, 0xd7, 0xe7,
0xae, 0xcb, 0x3d, 0x9d, 0x52, 0xd1, 0x29, 0xea, 0xeb, 0x62, 0x74, 0x65, 0x31, 0xd7, 0x97, 0xb7,
0x7a, 0xb1, 0x9a, 0x5c, 0xbc, 0x72, 0xd8, 0xe0, 0xb2, 0xe7, 0x52, 0x71, 0x1d, 0x66, 0x10, 0x13,
0xca, 0x1d, 0x26, 0xcf, 0xc2, 0xca, 0x1f, 0xf5, 0xfb, 0x7c, 0xe4, 0xc9, 0x2e, 0xfb, 0x66, 0xc4,
0x84, 0xc4, 0x18, 0x16, 0x3c, 0xea, 0xb2, 0x32, 0xaa, 0xa2, 0xfa, 0x72, 0x57, 0xfd, 0x26, 0x3e,
0x18, 0x9f, 0x3a, 0x22, 0x01, 0x10, 0x11, 0x62, 0x0d, 0x16, 0xaf, 0x9c, 0x81, 0x64, 0x43, 0x8d,
0xd1, 0x5f, 0xb8, 0x02, 0xcb, 0x3e, 0xb5, 0x59, 0x4f, 0x38, 0x77, 0xac, 0x5c, 0xa8, 0xa2, 0x7a,
0xb1, 0xbb, 0x14, 0x04, 0xce, 0x9c, 0x3b, 0x86, 0x37, 0x01, 0xd4, 0xa2, 0xe4, 0xd7, 0xcc, 0x2b,
0x17, 0x15, 0x50, 0xa5, 0x9f, 0x07, 0x01, 0xf2, 0x33, 0x82, 0xca, 0xcc, 0x96, 0xc2, 0xe7, 0x9e,
0x60, 0xb8, 0x03, 0x4b, 0x54, 0xc7, 0xca, 0xa8, 0x5a, 0xac, 0xaf, 0x34, 0xdf, 0x36, 0x67, 0x6a,
0xae, 0x65, 0x4b, 0xec, 0x75, 0x0c, 0xc6, 0x6f, 0xc2, 0x6b, 0x1e, 0xbb, 0x91, 0xbd, 0x18, 0x99,
0x82, 0x22, 0xf3, 0x22, 0x08, 0x9f, 0x8e, 0x09, 0x6d, 0xc1, 0xab, 0x1d, 0x26, 0x8f, 0xa9, 0x60,
0x69, 0x42, 0xdd, 0xc1, 0xcb, 0x80, 0x75, 0x90, 0x26, 0x52, 0xf2, 0x62, 0x92, 0x15, 0xe6, 0x4b,
0x56, 0x4c, 0x95, 0x6c, 0x21, 0x29, 0x99, 0x84, 0x52, 0xac, 0xb7, 0xd6, 0x69, 0x0f, 0x5e, 0xe9,
0x07, 0x01, 0x2d, 0x52, 0x2d, 0x55, 0x24, 0xb5, 0xbb, 0x30, 0x3f, 0xb7, 0x2e, 0x6f, 0xc1, 0xeb,
0xaa, 0x2b, 0x77, 0x5d, 0x16, 0x9b, 0x89, 0x59, 0xe2, 0x7c, 0x01, 0xab, 0xd3, 0xa9, 0x9a, 0xe3,
0x87, 0xb0, 0xd4, 0xd7, 0x31, 0x4d, 0x73, 0x2b, 0x9d, 0x66, 0x98, 0xdc, 0x1d, 0xa3, 0xc8, 0x05,
0x94, 0x8e, 0x87, 0x8c, 0x4a, 0x16, 0x3f, 0x9f, 0x35, 0x58, 0xf4, 0xe9, 0x90, 0x79, 0x32, 0x1a,
0xcb, 0xf0, 0x0b, 0xef, 0xc2, 0x42, 0xb0, 0x45, 0xb5, 0x9d, 0x5c, 0x8a, 0xa8, 0x74, 0xf2, 0x13,
0x82, 0xd2, 0xe7, 0xfe, 0x65, 0xa2, 0x49, 0x54, 0x0c, 0x3d, 0xaa, 0x18, 0xde, 0x87, 0x95, 0x91,
0xaa, 0xa5, 0x6e, 0xa5, 0xa6, 0x62, 0x44, 0xe8, 0xe8, 0xe2, 0x9a, 0x1f, 0x07, 0x17, 0xf7, 0x33,
0x2a, 0xae, 0xbb, 0x10, 0xa6, 0x07, 0xbf, 0xc9, 0xd7, 0xb0, 0xaa, 0x77, 0xab, 0x85, 0x48, 0x19,
0xb4, 0x43, 0x78, 0xa6, 0x55, 0xd2, 0x4d, 0xf2, 0x49, 0x1b, 0x81, 0xc8, 0x3a, 0xbc, 0xd1, 0x61,
0xf2, 0x13, 0x21, 0x46, 0xec, 0x9c, 0xde, 0x70, 0x8f, 0xbb, 0xb7, 0xba, 0x5d, 0xf3, 0xbf, 0x15,
0x78, 0x7e, 0x1c, 0x14, 0xd1, 0x77, 0x0b, 0xff, 0x81, 0xa0, 0xf4, 0xc0, 0x56, 0xf0, 0x9e, 0x99,
0xea, 0x85, 0xe6, 0x3c, 0x23, 0x32, 0x1e, 0x73, 0xa1, 0x49, 0xe3, 0xc7, 0x7f, 0xfe, 0xfd, 0xb5,
0xb0, 0x85, 0xc9, 0xc4, 0x97, 0xbf, 0x0b, 0x04, 0x38, 0x10, 0xd3, 0x06, 0x62, 0x35, 0x7e, 0xc0,
0x7f, 0xa2, 0x70, 0x66, 0x13, 0xde, 0x82, 0x3f, 0xc8, 0x60, 0x3a, 0xdf, 0x02, 0x8d, 0xf6, 0x53,
0xa0, 0xe1, 0xf8, 0x93, 0x9a, 0xa2, 0x5e, 0xc1, 0xeb, 0x13, 0xea, 0x09, 0xd2, 0xf8, 0x17, 0x04,
0xcf, 0xb4, 0xfb, 0xe0, 0x77, 0xb3, 0xf5, 0x8c, 0x0d, 0xa8, 0x91, 0x3d, 0x92, 0xa4, 0xa9, 0x08,
0xbc, 0x83, 0x1b, 0x99, 0xda, 0x59, 0xca, 0x1b, 0x02, 0x0d, 0xef, 0x11, 0x2c, 0x8f, 0xdd, 0x06,
0x5b, 0x39, 0xb6, 0x1f, 0xf7, 0x44, 0x63, 0x3b, 0x3f, 0x40, 0xab, 0xb4, 0xad, 0x48, 0x36, 0x70,
0x3d, 0xfb, 0x80, 0x43, 0x96, 0xf8, 0x6f, 0x04, 0xcf, 0xe3, 0x7e, 0x83, 0x9b, 0x79, 0x9a, 0x4e,
0xfb, 0x98, 0xd1, 0x7a, 0x14, 0x46, 0x73, 0xdd, 0x57, 0x5c, 0x77, 0x71, 0x2b, 0xbf, 0xa0, 0x56,
0xe4, 0x65, 0xf8, 0x77, 0x04, 0x30, 0x31, 0x33, 0x9c, 0xa5, 0xd4, 0x03, 0xdf, 0xcb, 0x73, 0xe2,
0xef, 0x2b, 0x82, 0x4d, 0x12, 0x3f, 0xf1, 0xd0, 0x1d, 0xe7, 0xca, 0xd9, 0x0e, 0x8d, 0xeb, 0x1e,
0x01, 0x4c, 0x5c, 0x30, 0x93, 0xdd, 0x03, 0xc3, 0xcc, 0xc3, 0xee, 0x40, 0xb1, 0xdb, 0x6b, 0x5a,
0x31, 0x76, 0x41, 0x73, 0x33, 0x43, 0x43, 0x4d, 0xf1, 0x2f, 0x04, 0x2f, 0xa6, 0xfc, 0x11, 0xb7,
0xf2, 0x69, 0x38, 0xe5, 0xa6, 0x46, 0x2e, 0xa3, 0x24, 0x27, 0x8a, 0xeb, 0x21, 0x79, 0xca, 0x51,
0xb7, 0x23, 0x97, 0xc5, 0xbf, 0x21, 0x78, 0x99, 0xb4, 0x59, 0xfc, 0x5e, 0xf6, 0x45, 0x9f, 0xe5,
0xcb, 0x46, 0x23, 0x95, 0xf8, 0x14, 0x84, 0x10, 0x45, 0x7f, 0x03, 0x1b, 0x63, 0xfa, 0x6d, 0x3b,
0x51, 0xf6, 0xe8, 0x7b, 0xa8, 0xf5, 0xb9, 0x9b, 0x4e, 0xe6, 0xa8, 0x14, 0x7f, 0x09, 0x4e, 0x83,
0xf7, 0xeb, 0xcb, 0x13, 0x8d, 0xb0, 0xf9, 0x80, 0x7a, 0xb6, 0xc9, 0x87, 0xb6, 0x65, 0x33, 0x4f,
0xbd, 0x6d, 0x56, 0xb8, 0x44, 0x7d, 0x47, 0xcc, 0xf9, 0x57, 0xbd, 0xaf, 0x03, 0x17, 0x8b, 0x0a,
0xd0, 0xfa, 0x3f, 0x00, 0x00, 0xff, 0xff, 0xad, 0xe1, 0xf2, 0x57, 0x85, 0x0b, 0x00, 0x00,
}

View File

@@ -0,0 +1,990 @@
// Code generated by protoc-gen-go.
// source: google/cloud/videointelligence/v1beta1/video_intelligence.proto
// DO NOT EDIT!
/*
Package videointelligence is a generated protocol buffer package.
It is generated from these files:
google/cloud/videointelligence/v1beta1/video_intelligence.proto
It has these top-level messages:
AnnotateVideoRequest
VideoContext
VideoSegment
LabelLocation
LabelAnnotation
SafeSearchAnnotation
BoundingBox
FaceLocation
FaceAnnotation
VideoAnnotationResults
AnnotateVideoResponse
VideoAnnotationProgress
AnnotateVideoProgress
*/
package videointelligence
import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "google.golang.org/genproto/googleapis/api/annotations"
import google_longrunning "google.golang.org/genproto/googleapis/longrunning"
import google_protobuf3 "github.com/golang/protobuf/ptypes/timestamp"
import google_rpc "google.golang.org/genproto/googleapis/rpc/status"
import (
context "golang.org/x/net/context"
grpc "google.golang.org/grpc"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
// Video annotation feature.
type Feature int32
const (
// Unspecified.
Feature_FEATURE_UNSPECIFIED Feature = 0
// Label detection. Detect objects, such as dog or flower.
Feature_LABEL_DETECTION Feature = 1
// Human face detection and tracking.
Feature_FACE_DETECTION Feature = 2
// Shot change detection.
Feature_SHOT_CHANGE_DETECTION Feature = 3
// Safe search detection.
Feature_SAFE_SEARCH_DETECTION Feature = 4
)
var Feature_name = map[int32]string{
0: "FEATURE_UNSPECIFIED",
1: "LABEL_DETECTION",
2: "FACE_DETECTION",
3: "SHOT_CHANGE_DETECTION",
4: "SAFE_SEARCH_DETECTION",
}
var Feature_value = map[string]int32{
"FEATURE_UNSPECIFIED": 0,
"LABEL_DETECTION": 1,
"FACE_DETECTION": 2,
"SHOT_CHANGE_DETECTION": 3,
"SAFE_SEARCH_DETECTION": 4,
}
func (x Feature) String() string {
return proto.EnumName(Feature_name, int32(x))
}
func (Feature) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
// Label level (scope).
type LabelLevel int32
const (
// Unspecified.
LabelLevel_LABEL_LEVEL_UNSPECIFIED LabelLevel = 0
// Video-level. Corresponds to the whole video.
LabelLevel_VIDEO_LEVEL LabelLevel = 1
// Segment-level. Corresponds to one of `AnnotateSpec.segments`.
LabelLevel_SEGMENT_LEVEL LabelLevel = 2
// Shot-level. Corresponds to a single shot (i.e. a series of frames
// without a major camera position or background change).
LabelLevel_SHOT_LEVEL LabelLevel = 3
// Frame-level. Corresponds to a single video frame.
LabelLevel_FRAME_LEVEL LabelLevel = 4
)
var LabelLevel_name = map[int32]string{
0: "LABEL_LEVEL_UNSPECIFIED",
1: "VIDEO_LEVEL",
2: "SEGMENT_LEVEL",
3: "SHOT_LEVEL",
4: "FRAME_LEVEL",
}
var LabelLevel_value = map[string]int32{
"LABEL_LEVEL_UNSPECIFIED": 0,
"VIDEO_LEVEL": 1,
"SEGMENT_LEVEL": 2,
"SHOT_LEVEL": 3,
"FRAME_LEVEL": 4,
}
func (x LabelLevel) String() string {
return proto.EnumName(LabelLevel_name, int32(x))
}
func (LabelLevel) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
// Label detection mode.
type LabelDetectionMode int32
const (
// Unspecified.
LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED LabelDetectionMode = 0
// Detect shot-level labels.
LabelDetectionMode_SHOT_MODE LabelDetectionMode = 1
// Detect frame-level labels.
LabelDetectionMode_FRAME_MODE LabelDetectionMode = 2
// Detect both shot-level and frame-level labels.
LabelDetectionMode_SHOT_AND_FRAME_MODE LabelDetectionMode = 3
)
var LabelDetectionMode_name = map[int32]string{
0: "LABEL_DETECTION_MODE_UNSPECIFIED",
1: "SHOT_MODE",
2: "FRAME_MODE",
3: "SHOT_AND_FRAME_MODE",
}
var LabelDetectionMode_value = map[string]int32{
"LABEL_DETECTION_MODE_UNSPECIFIED": 0,
"SHOT_MODE": 1,
"FRAME_MODE": 2,
"SHOT_AND_FRAME_MODE": 3,
}
func (x LabelDetectionMode) String() string {
return proto.EnumName(LabelDetectionMode_name, int32(x))
}
func (LabelDetectionMode) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
// Bucketized representation of likelihood.
type Likelihood int32
const (
// Unknown likelihood.
Likelihood_UNKNOWN Likelihood = 0
// Very unlikely.
Likelihood_VERY_UNLIKELY Likelihood = 1
// Unlikely.
Likelihood_UNLIKELY Likelihood = 2
// Possible.
Likelihood_POSSIBLE Likelihood = 3
// Likely.
Likelihood_LIKELY Likelihood = 4
// Very likely.
Likelihood_VERY_LIKELY Likelihood = 5
)
var Likelihood_name = map[int32]string{
0: "UNKNOWN",
1: "VERY_UNLIKELY",
2: "UNLIKELY",
3: "POSSIBLE",
4: "LIKELY",
5: "VERY_LIKELY",
}
var Likelihood_value = map[string]int32{
"UNKNOWN": 0,
"VERY_UNLIKELY": 1,
"UNLIKELY": 2,
"POSSIBLE": 3,
"LIKELY": 4,
"VERY_LIKELY": 5,
}
func (x Likelihood) String() string {
return proto.EnumName(Likelihood_name, int32(x))
}
func (Likelihood) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
// Video annotation request.
type AnnotateVideoRequest struct {
// Input video location. Currently, only
// [Google Cloud Storage](https://cloud.google.com/storage/) URIs are
// supported, which must be specified in the following format:
// `gs://bucket-id/object-id` (other URI formats return
// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For more information, see
// [Request URIs](/storage/docs/reference-uris).
// A video URI may include wildcards in `object-id`, and thus identify
// multiple videos. Supported wildcards: '*' to match 0 or more characters;
// '?' to match 1 character. If unset, the input video should be embedded
// in the request as `input_content`. If set, `input_content` should be unset.
InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri" json:"input_uri,omitempty"`
// The video data bytes. Encoding: base64. If unset, the input video(s)
// should be specified via `input_uri`. If set, `input_uri` should be unset.
InputContent string `protobuf:"bytes,6,opt,name=input_content,json=inputContent" json:"input_content,omitempty"`
// Requested video annotation features.
Features []Feature `protobuf:"varint,2,rep,packed,name=features,enum=google.cloud.videointelligence.v1beta1.Feature" json:"features,omitempty"`
// Additional video context and/or feature-specific parameters.
VideoContext *VideoContext `protobuf:"bytes,3,opt,name=video_context,json=videoContext" json:"video_context,omitempty"`
// Optional location where the output (in JSON format) should be stored.
// Currently, only [Google Cloud Storage](https://cloud.google.com/storage/)
// URIs are supported, which must be specified in the following format:
// `gs://bucket-id/object-id` (other URI formats return
// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For more information, see
// [Request URIs](/storage/docs/reference-uris).
OutputUri string `protobuf:"bytes,4,opt,name=output_uri,json=outputUri" json:"output_uri,omitempty"`
// Optional cloud region where annotation should take place. Supported cloud
// regions: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no region
// is specified, a region will be determined based on video file location.
LocationId string `protobuf:"bytes,5,opt,name=location_id,json=locationId" json:"location_id,omitempty"`
}
func (m *AnnotateVideoRequest) Reset() { *m = AnnotateVideoRequest{} }
func (m *AnnotateVideoRequest) String() string { return proto.CompactTextString(m) }
func (*AnnotateVideoRequest) ProtoMessage() {}
func (*AnnotateVideoRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
func (m *AnnotateVideoRequest) GetInputUri() string {
if m != nil {
return m.InputUri
}
return ""
}
func (m *AnnotateVideoRequest) GetInputContent() string {
if m != nil {
return m.InputContent
}
return ""
}
func (m *AnnotateVideoRequest) GetFeatures() []Feature {
if m != nil {
return m.Features
}
return nil
}
func (m *AnnotateVideoRequest) GetVideoContext() *VideoContext {
if m != nil {
return m.VideoContext
}
return nil
}
func (m *AnnotateVideoRequest) GetOutputUri() string {
if m != nil {
return m.OutputUri
}
return ""
}
func (m *AnnotateVideoRequest) GetLocationId() string {
if m != nil {
return m.LocationId
}
return ""
}
// Video context and/or feature-specific parameters.
type VideoContext struct {
// Video segments to annotate. The segments may overlap and are not required
// to be contiguous or span the whole video. If unspecified, each video
// is treated as a single segment.
Segments []*VideoSegment `protobuf:"bytes,1,rep,name=segments" json:"segments,omitempty"`
// If label detection has been requested, what labels should be detected
// in addition to video-level labels or segment-level labels. If unspecified,
// defaults to `SHOT_MODE`.
LabelDetectionMode LabelDetectionMode `protobuf:"varint,2,opt,name=label_detection_mode,json=labelDetectionMode,enum=google.cloud.videointelligence.v1beta1.LabelDetectionMode" json:"label_detection_mode,omitempty"`
// Whether the video has been shot from a stationary (i.e. non-moving) camera.
// When set to true, might improve detection accuracy for moving objects.
StationaryCamera bool `protobuf:"varint,3,opt,name=stationary_camera,json=stationaryCamera" json:"stationary_camera,omitempty"`
// Model to use for label detection.
// Supported values: "latest" and "stable" (the default).
LabelDetectionModel string `protobuf:"bytes,4,opt,name=label_detection_model,json=labelDetectionModel" json:"label_detection_model,omitempty"`
// Model to use for face detection.
// Supported values: "latest" and "stable" (the default).
FaceDetectionModel string `protobuf:"bytes,5,opt,name=face_detection_model,json=faceDetectionModel" json:"face_detection_model,omitempty"`
// Model to use for shot change detection.
// Supported values: "latest" and "stable" (the default).
ShotChangeDetectionModel string `protobuf:"bytes,6,opt,name=shot_change_detection_model,json=shotChangeDetectionModel" json:"shot_change_detection_model,omitempty"`
// Model to use for safe search detection.
// Supported values: "latest" and "stable" (the default).
SafeSearchDetectionModel string `protobuf:"bytes,7,opt,name=safe_search_detection_model,json=safeSearchDetectionModel" json:"safe_search_detection_model,omitempty"`
}
func (m *VideoContext) Reset() { *m = VideoContext{} }
func (m *VideoContext) String() string { return proto.CompactTextString(m) }
func (*VideoContext) ProtoMessage() {}
func (*VideoContext) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
func (m *VideoContext) GetSegments() []*VideoSegment {
if m != nil {
return m.Segments
}
return nil
}
func (m *VideoContext) GetLabelDetectionMode() LabelDetectionMode {
if m != nil {
return m.LabelDetectionMode
}
return LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED
}
func (m *VideoContext) GetStationaryCamera() bool {
if m != nil {
return m.StationaryCamera
}
return false
}
func (m *VideoContext) GetLabelDetectionModel() string {
if m != nil {
return m.LabelDetectionModel
}
return ""
}
func (m *VideoContext) GetFaceDetectionModel() string {
if m != nil {
return m.FaceDetectionModel
}
return ""
}
func (m *VideoContext) GetShotChangeDetectionModel() string {
if m != nil {
return m.ShotChangeDetectionModel
}
return ""
}
func (m *VideoContext) GetSafeSearchDetectionModel() string {
if m != nil {
return m.SafeSearchDetectionModel
}
return ""
}
// Video segment.
type VideoSegment struct {
// Start offset in microseconds (inclusive). Unset means 0.
StartTimeOffset int64 `protobuf:"varint,1,opt,name=start_time_offset,json=startTimeOffset" json:"start_time_offset,omitempty"`
// End offset in microseconds (inclusive). Unset means 0.
EndTimeOffset int64 `protobuf:"varint,2,opt,name=end_time_offset,json=endTimeOffset" json:"end_time_offset,omitempty"`
}
func (m *VideoSegment) Reset() { *m = VideoSegment{} }
func (m *VideoSegment) String() string { return proto.CompactTextString(m) }
func (*VideoSegment) ProtoMessage() {}
func (*VideoSegment) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
func (m *VideoSegment) GetStartTimeOffset() int64 {
if m != nil {
return m.StartTimeOffset
}
return 0
}
func (m *VideoSegment) GetEndTimeOffset() int64 {
if m != nil {
return m.EndTimeOffset
}
return 0
}
// Label location.
type LabelLocation struct {
// Video segment. Set to [-1, -1] for video-level labels.
// Set to [timestamp, timestamp] for frame-level labels.
// Otherwise, corresponds to one of `AnnotateSpec.segments`
// (if specified) or to shot boundaries (if requested).
Segment *VideoSegment `protobuf:"bytes,1,opt,name=segment" json:"segment,omitempty"`
// Confidence that the label is accurate. Range: [0, 1].
Confidence float32 `protobuf:"fixed32,2,opt,name=confidence" json:"confidence,omitempty"`
// Label level.
Level LabelLevel `protobuf:"varint,3,opt,name=level,enum=google.cloud.videointelligence.v1beta1.LabelLevel" json:"level,omitempty"`
}
func (m *LabelLocation) Reset() { *m = LabelLocation{} }
func (m *LabelLocation) String() string { return proto.CompactTextString(m) }
func (*LabelLocation) ProtoMessage() {}
func (*LabelLocation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
func (m *LabelLocation) GetSegment() *VideoSegment {
if m != nil {
return m.Segment
}
return nil
}
func (m *LabelLocation) GetConfidence() float32 {
if m != nil {
return m.Confidence
}
return 0
}
func (m *LabelLocation) GetLevel() LabelLevel {
if m != nil {
return m.Level
}
return LabelLevel_LABEL_LEVEL_UNSPECIFIED
}
// Label annotation.
type LabelAnnotation struct {
// Textual description, e.g. `Fixed-gear bicycle`.
Description string `protobuf:"bytes,1,opt,name=description" json:"description,omitempty"`
// Language code for `description` in BCP-47 format.
LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode" json:"language_code,omitempty"`
// Where the label was detected and with what confidence.
Locations []*LabelLocation `protobuf:"bytes,3,rep,name=locations" json:"locations,omitempty"`
}
func (m *LabelAnnotation) Reset() { *m = LabelAnnotation{} }
func (m *LabelAnnotation) String() string { return proto.CompactTextString(m) }
func (*LabelAnnotation) ProtoMessage() {}
func (*LabelAnnotation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
func (m *LabelAnnotation) GetDescription() string {
if m != nil {
return m.Description
}
return ""
}
func (m *LabelAnnotation) GetLanguageCode() string {
if m != nil {
return m.LanguageCode
}
return ""
}
func (m *LabelAnnotation) GetLocations() []*LabelLocation {
if m != nil {
return m.Locations
}
return nil
}
// Safe search annotation (based on per-frame visual signals only).
// If no unsafe content has been detected in a frame, no annotations
// are present for that frame. If only some types of unsafe content
// have been detected in a frame, the likelihood is set to `UNKNOWN`
// for all other types of unsafe content.
type SafeSearchAnnotation struct {
// Likelihood of adult content.
Adult Likelihood `protobuf:"varint,1,opt,name=adult,enum=google.cloud.videointelligence.v1beta1.Likelihood" json:"adult,omitempty"`
// Likelihood that an obvious modification was made to the original
// version to make it appear funny or offensive.
Spoof Likelihood `protobuf:"varint,2,opt,name=spoof,enum=google.cloud.videointelligence.v1beta1.Likelihood" json:"spoof,omitempty"`
// Likelihood of medical content.
Medical Likelihood `protobuf:"varint,3,opt,name=medical,enum=google.cloud.videointelligence.v1beta1.Likelihood" json:"medical,omitempty"`
// Likelihood of violent content.
Violent Likelihood `protobuf:"varint,4,opt,name=violent,enum=google.cloud.videointelligence.v1beta1.Likelihood" json:"violent,omitempty"`
// Likelihood of racy content.
Racy Likelihood `protobuf:"varint,5,opt,name=racy,enum=google.cloud.videointelligence.v1beta1.Likelihood" json:"racy,omitempty"`
// Video time offset in microseconds.
TimeOffset int64 `protobuf:"varint,6,opt,name=time_offset,json=timeOffset" json:"time_offset,omitempty"`
}
func (m *SafeSearchAnnotation) Reset() { *m = SafeSearchAnnotation{} }
func (m *SafeSearchAnnotation) String() string { return proto.CompactTextString(m) }
func (*SafeSearchAnnotation) ProtoMessage() {}
func (*SafeSearchAnnotation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
func (m *SafeSearchAnnotation) GetAdult() Likelihood {
if m != nil {
return m.Adult
}
return Likelihood_UNKNOWN
}
func (m *SafeSearchAnnotation) GetSpoof() Likelihood {
if m != nil {
return m.Spoof
}
return Likelihood_UNKNOWN
}
func (m *SafeSearchAnnotation) GetMedical() Likelihood {
if m != nil {
return m.Medical
}
return Likelihood_UNKNOWN
}
func (m *SafeSearchAnnotation) GetViolent() Likelihood {
if m != nil {
return m.Violent
}
return Likelihood_UNKNOWN
}
func (m *SafeSearchAnnotation) GetRacy() Likelihood {
if m != nil {
return m.Racy
}
return Likelihood_UNKNOWN
}
func (m *SafeSearchAnnotation) GetTimeOffset() int64 {
if m != nil {
return m.TimeOffset
}
return 0
}
// Bounding box.
type BoundingBox struct {
// Left X coordinate.
Left int32 `protobuf:"varint,1,opt,name=left" json:"left,omitempty"`
// Right X coordinate.
Right int32 `protobuf:"varint,2,opt,name=right" json:"right,omitempty"`
// Bottom Y coordinate.
Bottom int32 `protobuf:"varint,3,opt,name=bottom" json:"bottom,omitempty"`
// Top Y coordinate.
Top int32 `protobuf:"varint,4,opt,name=top" json:"top,omitempty"`
}
func (m *BoundingBox) Reset() { *m = BoundingBox{} }
func (m *BoundingBox) String() string { return proto.CompactTextString(m) }
func (*BoundingBox) ProtoMessage() {}
func (*BoundingBox) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
func (m *BoundingBox) GetLeft() int32 {
if m != nil {
return m.Left
}
return 0
}
func (m *BoundingBox) GetRight() int32 {
if m != nil {
return m.Right
}
return 0
}
func (m *BoundingBox) GetBottom() int32 {
if m != nil {
return m.Bottom
}
return 0
}
func (m *BoundingBox) GetTop() int32 {
if m != nil {
return m.Top
}
return 0
}
// Face location.
type FaceLocation struct {
// Bounding box in a frame.
BoundingBox *BoundingBox `protobuf:"bytes,1,opt,name=bounding_box,json=boundingBox" json:"bounding_box,omitempty"`
// Video time offset in microseconds.
TimeOffset int64 `protobuf:"varint,2,opt,name=time_offset,json=timeOffset" json:"time_offset,omitempty"`
}
func (m *FaceLocation) Reset() { *m = FaceLocation{} }
func (m *FaceLocation) String() string { return proto.CompactTextString(m) }
func (*FaceLocation) ProtoMessage() {}
func (*FaceLocation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
func (m *FaceLocation) GetBoundingBox() *BoundingBox {
if m != nil {
return m.BoundingBox
}
return nil
}
func (m *FaceLocation) GetTimeOffset() int64 {
if m != nil {
return m.TimeOffset
}
return 0
}
// Face annotation.
type FaceAnnotation struct {
// Thumbnail of a representative face view (in JPEG format). Encoding: base64.
Thumbnail string `protobuf:"bytes,1,opt,name=thumbnail" json:"thumbnail,omitempty"`
// All locations where a face was detected.
// Faces are detected and tracked on a per-video basis
// (as opposed to across multiple videos).
Segments []*VideoSegment `protobuf:"bytes,2,rep,name=segments" json:"segments,omitempty"`
// Face locations at one frame per second.
Locations []*FaceLocation `protobuf:"bytes,3,rep,name=locations" json:"locations,omitempty"`
}
func (m *FaceAnnotation) Reset() { *m = FaceAnnotation{} }
func (m *FaceAnnotation) String() string { return proto.CompactTextString(m) }
func (*FaceAnnotation) ProtoMessage() {}
func (*FaceAnnotation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
func (m *FaceAnnotation) GetThumbnail() string {
if m != nil {
return m.Thumbnail
}
return ""
}
func (m *FaceAnnotation) GetSegments() []*VideoSegment {
if m != nil {
return m.Segments
}
return nil
}
func (m *FaceAnnotation) GetLocations() []*FaceLocation {
if m != nil {
return m.Locations
}
return nil
}
// Annotation results for a single video.
type VideoAnnotationResults struct {
// Video file location in
// [Google Cloud Storage](https://cloud.google.com/storage/).
InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri" json:"input_uri,omitempty"`
// Label annotations. There is exactly one element for each unique label.
LabelAnnotations []*LabelAnnotation `protobuf:"bytes,2,rep,name=label_annotations,json=labelAnnotations" json:"label_annotations,omitempty"`
// Face annotations. There is exactly one element for each unique face.
FaceAnnotations []*FaceAnnotation `protobuf:"bytes,3,rep,name=face_annotations,json=faceAnnotations" json:"face_annotations,omitempty"`
// Shot annotations. Each shot is represented as a video segment.
ShotAnnotations []*VideoSegment `protobuf:"bytes,4,rep,name=shot_annotations,json=shotAnnotations" json:"shot_annotations,omitempty"`
// Safe search annotations.
SafeSearchAnnotations []*SafeSearchAnnotation `protobuf:"bytes,6,rep,name=safe_search_annotations,json=safeSearchAnnotations" json:"safe_search_annotations,omitempty"`
// If set, indicates an error. Note that for a single `AnnotateVideoRequest`
// some videos may succeed and some may fail.
Error *google_rpc.Status `protobuf:"bytes,5,opt,name=error" json:"error,omitempty"`
}
func (m *VideoAnnotationResults) Reset() { *m = VideoAnnotationResults{} }
func (m *VideoAnnotationResults) String() string { return proto.CompactTextString(m) }
func (*VideoAnnotationResults) ProtoMessage() {}
func (*VideoAnnotationResults) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
func (m *VideoAnnotationResults) GetInputUri() string {
if m != nil {
return m.InputUri
}
return ""
}
func (m *VideoAnnotationResults) GetLabelAnnotations() []*LabelAnnotation {
if m != nil {
return m.LabelAnnotations
}
return nil
}
func (m *VideoAnnotationResults) GetFaceAnnotations() []*FaceAnnotation {
if m != nil {
return m.FaceAnnotations
}
return nil
}
func (m *VideoAnnotationResults) GetShotAnnotations() []*VideoSegment {
if m != nil {
return m.ShotAnnotations
}
return nil
}
func (m *VideoAnnotationResults) GetSafeSearchAnnotations() []*SafeSearchAnnotation {
if m != nil {
return m.SafeSearchAnnotations
}
return nil
}
func (m *VideoAnnotationResults) GetError() *google_rpc.Status {
if m != nil {
return m.Error
}
return nil
}
// Video annotation response. Included in the `response`
// field of the `Operation` returned by the `GetOperation`
// call of the `google::longrunning::Operations` service.
type AnnotateVideoResponse struct {
// Annotation results for all videos specified in `AnnotateVideoRequest`.
AnnotationResults []*VideoAnnotationResults `protobuf:"bytes,1,rep,name=annotation_results,json=annotationResults" json:"annotation_results,omitempty"`
}
func (m *AnnotateVideoResponse) Reset() { *m = AnnotateVideoResponse{} }
func (m *AnnotateVideoResponse) String() string { return proto.CompactTextString(m) }
func (*AnnotateVideoResponse) ProtoMessage() {}
func (*AnnotateVideoResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
func (m *AnnotateVideoResponse) GetAnnotationResults() []*VideoAnnotationResults {
if m != nil {
return m.AnnotationResults
}
return nil
}
// Annotation progress for a single video.
type VideoAnnotationProgress struct {
// Video file location in
// [Google Cloud Storage](https://cloud.google.com/storage/).
InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri" json:"input_uri,omitempty"`
// Approximate percentage processed thus far.
// Guaranteed to be 100 when fully processed.
ProgressPercent int32 `protobuf:"varint,2,opt,name=progress_percent,json=progressPercent" json:"progress_percent,omitempty"`
// Time when the request was received.
StartTime *google_protobuf3.Timestamp `protobuf:"bytes,3,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
// Time of the most recent update.
UpdateTime *google_protobuf3.Timestamp `protobuf:"bytes,4,opt,name=update_time,json=updateTime" json:"update_time,omitempty"`
}
func (m *VideoAnnotationProgress) Reset() { *m = VideoAnnotationProgress{} }
func (m *VideoAnnotationProgress) String() string { return proto.CompactTextString(m) }
func (*VideoAnnotationProgress) ProtoMessage() {}
func (*VideoAnnotationProgress) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
func (m *VideoAnnotationProgress) GetInputUri() string {
if m != nil {
return m.InputUri
}
return ""
}
func (m *VideoAnnotationProgress) GetProgressPercent() int32 {
if m != nil {
return m.ProgressPercent
}
return 0
}
func (m *VideoAnnotationProgress) GetStartTime() *google_protobuf3.Timestamp {
if m != nil {
return m.StartTime
}
return nil
}
func (m *VideoAnnotationProgress) GetUpdateTime() *google_protobuf3.Timestamp {
if m != nil {
return m.UpdateTime
}
return nil
}
// Video annotation progress. Included in the `metadata`
// field of the `Operation` returned by the `GetOperation`
// call of the `google::longrunning::Operations` service.
type AnnotateVideoProgress struct {
// Progress metadata for all videos specified in `AnnotateVideoRequest`.
AnnotationProgress []*VideoAnnotationProgress `protobuf:"bytes,1,rep,name=annotation_progress,json=annotationProgress" json:"annotation_progress,omitempty"`
}
func (m *AnnotateVideoProgress) Reset() { *m = AnnotateVideoProgress{} }
func (m *AnnotateVideoProgress) String() string { return proto.CompactTextString(m) }
func (*AnnotateVideoProgress) ProtoMessage() {}
func (*AnnotateVideoProgress) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
func (m *AnnotateVideoProgress) GetAnnotationProgress() []*VideoAnnotationProgress {
if m != nil {
return m.AnnotationProgress
}
return nil
}
func init() {
proto.RegisterType((*AnnotateVideoRequest)(nil), "google.cloud.videointelligence.v1beta1.AnnotateVideoRequest")
proto.RegisterType((*VideoContext)(nil), "google.cloud.videointelligence.v1beta1.VideoContext")
proto.RegisterType((*VideoSegment)(nil), "google.cloud.videointelligence.v1beta1.VideoSegment")
proto.RegisterType((*LabelLocation)(nil), "google.cloud.videointelligence.v1beta1.LabelLocation")
proto.RegisterType((*LabelAnnotation)(nil), "google.cloud.videointelligence.v1beta1.LabelAnnotation")
proto.RegisterType((*SafeSearchAnnotation)(nil), "google.cloud.videointelligence.v1beta1.SafeSearchAnnotation")
proto.RegisterType((*BoundingBox)(nil), "google.cloud.videointelligence.v1beta1.BoundingBox")
proto.RegisterType((*FaceLocation)(nil), "google.cloud.videointelligence.v1beta1.FaceLocation")
proto.RegisterType((*FaceAnnotation)(nil), "google.cloud.videointelligence.v1beta1.FaceAnnotation")
proto.RegisterType((*VideoAnnotationResults)(nil), "google.cloud.videointelligence.v1beta1.VideoAnnotationResults")
proto.RegisterType((*AnnotateVideoResponse)(nil), "google.cloud.videointelligence.v1beta1.AnnotateVideoResponse")
proto.RegisterType((*VideoAnnotationProgress)(nil), "google.cloud.videointelligence.v1beta1.VideoAnnotationProgress")
proto.RegisterType((*AnnotateVideoProgress)(nil), "google.cloud.videointelligence.v1beta1.AnnotateVideoProgress")
proto.RegisterEnum("google.cloud.videointelligence.v1beta1.Feature", Feature_name, Feature_value)
proto.RegisterEnum("google.cloud.videointelligence.v1beta1.LabelLevel", LabelLevel_name, LabelLevel_value)
proto.RegisterEnum("google.cloud.videointelligence.v1beta1.LabelDetectionMode", LabelDetectionMode_name, LabelDetectionMode_value)
proto.RegisterEnum("google.cloud.videointelligence.v1beta1.Likelihood", Likelihood_name, Likelihood_value)
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4
// Client API for VideoIntelligenceService service
type VideoIntelligenceServiceClient interface {
// Performs asynchronous video annotation. Progress and results can be
// retrieved through the `google.longrunning.Operations` interface.
// `Operation.metadata` contains `AnnotateVideoProgress` (progress).
// `Operation.response` contains `AnnotateVideoResponse` (results).
AnnotateVideo(ctx context.Context, in *AnnotateVideoRequest, opts ...grpc.CallOption) (*google_longrunning.Operation, error)
}
type videoIntelligenceServiceClient struct {
cc *grpc.ClientConn
}
func NewVideoIntelligenceServiceClient(cc *grpc.ClientConn) VideoIntelligenceServiceClient {
return &videoIntelligenceServiceClient{cc}
}
func (c *videoIntelligenceServiceClient) AnnotateVideo(ctx context.Context, in *AnnotateVideoRequest, opts ...grpc.CallOption) (*google_longrunning.Operation, error) {
out := new(google_longrunning.Operation)
err := grpc.Invoke(ctx, "/google.cloud.videointelligence.v1beta1.VideoIntelligenceService/AnnotateVideo", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// Server API for VideoIntelligenceService service
type VideoIntelligenceServiceServer interface {
// Performs asynchronous video annotation. Progress and results can be
// retrieved through the `google.longrunning.Operations` interface.
// `Operation.metadata` contains `AnnotateVideoProgress` (progress).
// `Operation.response` contains `AnnotateVideoResponse` (results).
AnnotateVideo(context.Context, *AnnotateVideoRequest) (*google_longrunning.Operation, error)
}
func RegisterVideoIntelligenceServiceServer(s *grpc.Server, srv VideoIntelligenceServiceServer) {
s.RegisterService(&_VideoIntelligenceService_serviceDesc, srv)
}
func _VideoIntelligenceService_AnnotateVideo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(AnnotateVideoRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(VideoIntelligenceServiceServer).AnnotateVideo(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.videointelligence.v1beta1.VideoIntelligenceService/AnnotateVideo",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(VideoIntelligenceServiceServer).AnnotateVideo(ctx, req.(*AnnotateVideoRequest))
}
return interceptor(ctx, in, info, handler)
}
var _VideoIntelligenceService_serviceDesc = grpc.ServiceDesc{
ServiceName: "google.cloud.videointelligence.v1beta1.VideoIntelligenceService",
HandlerType: (*VideoIntelligenceServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "AnnotateVideo",
Handler: _VideoIntelligenceService_AnnotateVideo_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "google/cloud/videointelligence/v1beta1/video_intelligence.proto",
}
func init() {
proto.RegisterFile("google/cloud/videointelligence/v1beta1/video_intelligence.proto", fileDescriptor0)
}
var fileDescriptor0 = []byte{
// 1503 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcb, 0x6f, 0x1b, 0x45,
0x18, 0xef, 0xfa, 0x91, 0xc4, 0x9f, 0x93, 0xd8, 0x99, 0x24, 0x8d, 0x49, 0x1b, 0x1a, 0xb9, 0xa8,
0x0a, 0x41, 0xb2, 0xa9, 0xcb, 0x43, 0xb4, 0x40, 0xe5, 0x38, 0xeb, 0xc6, 0xaa, 0x63, 0x47, 0xeb,
0x24, 0x55, 0xb9, 0xac, 0xd6, 0xbb, 0x63, 0x67, 0xc5, 0x7a, 0x67, 0xd9, 0x9d, 0x8d, 0xda, 0x23,
0x1c, 0x40, 0x1c, 0x11, 0xff, 0x05, 0x12, 0xf0, 0x2f, 0x70, 0xe5, 0xc4, 0x01, 0x2e, 0x9c, 0xb8,
0xf0, 0x7f, 0x80, 0xe6, 0xb1, 0xf6, 0xda, 0x0e, 0xd4, 0x0e, 0xdc, 0x3c, 0xdf, 0xe3, 0xf7, 0xbd,
0x67, 0xbe, 0x35, 0x3c, 0xee, 0x13, 0xd2, 0x77, 0x70, 0xd9, 0x74, 0x48, 0x68, 0x95, 0x2f, 0x6d,
0x0b, 0x13, 0xdb, 0xa5, 0xd8, 0x71, 0xec, 0x3e, 0x76, 0x4d, 0x5c, 0xbe, 0xbc, 0xdf, 0xc5, 0xd4,
0xb8, 0x2f, 0x38, 0x7a, 0x9c, 0x55, 0xf2, 0x7c, 0x42, 0x09, 0xba, 0x27, 0x00, 0x4a, 0x1c, 0xa0,
0x34, 0x05, 0x50, 0x92, 0x00, 0xdb, 0xb7, 0xa5, 0x21, 0xc3, 0xb3, 0xcb, 0x86, 0xeb, 0x12, 0x6a,
0x50, 0x9b, 0xb8, 0x81, 0x40, 0xd9, 0xbe, 0x2b, 0xb9, 0x0e, 0x71, 0xfb, 0x7e, 0xe8, 0xba, 0xb6,
0xdb, 0x2f, 0x13, 0x0f, 0xfb, 0x63, 0x42, 0x77, 0xa4, 0x10, 0x3f, 0x75, 0xc3, 0x5e, 0x99, 0xda,
0x03, 0x1c, 0x50, 0x63, 0xe0, 0x49, 0x81, 0x2d, 0x29, 0xe0, 0x7b, 0x66, 0x39, 0xa0, 0x06, 0x0d,
0xa5, 0x66, 0xf1, 0xa7, 0x04, 0x6c, 0x54, 0x85, 0x51, 0x7c, 0xce, 0x5c, 0xd4, 0xf0, 0x67, 0x21,
0x0e, 0x28, 0xba, 0x05, 0x19, 0xdb, 0xf5, 0x42, 0xaa, 0x87, 0xbe, 0x5d, 0x50, 0x76, 0x95, 0xbd,
0x8c, 0xb6, 0xc4, 0x09, 0x67, 0xbe, 0x8d, 0xee, 0xc2, 0x8a, 0x60, 0x9a, 0xc4, 0xa5, 0xd8, 0xa5,
0x85, 0x05, 0x2e, 0xb0, 0xcc, 0x89, 0x35, 0x41, 0x43, 0x4f, 0x61, 0xa9, 0x87, 0x0d, 0x1a, 0xfa,
0x38, 0x28, 0x24, 0x76, 0x93, 0x7b, 0xab, 0x95, 0x72, 0x69, 0xb6, 0x94, 0x94, 0xea, 0x42, 0x4f,
0x1b, 0x02, 0xa0, 0xe7, 0xb0, 0x22, 0x12, 0xcd, 0x2d, 0xbe, 0xa0, 0x85, 0xe4, 0xae, 0xb2, 0x97,
0xad, 0xbc, 0x33, 0x2b, 0x22, 0x8f, 0xad, 0x26, 0x74, 0xb5, 0xe5, 0xcb, 0xd8, 0x09, 0xed, 0x00,
0x90, 0x90, 0x46, 0xa1, 0xa6, 0x78, 0x24, 0x19, 0x41, 0x61, 0xb1, 0xde, 0x81, 0xac, 0x43, 0x4c,
0x9e, 0x6e, 0xdd, 0xb6, 0x0a, 0x69, 0xce, 0x87, 0x88, 0xd4, 0xb0, 0x8a, 0x7f, 0x24, 0x61, 0x39,
0x0e, 0x8f, 0x4e, 0x60, 0x29, 0xc0, 0xfd, 0x01, 0x76, 0x69, 0x50, 0x50, 0x76, 0x93, 0x73, 0xbb,
0xd9, 0x11, 0xca, 0xda, 0x10, 0x05, 0x39, 0xb0, 0xe1, 0x18, 0x5d, 0xec, 0xe8, 0x16, 0xa6, 0xd8,
0xe4, 0xae, 0x0c, 0x88, 0x85, 0x0b, 0x89, 0x5d, 0x65, 0x6f, 0xb5, 0xf2, 0x70, 0x56, 0xf4, 0x26,
0xc3, 0x38, 0x8c, 0x20, 0x8e, 0x89, 0x85, 0x35, 0xe4, 0x4c, 0xd1, 0xd0, 0x5b, 0xb0, 0x16, 0x88,
0x26, 0x34, 0xfc, 0x97, 0xba, 0x69, 0x0c, 0xb0, 0x6f, 0xf0, 0x7c, 0x2f, 0x69, 0xf9, 0x11, 0xa3,
0xc6, 0xe9, 0xa8, 0x02, 0x9b, 0x57, 0xb9, 0xe6, 0xc8, 0x44, 0xae, 0x4f, 0xe3, 0x3b, 0xe8, 0x6d,
0xd8, 0xe8, 0x19, 0x26, 0x9e, 0x52, 0x11, 0xb9, 0x45, 0x8c, 0x37, 0xa1, 0xf1, 0x11, 0xdc, 0x0a,
0x2e, 0x08, 0xd5, 0xcd, 0x0b, 0xc3, 0xed, 0x4f, 0x2b, 0x8a, 0xf6, 0x2b, 0x30, 0x91, 0x1a, 0x97,
0xb8, 0x42, 0xdd, 0xe8, 0x61, 0x3d, 0xc0, 0x86, 0x6f, 0x5e, 0x4c, 0xa9, 0x2f, 0x4a, 0x75, 0xa3,
0x87, 0x3b, 0x5c, 0x62, 0x5c, 0xbd, 0xd8, 0x95, 0x05, 0x96, 0x85, 0x41, 0xfb, 0x3c, 0x41, 0x3e,
0xd5, 0xd9, 0x98, 0xe9, 0xa4, 0xd7, 0x0b, 0x30, 0xe5, 0x33, 0x92, 0xd4, 0x72, 0x9c, 0x71, 0x6a,
0x0f, 0x70, 0x9b, 0x93, 0xd1, 0x3d, 0xc8, 0x61, 0xd7, 0x1a, 0x93, 0x4c, 0x70, 0xc9, 0x15, 0xec,
0x5a, 0x23, 0xb9, 0xe2, 0xcf, 0x0a, 0xac, 0xf0, 0xfa, 0x34, 0x65, 0x67, 0xa1, 0x16, 0x2c, 0xca,
0x06, 0xe0, 0xd8, 0xd7, 0xed, 0xa2, 0x08, 0x04, 0xbd, 0x0e, 0x60, 0x12, 0xb7, 0x67, 0x5b, 0x4c,
0x96, 0x3b, 0x91, 0xd0, 0x62, 0x14, 0x74, 0x04, 0x69, 0x07, 0x5f, 0x62, 0x87, 0x97, 0x7a, 0xb5,
0x52, 0x99, 0xab, 0xab, 0x9a, 0x4c, 0x53, 0x13, 0x00, 0xc5, 0xef, 0x15, 0xc8, 0x71, 0x6a, 0x75,
0x78, 0x9d, 0xa1, 0x5d, 0xc8, 0x5a, 0x38, 0x30, 0x7d, 0xdb, 0x63, 0x47, 0x79, 0xa3, 0xc4, 0x49,
0xec, 0x52, 0x71, 0x0c, 0xb7, 0x1f, 0x1a, 0x7d, 0xac, 0x9b, 0x51, 0x77, 0x67, 0xb4, 0xe5, 0x88,
0x58, 0x63, 0xbd, 0xd9, 0x81, 0x4c, 0x34, 0x7a, 0x41, 0x21, 0xc9, 0x87, 0xeb, 0xdd, 0xf9, 0x1c,
0x95, 0xda, 0xda, 0x08, 0xa7, 0xf8, 0x63, 0x12, 0x36, 0x3a, 0xc3, 0xe2, 0xc7, 0x9c, 0x3e, 0x82,
0xb4, 0x61, 0x85, 0x8e, 0x28, 0xc0, 0x3c, 0x29, 0xb1, 0x3f, 0xc5, 0x8e, 0x7d, 0x41, 0x88, 0xa5,
0x09, 0x00, 0x86, 0x14, 0x78, 0x84, 0xf4, 0xe4, 0xc8, 0x5e, 0x0b, 0x89, 0x03, 0xa0, 0x26, 0x2c,
0x0e, 0xb0, 0x65, 0x9b, 0xc6, 0xfc, 0x85, 0x1a, 0x61, 0x45, 0x10, 0x0c, 0xed, 0xd2, 0x26, 0x0e,
0x6b, 0xb2, 0xd4, 0xf5, 0xd1, 0x24, 0x04, 0xaa, 0x43, 0xca, 0x37, 0xcc, 0x97, 0x7c, 0x90, 0xaf,
0x07, 0xc5, 0xf5, 0xd9, 0x9d, 0x1b, 0x1f, 0x98, 0x05, 0x3e, 0x30, 0x40, 0x47, 0xd3, 0x62, 0x40,
0xf6, 0x80, 0x84, 0xae, 0x65, 0xbb, 0xfd, 0x03, 0xf2, 0x02, 0x21, 0x48, 0x39, 0xb8, 0x27, 0xca,
0x94, 0xd6, 0xf8, 0x6f, 0xb4, 0x01, 0x69, 0xdf, 0xee, 0x5f, 0x88, 0x71, 0x4b, 0x6b, 0xe2, 0x80,
0x6e, 0xc2, 0x42, 0x97, 0x50, 0x4a, 0x06, 0x3c, 0x79, 0x69, 0x4d, 0x9e, 0x50, 0x1e, 0x92, 0x94,
0x78, 0x3c, 0x07, 0x69, 0x8d, 0xfd, 0x2c, 0x7e, 0xa5, 0xc0, 0x72, 0xdd, 0x30, 0xf1, 0x70, 0x1e,
0xcf, 0x61, 0xb9, 0x2b, 0x6d, 0xea, 0x5d, 0xf2, 0x42, 0x0e, 0xe5, 0x83, 0x59, 0x83, 0x8c, 0xf9,
0xab, 0x65, 0xbb, 0x31, 0xe7, 0x27, 0x82, 0x4d, 0x4c, 0x05, 0xfb, 0x9b, 0x02, 0xab, 0xcc, 0x93,
0x58, 0x63, 0xde, 0x86, 0x0c, 0xbd, 0x08, 0x07, 0x5d, 0xd7, 0xb0, 0x1d, 0x39, 0x4b, 0x23, 0xc2,
0xd8, 0x03, 0x94, 0xf8, 0x5f, 0x1e, 0x20, 0x6d, 0x7a, 0xec, 0x66, 0x86, 0x8c, 0x27, 0x31, 0x3e,
0x75, 0x7f, 0x25, 0xe1, 0x26, 0x37, 0x37, 0x8a, 0x4b, 0xc3, 0x41, 0xe8, 0xd0, 0xe0, 0xdf, 0x97,
0x0f, 0x0b, 0xd6, 0xc4, 0x8b, 0x13, 0x5b, 0x96, 0x64, 0x98, 0xef, 0xcf, 0x75, 0x15, 0xc4, 0xec,
0xe6, 0x9d, 0x71, 0x42, 0x80, 0x0c, 0xc8, 0xf3, 0x37, 0x2a, 0x6e, 0x44, 0x04, 0xfe, 0xde, 0x3c,
0x81, 0xc7, 0x6c, 0xe4, 0x7a, 0x63, 0xe7, 0x00, 0xe9, 0x90, 0xe7, 0x8f, 0x5a, 0xdc, 0x44, 0xea,
0x3f, 0x94, 0x2b, 0xc7, 0xd0, 0xe2, 0x06, 0x28, 0x6c, 0xc5, 0x9f, 0xbd, 0xb8, 0x9d, 0x05, 0x6e,
0xe7, 0xc3, 0x59, 0xed, 0x5c, 0x75, 0x3b, 0x6a, 0x9b, 0xc1, 0x15, 0xd4, 0x00, 0xed, 0x41, 0x1a,
0xfb, 0x3e, 0xf1, 0xf9, 0x2d, 0x90, 0xad, 0xa0, 0xc8, 0x86, 0xef, 0x99, 0xa5, 0x0e, 0xdf, 0x3d,
0x35, 0x21, 0x50, 0xfc, 0x52, 0x81, 0xcd, 0x89, 0xe5, 0x33, 0xf0, 0x88, 0x1b, 0x60, 0x34, 0x00,
0x34, 0xf2, 0x56, 0xf7, 0x45, 0x5b, 0xc8, 0x65, 0xea, 0xe3, 0xb9, 0x92, 0x33, 0xd5, 0x5c, 0xda,
0x9a, 0x31, 0x49, 0x2a, 0xfe, 0xae, 0xc0, 0xd6, 0x84, 0xf4, 0x89, 0x4f, 0xfa, 0x3e, 0x0e, 0x5e,
0xd1, 0x8b, 0x6f, 0x42, 0xde, 0x93, 0x82, 0xba, 0x87, 0x7d, 0x93, 0xdd, 0xa3, 0xe2, 0xbe, 0xc9,
0x45, 0xf4, 0x13, 0x41, 0x46, 0x1f, 0x00, 0x8c, 0x96, 0x06, 0xb9, 0xbe, 0x6e, 0x47, 0xa1, 0x44,
0x8b, 0x7b, 0xe9, 0x34, 0x5a, 0xdc, 0xb5, 0xcc, 0x70, 0x93, 0x40, 0x8f, 0x20, 0x1b, 0x7a, 0x96,
0x41, 0xb1, 0xd0, 0x4d, 0xbd, 0x52, 0x17, 0x84, 0x38, 0x23, 0x14, 0xbf, 0x9e, 0x4c, 0xf2, 0x30,
0x32, 0x0f, 0xd6, 0x63, 0x49, 0x8e, 0xfc, 0x95, 0x59, 0x7e, 0x7c, 0xcd, 0x2c, 0x47, 0xe8, 0x5a,
0xac, 0x80, 0x11, 0x6d, 0xff, 0x73, 0x05, 0x16, 0xe5, 0x6e, 0x8f, 0xb6, 0x60, 0xbd, 0xae, 0x56,
0x4f, 0xcf, 0x34, 0x55, 0x3f, 0x6b, 0x75, 0x4e, 0xd4, 0x5a, 0xa3, 0xde, 0x50, 0x0f, 0xf3, 0x37,
0xd0, 0x3a, 0xe4, 0x9a, 0xd5, 0x03, 0xb5, 0xa9, 0x1f, 0xaa, 0xa7, 0x6a, 0xed, 0xb4, 0xd1, 0x6e,
0xe5, 0x15, 0x84, 0x60, 0xb5, 0x5e, 0xad, 0xa9, 0x31, 0x5a, 0x02, 0xbd, 0x06, 0x9b, 0x9d, 0xa3,
0xf6, 0xa9, 0x5e, 0x3b, 0xaa, 0xb6, 0x9e, 0xc4, 0x59, 0x49, 0xce, 0xaa, 0xd6, 0x55, 0xbd, 0xa3,
0x56, 0xb5, 0xda, 0x51, 0x8c, 0x95, 0xda, 0x77, 0x01, 0x46, 0x1b, 0x0b, 0xba, 0x05, 0x5b, 0xc2,
0x58, 0x53, 0x3d, 0x57, 0x9b, 0x13, 0x9e, 0xe4, 0x20, 0x7b, 0xde, 0x38, 0x54, 0xdb, 0x82, 0x99,
0x57, 0xd0, 0x1a, 0xac, 0x74, 0xd4, 0x27, 0xc7, 0x6a, 0xeb, 0x54, 0x92, 0x12, 0x68, 0x15, 0x80,
0x3b, 0x21, 0xce, 0x49, 0xa6, 0x53, 0xd7, 0xaa, 0xc7, 0xaa, 0x24, 0xa4, 0xf6, 0x7d, 0x40, 0xd3,
0x7b, 0x37, 0x7a, 0x03, 0x76, 0x27, 0x82, 0xd4, 0x8f, 0xdb, 0x87, 0x93, 0xa9, 0x58, 0x81, 0x0c,
0x07, 0x67, 0xac, 0xbc, 0xc2, 0x6c, 0x09, 0x6c, 0x7e, 0x4e, 0xb0, 0x14, 0x72, 0x76, 0xb5, 0x75,
0xa8, 0xc7, 0x18, 0xc9, 0x7d, 0x0c, 0x30, 0x7a, 0x53, 0x51, 0x16, 0x16, 0xcf, 0x5a, 0x4f, 0x5b,
0xed, 0x67, 0xad, 0xfc, 0x0d, 0x16, 0xc2, 0xb9, 0xaa, 0x3d, 0xd7, 0xcf, 0x5a, 0xcd, 0xc6, 0x53,
0xb5, 0xf9, 0x3c, 0xaf, 0xa0, 0x65, 0x58, 0x1a, 0x9e, 0x12, 0xec, 0x74, 0xd2, 0xee, 0x74, 0x1a,
0x07, 0x4d, 0x35, 0x9f, 0x44, 0x00, 0x0b, 0x92, 0x93, 0xe2, 0xe9, 0x60, 0xaa, 0x92, 0x90, 0xae,
0xfc, 0xa0, 0x40, 0x81, 0x97, 0xbf, 0x11, 0x6b, 0x8c, 0x0e, 0xf6, 0x2f, 0x6d, 0x13, 0xa3, 0x6f,
0x14, 0x58, 0x19, 0xeb, 0x3b, 0x34, 0xf3, 0x6d, 0x73, 0xd5, 0x07, 0xe9, 0xf6, 0x4e, 0xa4, 0x1d,
0xfb, 0x12, 0x2e, 0xb5, 0xa3, 0x2f, 0xe1, 0xe2, 0xdd, 0x2f, 0x7e, 0xfd, 0xf3, 0xdb, 0xc4, 0x4e,
0xb1, 0x30, 0xfe, 0x61, 0x1e, 0x3c, 0x94, 0x6d, 0x88, 0x1f, 0x2a, 0xfb, 0x07, 0xbf, 0x28, 0xb0,
0x6f, 0x92, 0xc1, 0x8c, 0x7e, 0x1c, 0xec, 0xfc, 0x53, 0x70, 0x27, 0x6c, 0xe4, 0x4e, 0x94, 0x4f,
0x9e, 0x49, 0xa0, 0x3e, 0x61, 0x4b, 0x6a, 0x89, 0xf8, 0xfd, 0x72, 0x1f, 0xbb, 0x7c, 0x20, 0xcb,
0x82, 0x65, 0x78, 0x76, 0xf0, 0xaa, 0xbf, 0x10, 0x1e, 0x4d, 0x71, 0xbe, 0x4b, 0xdc, 0x7b, 0x22,
0x90, 0x6b, 0xdc, 0xc5, 0x29, 0x3f, 0x4a, 0xe7, 0xf7, 0x0f, 0x98, 0x6a, 0x77, 0x81, 0x1b, 0x7b,
0xf0, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x1d, 0xe8, 0xc8, 0xa8, 0xae, 0x10, 0x00, 0x00,
}