1715 lines
60 KiB
Go
1715 lines
60 KiB
Go
|
// Package speech provides access to the Google Cloud Speech API.
|
||
|
//
|
||
|
// See https://cloud.google.com/speech/
|
||
|
//
|
||
|
// Usage example:
|
||
|
//
|
||
|
// import "google.golang.org/api/speech/v1"
|
||
|
// ...
|
||
|
// speechService, err := speech.New(oauthHttpClient)
|
||
|
package speech // import "google.golang.org/api/speech/v1"
|
||
|
|
||
|
import (
|
||
|
"bytes"
|
||
|
"encoding/json"
|
||
|
"errors"
|
||
|
"fmt"
|
||
|
context "golang.org/x/net/context"
|
||
|
ctxhttp "golang.org/x/net/context/ctxhttp"
|
||
|
gensupport "google.golang.org/api/gensupport"
|
||
|
googleapi "google.golang.org/api/googleapi"
|
||
|
"io"
|
||
|
"net/http"
|
||
|
"net/url"
|
||
|
"strconv"
|
||
|
"strings"
|
||
|
)
|
||
|
|
||
|
// Always reference these packages, just in case the auto-generated code
|
||
|
// below doesn't.
|
||
|
var _ = bytes.NewBuffer
|
||
|
var _ = strconv.Itoa
|
||
|
var _ = fmt.Sprintf
|
||
|
var _ = json.NewDecoder
|
||
|
var _ = io.Copy
|
||
|
var _ = url.Parse
|
||
|
var _ = gensupport.MarshalJSON
|
||
|
var _ = googleapi.Version
|
||
|
var _ = errors.New
|
||
|
var _ = strings.Replace
|
||
|
var _ = context.Canceled
|
||
|
var _ = ctxhttp.Do
|
||
|
|
||
|
const apiId = "speech:v1"
|
||
|
const apiName = "speech"
|
||
|
const apiVersion = "v1"
|
||
|
const basePath = "https://speech.googleapis.com/"
|
||
|
|
||
|
// OAuth2 scopes used by this API.
|
||
|
const (
|
||
|
// View and manage your data across Google Cloud Platform services
|
||
|
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
|
||
|
)
|
||
|
|
||
|
func New(client *http.Client) (*Service, error) {
|
||
|
if client == nil {
|
||
|
return nil, errors.New("client is nil")
|
||
|
}
|
||
|
s := &Service{client: client, BasePath: basePath}
|
||
|
s.Operations = NewOperationsService(s)
|
||
|
s.Speech = NewSpeechService(s)
|
||
|
return s, nil
|
||
|
}
|
||
|
|
||
|
type Service struct {
|
||
|
client *http.Client
|
||
|
BasePath string // API endpoint base URL
|
||
|
UserAgent string // optional additional User-Agent fragment
|
||
|
|
||
|
Operations *OperationsService
|
||
|
|
||
|
Speech *SpeechService
|
||
|
}
|
||
|
|
||
|
func (s *Service) userAgent() string {
|
||
|
if s.UserAgent == "" {
|
||
|
return googleapi.UserAgent
|
||
|
}
|
||
|
return googleapi.UserAgent + " " + s.UserAgent
|
||
|
}
|
||
|
|
||
|
func NewOperationsService(s *Service) *OperationsService {
|
||
|
rs := &OperationsService{s: s}
|
||
|
return rs
|
||
|
}
|
||
|
|
||
|
type OperationsService struct {
|
||
|
s *Service
|
||
|
}
|
||
|
|
||
|
func NewSpeechService(s *Service) *SpeechService {
|
||
|
rs := &SpeechService{s: s}
|
||
|
return rs
|
||
|
}
|
||
|
|
||
|
type SpeechService struct {
|
||
|
s *Service
|
||
|
}
|
||
|
|
||
|
// CancelOperationRequest: The request message for
|
||
|
// Operations.CancelOperation.
|
||
|
type CancelOperationRequest struct {
|
||
|
}
|
||
|
|
||
|
// Empty: A generic empty message that you can re-use to avoid defining
|
||
|
// duplicated
|
||
|
// empty messages in your APIs. A typical example is to use it as the
|
||
|
// request
|
||
|
// or the response type of an API method. For instance:
|
||
|
//
|
||
|
// service Foo {
|
||
|
// rpc Bar(google.protobuf.Empty) returns
|
||
|
// (google.protobuf.Empty);
|
||
|
// }
|
||
|
//
|
||
|
// The JSON representation for `Empty` is empty JSON object `{}`.
|
||
|
type Empty struct {
|
||
|
// ServerResponse contains the HTTP response code and headers from the
|
||
|
// server.
|
||
|
googleapi.ServerResponse `json:"-"`
|
||
|
}
|
||
|
|
||
|
// ListOperationsResponse: The response message for
|
||
|
// Operations.ListOperations.
|
||
|
type ListOperationsResponse struct {
|
||
|
// NextPageToken: The standard List next-page token.
|
||
|
NextPageToken string `json:"nextPageToken,omitempty"`
|
||
|
|
||
|
// Operations: A list of operations that matches the specified filter in
|
||
|
// the request.
|
||
|
Operations []*Operation `json:"operations,omitempty"`
|
||
|
|
||
|
// ServerResponse contains the HTTP response code and headers from the
|
||
|
// server.
|
||
|
googleapi.ServerResponse `json:"-"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "NextPageToken") to include
|
||
|
// in API requests with the JSON null value. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any field with
|
||
|
// an empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod ListOperationsResponse
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// LongRunningRecognizeRequest: The top-level message sent by the client
|
||
|
// for the `LongRunningRecognize`
|
||
|
// method.
|
||
|
type LongRunningRecognizeRequest struct {
|
||
|
// Audio: *Required* The audio data to be recognized.
|
||
|
Audio *RecognitionAudio `json:"audio,omitempty"`
|
||
|
|
||
|
// Config: *Required* Provides information to the recognizer that
|
||
|
// specifies how to
|
||
|
// process the request.
|
||
|
Config *RecognitionConfig `json:"config,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Audio") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Audio") to include in API
|
||
|
// requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *LongRunningRecognizeRequest) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod LongRunningRecognizeRequest
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// Operation: This resource represents a long-running operation that is
|
||
|
// the result of a
|
||
|
// network API call.
|
||
|
type Operation struct {
|
||
|
// Done: If the value is `false`, it means the operation is still in
|
||
|
// progress.
|
||
|
// If true, the operation is completed, and either `error` or `response`
|
||
|
// is
|
||
|
// available.
|
||
|
Done bool `json:"done,omitempty"`
|
||
|
|
||
|
// Error: The error result of the operation in case of failure or
|
||
|
// cancellation.
|
||
|
Error *Status `json:"error,omitempty"`
|
||
|
|
||
|
// Metadata: Service-specific metadata associated with the operation.
|
||
|
// It typically
|
||
|
// contains progress information and common metadata such as create
|
||
|
// time.
|
||
|
// Some services might not provide such metadata. Any method that
|
||
|
// returns a
|
||
|
// long-running operation should document the metadata type, if any.
|
||
|
Metadata googleapi.RawMessage `json:"metadata,omitempty"`
|
||
|
|
||
|
// Name: The server-assigned name, which is only unique within the same
|
||
|
// service that
|
||
|
// originally returns it. If you use the default HTTP mapping,
|
||
|
// the
|
||
|
// `name` should have the format of `operations/some/unique/name`.
|
||
|
Name string `json:"name,omitempty"`
|
||
|
|
||
|
// Response: The normal response of the operation in case of success.
|
||
|
// If the original
|
||
|
// method returns no data on success, such as `Delete`, the response
|
||
|
// is
|
||
|
// `google.protobuf.Empty`. If the original method is
|
||
|
// standard
|
||
|
// `Get`/`Create`/`Update`, the response should be the resource. For
|
||
|
// other
|
||
|
// methods, the response should have the type `XxxResponse`, where
|
||
|
// `Xxx`
|
||
|
// is the original method name. For example, if the original method
|
||
|
// name
|
||
|
// is `TakeSnapshot()`, the inferred response type
|
||
|
// is
|
||
|
// `TakeSnapshotResponse`.
|
||
|
Response googleapi.RawMessage `json:"response,omitempty"`
|
||
|
|
||
|
// ServerResponse contains the HTTP response code and headers from the
|
||
|
// server.
|
||
|
googleapi.ServerResponse `json:"-"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Done") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Done") to include in API
|
||
|
// requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *Operation) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod Operation
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// RecognitionAudio: Contains audio data in the encoding specified in
|
||
|
// the `RecognitionConfig`.
|
||
|
// Either `content` or `uri` must be supplied. Supplying both or
|
||
|
// neither
|
||
|
// returns google.rpc.Code.INVALID_ARGUMENT. See
|
||
|
// [audio limits](https://cloud.google.com/speech/limits#content).
|
||
|
type RecognitionAudio struct {
|
||
|
// Content: The audio data bytes encoded as specified
|
||
|
// in
|
||
|
// `RecognitionConfig`. Note: as with all bytes fields, protobuffers use
|
||
|
// a
|
||
|
// pure binary representation, whereas JSON representations use base64.
|
||
|
Content string `json:"content,omitempty"`
|
||
|
|
||
|
// Uri: URI that points to a file that contains audio data bytes as
|
||
|
// specified in
|
||
|
// `RecognitionConfig`. Currently, only Google Cloud Storage URIs
|
||
|
// are
|
||
|
// supported, which must be specified in the following
|
||
|
// format:
|
||
|
// `gs://bucket_name/object_name` (other URI formats
|
||
|
// return
|
||
|
// google.rpc.Code.INVALID_ARGUMENT). For more information, see
|
||
|
// [Request URIs](https://cloud.google.com/storage/docs/reference-uris).
|
||
|
Uri string `json:"uri,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Content") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Content") to include in
|
||
|
// API requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *RecognitionAudio) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod RecognitionAudio
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// RecognitionConfig: Provides information to the recognizer that
|
||
|
// specifies how to process the
|
||
|
// request.
|
||
|
type RecognitionConfig struct {
|
||
|
// EnableWordTimeOffsets: *Optional* If `true`, the top result includes
|
||
|
// a list of words and
|
||
|
// the start and end time offsets (timestamps) for those words.
|
||
|
// If
|
||
|
// `false`, no word-level time offset information is returned. The
|
||
|
// default is
|
||
|
// `false`.
|
||
|
EnableWordTimeOffsets bool `json:"enableWordTimeOffsets,omitempty"`
|
||
|
|
||
|
// Encoding: *Required* Encoding of audio data sent in all
|
||
|
// `RecognitionAudio` messages.
|
||
|
//
|
||
|
// Possible values:
|
||
|
// "ENCODING_UNSPECIFIED" - Not specified. Will return result
|
||
|
// google.rpc.Code.INVALID_ARGUMENT.
|
||
|
// "LINEAR16" - Uncompressed 16-bit signed little-endian samples
|
||
|
// (Linear PCM).
|
||
|
// "FLAC" - [`FLAC`](https://xiph.org/flac/documentation.html) (Free
|
||
|
// Lossless Audio
|
||
|
// Codec) is the recommended encoding because it is
|
||
|
// lossless--therefore recognition is not compromised--and
|
||
|
// requires only about half the bandwidth of `LINEAR16`. `FLAC`
|
||
|
// stream
|
||
|
// encoding supports 16-bit and 24-bit samples, however, not all fields
|
||
|
// in
|
||
|
// `STREAMINFO` are supported.
|
||
|
// "MULAW" - 8-bit samples that compand 14-bit audio samples using
|
||
|
// G.711 PCMU/mu-law.
|
||
|
// "AMR" - Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz`
|
||
|
// must be 8000.
|
||
|
// "AMR_WB" - Adaptive Multi-Rate Wideband codec. `sample_rate_hertz`
|
||
|
// must be 16000.
|
||
|
// "OGG_OPUS" - Opus encoded audio frames in Ogg
|
||
|
// container
|
||
|
// ([OggOpus](https://wiki.xiph.org/OggOpus)).
|
||
|
// `sample_rate_her
|
||
|
// tz` must be 16000.
|
||
|
// "SPEEX_WITH_HEADER_BYTE" - Although the use of lossy encodings is
|
||
|
// not recommended, if a very low
|
||
|
// bitrate encoding is required, `OGG_OPUS` is highly preferred
|
||
|
// over
|
||
|
// Speex encoding. The [Speex](https://speex.org/) encoding supported
|
||
|
// by
|
||
|
// Cloud Speech API has a header byte in each block, as in MIME
|
||
|
// type
|
||
|
// `audio/x-speex-with-header-byte`.
|
||
|
// It is a variant of the RTP Speex encoding defined in
|
||
|
// [RFC 5574](https://tools.ietf.org/html/rfc5574).
|
||
|
// The stream is a sequence of blocks, one block per RTP packet. Each
|
||
|
// block
|
||
|
// starts with a byte containing the length of the block, in bytes,
|
||
|
// followed
|
||
|
// by one or more frames of Speex data, padded to an integral number
|
||
|
// of
|
||
|
// bytes (octets) as specified in RFC 5574. In other words, each RTP
|
||
|
// header
|
||
|
// is replaced with a single byte containing the block length. Only
|
||
|
// Speex
|
||
|
// wideband is supported. `sample_rate_hertz` must be 16000.
|
||
|
Encoding string `json:"encoding,omitempty"`
|
||
|
|
||
|
// LanguageCode: *Required* The language of the supplied audio as
|
||
|
// a
|
||
|
// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language
|
||
|
// tag.
|
||
|
// Example: "en-US".
|
||
|
// See [Language
|
||
|
// Support](https://cloud.google.com/speech/docs/languages)
|
||
|
// for a list of the currently supported language codes.
|
||
|
LanguageCode string `json:"languageCode,omitempty"`
|
||
|
|
||
|
// MaxAlternatives: *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
|
||
|
// one. If omitted, will return a maximum of one.
|
||
|
MaxAlternatives int64 `json:"maxAlternatives,omitempty"`
|
||
|
|
||
|
// ProfanityFilter: *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 `json:"profanityFilter,omitempty"`
|
||
|
|
||
|
// SampleRateHertz: *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).
|
||
|
SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
|
||
|
|
||
|
// SpeechContexts: *Optional* A means to provide context to assist the
|
||
|
// speech recognition.
|
||
|
SpeechContexts []*SpeechContext `json:"speechContexts,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g.
|
||
|
// "EnableWordTimeOffsets") to unconditionally include in API requests.
|
||
|
// By default, fields with empty values are omitted from API requests.
|
||
|
// However, any non-pointer, non-interface field appearing in
|
||
|
// ForceSendFields will be sent to the server regardless of whether the
|
||
|
// field is empty or not. This may be used to include empty fields in
|
||
|
// Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "EnableWordTimeOffsets") to
|
||
|
// include in API requests with the JSON null value. By default, fields
|
||
|
// with empty values are omitted from API requests. However, any field
|
||
|
// with an empty value appearing in NullFields will be sent to the
|
||
|
// server as null. It is an error if a field in this list has a
|
||
|
// non-empty value. This may be used to include null fields in Patch
|
||
|
// requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *RecognitionConfig) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod RecognitionConfig
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// RecognizeRequest: The top-level message sent by the client for the
|
||
|
// `Recognize` method.
|
||
|
type RecognizeRequest struct {
|
||
|
// Audio: *Required* The audio data to be recognized.
|
||
|
Audio *RecognitionAudio `json:"audio,omitempty"`
|
||
|
|
||
|
// Config: *Required* Provides information to the recognizer that
|
||
|
// specifies how to
|
||
|
// process the request.
|
||
|
Config *RecognitionConfig `json:"config,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Audio") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Audio") to include in API
|
||
|
// requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *RecognizeRequest) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod RecognizeRequest
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// RecognizeResponse: The only message returned to the client by the
|
||
|
// `Recognize` method. It
|
||
|
// contains the result as zero or more sequential
|
||
|
// `SpeechRecognitionResult`
|
||
|
// messages.
|
||
|
type RecognizeResponse struct {
|
||
|
// Results: *Output-only* Sequential list of transcription results
|
||
|
// corresponding to
|
||
|
// sequential portions of audio.
|
||
|
Results []*SpeechRecognitionResult `json:"results,omitempty"`
|
||
|
|
||
|
// ServerResponse contains the HTTP response code and headers from the
|
||
|
// server.
|
||
|
googleapi.ServerResponse `json:"-"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Results") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Results") to include in
|
||
|
// API requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *RecognizeResponse) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod RecognizeResponse
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// SpeechContext: Provides "hints" to the speech recognizer to favor
|
||
|
// specific words and phrases
|
||
|
// in the results.
|
||
|
type SpeechContext struct {
|
||
|
// Phrases: *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
|
||
|
// to add additional words to the vocabulary of the recognizer.
|
||
|
// See
|
||
|
// [usage limits](https://cloud.google.com/speech/limits#content).
|
||
|
Phrases []string `json:"phrases,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Phrases") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Phrases") to include in
|
||
|
// API requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *SpeechContext) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod SpeechContext
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// SpeechRecognitionAlternative: Alternative hypotheses (a.k.a. n-best
|
||
|
// list).
|
||
|
type SpeechRecognitionAlternative struct {
|
||
|
// Confidence: *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
|
||
|
// consistent.
|
||
|
// The default of 0.0 is a sentinel value indicating `confidence` was
|
||
|
// not set.
|
||
|
Confidence float64 `json:"confidence,omitempty"`
|
||
|
|
||
|
// Transcript: *Output-only* Transcript text representing the words that
|
||
|
// the user spoke.
|
||
|
Transcript string `json:"transcript,omitempty"`
|
||
|
|
||
|
// Words: *Output-only* A list of word-specific information for each
|
||
|
// recognized word.
|
||
|
Words []*WordInfo `json:"words,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Confidence") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Confidence") to include in
|
||
|
// API requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *SpeechRecognitionAlternative) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod SpeechRecognitionAlternative
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
func (s *SpeechRecognitionAlternative) UnmarshalJSON(data []byte) error {
|
||
|
type noMethod SpeechRecognitionAlternative
|
||
|
var s1 struct {
|
||
|
Confidence gensupport.JSONFloat64 `json:"confidence"`
|
||
|
*noMethod
|
||
|
}
|
||
|
s1.noMethod = (*noMethod)(s)
|
||
|
if err := json.Unmarshal(data, &s1); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
s.Confidence = float64(s1.Confidence)
|
||
|
return nil
|
||
|
}
|
||
|
|
||
|
// SpeechRecognitionResult: A speech recognition result corresponding to
|
||
|
// a portion of the audio.
|
||
|
type SpeechRecognitionResult struct {
|
||
|
// Alternatives: *Output-only* May contain one or more recognition
|
||
|
// hypotheses (up to the
|
||
|
// maximum specified in `max_alternatives`).
|
||
|
// These alternatives are ordered in terms of accuracy, with the top
|
||
|
// (first)
|
||
|
// alternative being the most probable, as ranked by the recognizer.
|
||
|
Alternatives []*SpeechRecognitionAlternative `json:"alternatives,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Alternatives") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Alternatives") to include
|
||
|
// in API requests with the JSON null value. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any field with
|
||
|
// an empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *SpeechRecognitionResult) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod SpeechRecognitionResult
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// Status: The `Status` type defines a logical error model that is
|
||
|
// suitable for different
|
||
|
// programming environments, including REST APIs and RPC APIs. It is
|
||
|
// used by
|
||
|
// [gRPC](https://github.com/grpc). The error model is designed to
|
||
|
// be:
|
||
|
//
|
||
|
// - Simple to use and understand for most users
|
||
|
// - Flexible enough to meet unexpected needs
|
||
|
//
|
||
|
// # Overview
|
||
|
//
|
||
|
// The `Status` message contains three pieces of data: error code, error
|
||
|
// message,
|
||
|
// and error details. The error code should be an enum value
|
||
|
// of
|
||
|
// google.rpc.Code, but it may accept additional error codes if needed.
|
||
|
// The
|
||
|
// error message should be a developer-facing English message that
|
||
|
// helps
|
||
|
// developers *understand* and *resolve* the error. If a localized
|
||
|
// user-facing
|
||
|
// error message is needed, put the localized message in the error
|
||
|
// details or
|
||
|
// localize it in the client. The optional error details may contain
|
||
|
// arbitrary
|
||
|
// information about the error. There is a predefined set of error
|
||
|
// detail types
|
||
|
// in the package `google.rpc` that can be used for common error
|
||
|
// conditions.
|
||
|
//
|
||
|
// # Language mapping
|
||
|
//
|
||
|
// The `Status` message is the logical representation of the error
|
||
|
// model, but it
|
||
|
// is not necessarily the actual wire format. When the `Status` message
|
||
|
// is
|
||
|
// exposed in different client libraries and different wire protocols,
|
||
|
// it can be
|
||
|
// mapped differently. For example, it will likely be mapped to some
|
||
|
// exceptions
|
||
|
// in Java, but more likely mapped to some error codes in C.
|
||
|
//
|
||
|
// # Other uses
|
||
|
//
|
||
|
// The error model and the `Status` message can be used in a variety
|
||
|
// of
|
||
|
// environments, either with or without APIs, to provide a
|
||
|
// consistent developer experience across different
|
||
|
// environments.
|
||
|
//
|
||
|
// Example uses of this error model include:
|
||
|
//
|
||
|
// - Partial errors. If a service needs to return partial errors to the
|
||
|
// client,
|
||
|
// it may embed the `Status` in the normal response to indicate the
|
||
|
// partial
|
||
|
// errors.
|
||
|
//
|
||
|
// - Workflow errors. A typical workflow has multiple steps. Each step
|
||
|
// may
|
||
|
// have a `Status` message for error reporting.
|
||
|
//
|
||
|
// - Batch operations. If a client uses batch request and batch
|
||
|
// response, the
|
||
|
// `Status` message should be used directly inside batch response,
|
||
|
// one for
|
||
|
// each error sub-response.
|
||
|
//
|
||
|
// - Asynchronous operations. If an API call embeds asynchronous
|
||
|
// operation
|
||
|
// results in its response, the status of those operations should
|
||
|
// be
|
||
|
// represented directly using the `Status` message.
|
||
|
//
|
||
|
// - Logging. If some API errors are stored in logs, the message
|
||
|
// `Status` could
|
||
|
// be used directly after any stripping needed for security/privacy
|
||
|
// reasons.
|
||
|
type Status struct {
|
||
|
// Code: The status code, which should be an enum value of
|
||
|
// google.rpc.Code.
|
||
|
Code int64 `json:"code,omitempty"`
|
||
|
|
||
|
// Details: A list of messages that carry the error details. There is a
|
||
|
// common set of
|
||
|
// message types for APIs to use.
|
||
|
Details []googleapi.RawMessage `json:"details,omitempty"`
|
||
|
|
||
|
// Message: A developer-facing error message, which should be in
|
||
|
// English. Any
|
||
|
// user-facing error message should be localized and sent in
|
||
|
// the
|
||
|
// google.rpc.Status.details field, or localized by the client.
|
||
|
Message string `json:"message,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "Code") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "Code") to include in API
|
||
|
// requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *Status) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod Status
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// WordInfo: Word-specific information for recognized words. Word
|
||
|
// information is only
|
||
|
// included in the response when certain request parameters are set,
|
||
|
// such
|
||
|
// as `enable_word_time_offsets`.
|
||
|
type WordInfo struct {
|
||
|
// EndTime: *Output-only* Time offset relative to the beginning of the
|
||
|
// audio,
|
||
|
// and corresponding to the end of the spoken word.
|
||
|
// This field is only set if `enable_word_time_offsets=true` and only
|
||
|
// in the top hypothesis.
|
||
|
// This is an experimental feature and the accuracy of the time offset
|
||
|
// can
|
||
|
// vary.
|
||
|
EndTime string `json:"endTime,omitempty"`
|
||
|
|
||
|
// StartTime: *Output-only* Time offset relative to the beginning of the
|
||
|
// audio,
|
||
|
// and corresponding to the start of the spoken word.
|
||
|
// This field is only set if `enable_word_time_offsets=true` and only
|
||
|
// in the top hypothesis.
|
||
|
// This is an experimental feature and the accuracy of the time offset
|
||
|
// can
|
||
|
// vary.
|
||
|
StartTime string `json:"startTime,omitempty"`
|
||
|
|
||
|
// Word: *Output-only* The word corresponding to this set of
|
||
|
// information.
|
||
|
Word string `json:"word,omitempty"`
|
||
|
|
||
|
// ForceSendFields is a list of field names (e.g. "EndTime") to
|
||
|
// unconditionally include in API requests. By default, fields with
|
||
|
// empty values are omitted from API requests. However, any non-pointer,
|
||
|
// non-interface field appearing in ForceSendFields will be sent to the
|
||
|
// server regardless of whether the field is empty or not. This may be
|
||
|
// used to include empty fields in Patch requests.
|
||
|
ForceSendFields []string `json:"-"`
|
||
|
|
||
|
// NullFields is a list of field names (e.g. "EndTime") to include in
|
||
|
// API requests with the JSON null value. By default, fields with empty
|
||
|
// values are omitted from API requests. However, any field with an
|
||
|
// empty value appearing in NullFields will be sent to the server as
|
||
|
// null. It is an error if a field in this list has a non-empty value.
|
||
|
// This may be used to include null fields in Patch requests.
|
||
|
NullFields []string `json:"-"`
|
||
|
}
|
||
|
|
||
|
func (s *WordInfo) MarshalJSON() ([]byte, error) {
|
||
|
type noMethod WordInfo
|
||
|
raw := noMethod(*s)
|
||
|
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
|
||
|
}
|
||
|
|
||
|
// method id "speech.operations.cancel":
|
||
|
|
||
|
type OperationsCancelCall struct {
|
||
|
s *Service
|
||
|
name string
|
||
|
canceloperationrequest *CancelOperationRequest
|
||
|
urlParams_ gensupport.URLParams
|
||
|
ctx_ context.Context
|
||
|
header_ http.Header
|
||
|
}
|
||
|
|
||
|
// Cancel: Starts asynchronous cancellation on a long-running operation.
|
||
|
// The server
|
||
|
// makes a best effort to cancel the operation, but success is
|
||
|
// not
|
||
|
// guaranteed. If the server doesn't support this method, it
|
||
|
// returns
|
||
|
// `google.rpc.Code.UNIMPLEMENTED`. Clients can
|
||
|
// use
|
||
|
// Operations.GetOperation or
|
||
|
// other methods to check whether the cancellation succeeded or whether
|
||
|
// the
|
||
|
// operation completed despite cancellation. On successful
|
||
|
// cancellation,
|
||
|
// the operation is not deleted; instead, it becomes an operation
|
||
|
// with
|
||
|
// an Operation.error value with a google.rpc.Status.code of
|
||
|
// 1,
|
||
|
// corresponding to `Code.CANCELLED`.
|
||
|
func (r *OperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *OperationsCancelCall {
|
||
|
c := &OperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
|
||
|
c.name = name
|
||
|
c.canceloperationrequest = canceloperationrequest
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Fields allows partial responses to be retrieved. See
|
||
|
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
|
||
|
// for more information.
|
||
|
func (c *OperationsCancelCall) Fields(s ...googleapi.Field) *OperationsCancelCall {
|
||
|
c.urlParams_.Set("fields", googleapi.CombineFields(s))
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Context sets the context to be used in this call's Do method. Any
|
||
|
// pending HTTP request will be aborted if the provided context is
|
||
|
// canceled.
|
||
|
func (c *OperationsCancelCall) Context(ctx context.Context) *OperationsCancelCall {
|
||
|
c.ctx_ = ctx
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Header returns an http.Header that can be modified by the caller to
|
||
|
// add HTTP headers to the request.
|
||
|
func (c *OperationsCancelCall) Header() http.Header {
|
||
|
if c.header_ == nil {
|
||
|
c.header_ = make(http.Header)
|
||
|
}
|
||
|
return c.header_
|
||
|
}
|
||
|
|
||
|
func (c *OperationsCancelCall) doRequest(alt string) (*http.Response, error) {
|
||
|
reqHeaders := make(http.Header)
|
||
|
for k, v := range c.header_ {
|
||
|
reqHeaders[k] = v
|
||
|
}
|
||
|
reqHeaders.Set("User-Agent", c.s.userAgent())
|
||
|
var body io.Reader = nil
|
||
|
body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
reqHeaders.Set("Content-Type", "application/json")
|
||
|
c.urlParams_.Set("alt", alt)
|
||
|
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/operations/{+name}:cancel")
|
||
|
urls += "?" + c.urlParams_.Encode()
|
||
|
req, _ := http.NewRequest("POST", urls, body)
|
||
|
req.Header = reqHeaders
|
||
|
googleapi.Expand(req.URL, map[string]string{
|
||
|
"name": c.name,
|
||
|
})
|
||
|
return gensupport.SendRequest(c.ctx_, c.s.client, req)
|
||
|
}
|
||
|
|
||
|
// Do executes the "speech.operations.cancel" call.
|
||
|
// Exactly one of *Empty or error will be non-nil. Any non-2xx status
|
||
|
// code is an error. Response headers are in either
|
||
|
// *Empty.ServerResponse.Header or (if a response was returned at all)
|
||
|
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
|
||
|
// check whether the returned error was because http.StatusNotModified
|
||
|
// was returned.
|
||
|
func (c *OperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
|
||
|
gensupport.SetOptions(c.urlParams_, opts...)
|
||
|
res, err := c.doRequest("json")
|
||
|
if res != nil && res.StatusCode == http.StatusNotModified {
|
||
|
if res.Body != nil {
|
||
|
res.Body.Close()
|
||
|
}
|
||
|
return nil, &googleapi.Error{
|
||
|
Code: res.StatusCode,
|
||
|
Header: res.Header,
|
||
|
}
|
||
|
}
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer googleapi.CloseBody(res)
|
||
|
if err := googleapi.CheckResponse(res); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
ret := &Empty{
|
||
|
ServerResponse: googleapi.ServerResponse{
|
||
|
Header: res.Header,
|
||
|
HTTPStatusCode: res.StatusCode,
|
||
|
},
|
||
|
}
|
||
|
target := &ret
|
||
|
if err := json.NewDecoder(res.Body).Decode(target); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return ret, nil
|
||
|
// {
|
||
|
// "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
|
||
|
// "flatPath": "v1/operations/{operationsId}:cancel",
|
||
|
// "httpMethod": "POST",
|
||
|
// "id": "speech.operations.cancel",
|
||
|
// "parameterOrder": [
|
||
|
// "name"
|
||
|
// ],
|
||
|
// "parameters": {
|
||
|
// "name": {
|
||
|
// "description": "The name of the operation resource to be cancelled.",
|
||
|
// "location": "path",
|
||
|
// "pattern": "^[^/]+$",
|
||
|
// "required": true,
|
||
|
// "type": "string"
|
||
|
// }
|
||
|
// },
|
||
|
// "path": "v1/operations/{+name}:cancel",
|
||
|
// "request": {
|
||
|
// "$ref": "CancelOperationRequest"
|
||
|
// },
|
||
|
// "response": {
|
||
|
// "$ref": "Empty"
|
||
|
// },
|
||
|
// "scopes": [
|
||
|
// "https://www.googleapis.com/auth/cloud-platform"
|
||
|
// ]
|
||
|
// }
|
||
|
|
||
|
}
|
||
|
|
||
|
// method id "speech.operations.delete":
|
||
|
|
||
|
type OperationsDeleteCall struct {
|
||
|
s *Service
|
||
|
name string
|
||
|
urlParams_ gensupport.URLParams
|
||
|
ctx_ context.Context
|
||
|
header_ http.Header
|
||
|
}
|
||
|
|
||
|
// Delete: Deletes a long-running operation. This method indicates that
|
||
|
// the client is
|
||
|
// no longer interested in the operation result. It does not cancel
|
||
|
// the
|
||
|
// operation. If the server doesn't support this method, it
|
||
|
// returns
|
||
|
// `google.rpc.Code.UNIMPLEMENTED`.
|
||
|
func (r *OperationsService) Delete(name string) *OperationsDeleteCall {
|
||
|
c := &OperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
|
||
|
c.name = name
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Fields allows partial responses to be retrieved. See
|
||
|
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
|
||
|
// for more information.
|
||
|
func (c *OperationsDeleteCall) Fields(s ...googleapi.Field) *OperationsDeleteCall {
|
||
|
c.urlParams_.Set("fields", googleapi.CombineFields(s))
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Context sets the context to be used in this call's Do method. Any
|
||
|
// pending HTTP request will be aborted if the provided context is
|
||
|
// canceled.
|
||
|
func (c *OperationsDeleteCall) Context(ctx context.Context) *OperationsDeleteCall {
|
||
|
c.ctx_ = ctx
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Header returns an http.Header that can be modified by the caller to
|
||
|
// add HTTP headers to the request.
|
||
|
func (c *OperationsDeleteCall) Header() http.Header {
|
||
|
if c.header_ == nil {
|
||
|
c.header_ = make(http.Header)
|
||
|
}
|
||
|
return c.header_
|
||
|
}
|
||
|
|
||
|
func (c *OperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
|
||
|
reqHeaders := make(http.Header)
|
||
|
for k, v := range c.header_ {
|
||
|
reqHeaders[k] = v
|
||
|
}
|
||
|
reqHeaders.Set("User-Agent", c.s.userAgent())
|
||
|
var body io.Reader = nil
|
||
|
c.urlParams_.Set("alt", alt)
|
||
|
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/operations/{+name}")
|
||
|
urls += "?" + c.urlParams_.Encode()
|
||
|
req, _ := http.NewRequest("DELETE", urls, body)
|
||
|
req.Header = reqHeaders
|
||
|
googleapi.Expand(req.URL, map[string]string{
|
||
|
"name": c.name,
|
||
|
})
|
||
|
return gensupport.SendRequest(c.ctx_, c.s.client, req)
|
||
|
}
|
||
|
|
||
|
// Do executes the "speech.operations.delete" call.
|
||
|
// Exactly one of *Empty or error will be non-nil. Any non-2xx status
|
||
|
// code is an error. Response headers are in either
|
||
|
// *Empty.ServerResponse.Header or (if a response was returned at all)
|
||
|
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
|
||
|
// check whether the returned error was because http.StatusNotModified
|
||
|
// was returned.
|
||
|
func (c *OperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
|
||
|
gensupport.SetOptions(c.urlParams_, opts...)
|
||
|
res, err := c.doRequest("json")
|
||
|
if res != nil && res.StatusCode == http.StatusNotModified {
|
||
|
if res.Body != nil {
|
||
|
res.Body.Close()
|
||
|
}
|
||
|
return nil, &googleapi.Error{
|
||
|
Code: res.StatusCode,
|
||
|
Header: res.Header,
|
||
|
}
|
||
|
}
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer googleapi.CloseBody(res)
|
||
|
if err := googleapi.CheckResponse(res); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
ret := &Empty{
|
||
|
ServerResponse: googleapi.ServerResponse{
|
||
|
Header: res.Header,
|
||
|
HTTPStatusCode: res.StatusCode,
|
||
|
},
|
||
|
}
|
||
|
target := &ret
|
||
|
if err := json.NewDecoder(res.Body).Decode(target); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return ret, nil
|
||
|
// {
|
||
|
// "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
|
||
|
// "flatPath": "v1/operations/{operationsId}",
|
||
|
// "httpMethod": "DELETE",
|
||
|
// "id": "speech.operations.delete",
|
||
|
// "parameterOrder": [
|
||
|
// "name"
|
||
|
// ],
|
||
|
// "parameters": {
|
||
|
// "name": {
|
||
|
// "description": "The name of the operation resource to be deleted.",
|
||
|
// "location": "path",
|
||
|
// "pattern": "^[^/]+$",
|
||
|
// "required": true,
|
||
|
// "type": "string"
|
||
|
// }
|
||
|
// },
|
||
|
// "path": "v1/operations/{+name}",
|
||
|
// "response": {
|
||
|
// "$ref": "Empty"
|
||
|
// },
|
||
|
// "scopes": [
|
||
|
// "https://www.googleapis.com/auth/cloud-platform"
|
||
|
// ]
|
||
|
// }
|
||
|
|
||
|
}
|
||
|
|
||
|
// method id "speech.operations.get":
|
||
|
|
||
|
type OperationsGetCall struct {
|
||
|
s *Service
|
||
|
name string
|
||
|
urlParams_ gensupport.URLParams
|
||
|
ifNoneMatch_ string
|
||
|
ctx_ context.Context
|
||
|
header_ http.Header
|
||
|
}
|
||
|
|
||
|
// Get: Gets the latest state of a long-running operation. Clients can
|
||
|
// use this
|
||
|
// method to poll the operation result at intervals as recommended by
|
||
|
// the API
|
||
|
// service.
|
||
|
func (r *OperationsService) Get(name string) *OperationsGetCall {
|
||
|
c := &OperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
|
||
|
c.name = name
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Fields allows partial responses to be retrieved. See
|
||
|
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
|
||
|
// for more information.
|
||
|
func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall {
|
||
|
c.urlParams_.Set("fields", googleapi.CombineFields(s))
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// IfNoneMatch sets the optional parameter which makes the operation
|
||
|
// fail if the object's ETag matches the given value. This is useful for
|
||
|
// getting updates only after the object has changed since the last
|
||
|
// request. Use googleapi.IsNotModified to check whether the response
|
||
|
// error from Do is the result of In-None-Match.
|
||
|
func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall {
|
||
|
c.ifNoneMatch_ = entityTag
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Context sets the context to be used in this call's Do method. Any
|
||
|
// pending HTTP request will be aborted if the provided context is
|
||
|
// canceled.
|
||
|
func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall {
|
||
|
c.ctx_ = ctx
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Header returns an http.Header that can be modified by the caller to
|
||
|
// add HTTP headers to the request.
|
||
|
func (c *OperationsGetCall) Header() http.Header {
|
||
|
if c.header_ == nil {
|
||
|
c.header_ = make(http.Header)
|
||
|
}
|
||
|
return c.header_
|
||
|
}
|
||
|
|
||
|
func (c *OperationsGetCall) doRequest(alt string) (*http.Response, error) {
|
||
|
reqHeaders := make(http.Header)
|
||
|
for k, v := range c.header_ {
|
||
|
reqHeaders[k] = v
|
||
|
}
|
||
|
reqHeaders.Set("User-Agent", c.s.userAgent())
|
||
|
if c.ifNoneMatch_ != "" {
|
||
|
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
|
||
|
}
|
||
|
var body io.Reader = nil
|
||
|
c.urlParams_.Set("alt", alt)
|
||
|
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/operations/{+name}")
|
||
|
urls += "?" + c.urlParams_.Encode()
|
||
|
req, _ := http.NewRequest("GET", urls, body)
|
||
|
req.Header = reqHeaders
|
||
|
googleapi.Expand(req.URL, map[string]string{
|
||
|
"name": c.name,
|
||
|
})
|
||
|
return gensupport.SendRequest(c.ctx_, c.s.client, req)
|
||
|
}
|
||
|
|
||
|
// Do executes the "speech.operations.get" call.
|
||
|
// Exactly one of *Operation or error will be non-nil. Any non-2xx
|
||
|
// status code is an error. Response headers are in either
|
||
|
// *Operation.ServerResponse.Header or (if a response was returned at
|
||
|
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
|
||
|
// to check whether the returned error was because
|
||
|
// http.StatusNotModified was returned.
|
||
|
func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
|
||
|
gensupport.SetOptions(c.urlParams_, opts...)
|
||
|
res, err := c.doRequest("json")
|
||
|
if res != nil && res.StatusCode == http.StatusNotModified {
|
||
|
if res.Body != nil {
|
||
|
res.Body.Close()
|
||
|
}
|
||
|
return nil, &googleapi.Error{
|
||
|
Code: res.StatusCode,
|
||
|
Header: res.Header,
|
||
|
}
|
||
|
}
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer googleapi.CloseBody(res)
|
||
|
if err := googleapi.CheckResponse(res); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
ret := &Operation{
|
||
|
ServerResponse: googleapi.ServerResponse{
|
||
|
Header: res.Header,
|
||
|
HTTPStatusCode: res.StatusCode,
|
||
|
},
|
||
|
}
|
||
|
target := &ret
|
||
|
if err := json.NewDecoder(res.Body).Decode(target); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return ret, nil
|
||
|
// {
|
||
|
// "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
|
||
|
// "flatPath": "v1/operations/{operationsId}",
|
||
|
// "httpMethod": "GET",
|
||
|
// "id": "speech.operations.get",
|
||
|
// "parameterOrder": [
|
||
|
// "name"
|
||
|
// ],
|
||
|
// "parameters": {
|
||
|
// "name": {
|
||
|
// "description": "The name of the operation resource.",
|
||
|
// "location": "path",
|
||
|
// "pattern": "^[^/]+$",
|
||
|
// "required": true,
|
||
|
// "type": "string"
|
||
|
// }
|
||
|
// },
|
||
|
// "path": "v1/operations/{+name}",
|
||
|
// "response": {
|
||
|
// "$ref": "Operation"
|
||
|
// },
|
||
|
// "scopes": [
|
||
|
// "https://www.googleapis.com/auth/cloud-platform"
|
||
|
// ]
|
||
|
// }
|
||
|
|
||
|
}
|
||
|
|
||
|
// method id "speech.operations.list":
|
||
|
|
||
|
type OperationsListCall struct {
|
||
|
s *Service
|
||
|
urlParams_ gensupport.URLParams
|
||
|
ifNoneMatch_ string
|
||
|
ctx_ context.Context
|
||
|
header_ http.Header
|
||
|
}
|
||
|
|
||
|
// List: Lists operations that match the specified filter in the
|
||
|
// request. If the
|
||
|
// server doesn't support this method, it returns
|
||
|
// `UNIMPLEMENTED`.
|
||
|
//
|
||
|
// NOTE: the `name` binding allows API services to override the
|
||
|
// binding
|
||
|
// to use different resource name schemes, such as `users/*/operations`.
|
||
|
// To
|
||
|
// override the binding, API services can add a binding such
|
||
|
// as
|
||
|
// "/v1/{name=users/*}/operations" to their service configuration.
|
||
|
// For backwards compatibility, the default name includes the
|
||
|
// operations
|
||
|
// collection id, however overriding users must ensure the name
|
||
|
// binding
|
||
|
// is the parent resource, without the operations collection id.
|
||
|
func (r *OperationsService) List() *OperationsListCall {
|
||
|
c := &OperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Filter sets the optional parameter "filter": The standard list
|
||
|
// filter.
|
||
|
func (c *OperationsListCall) Filter(filter string) *OperationsListCall {
|
||
|
c.urlParams_.Set("filter", filter)
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Name sets the optional parameter "name": The name of the operation's
|
||
|
// parent resource.
|
||
|
func (c *OperationsListCall) Name(name string) *OperationsListCall {
|
||
|
c.urlParams_.Set("name", name)
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// PageSize sets the optional parameter "pageSize": The standard list
|
||
|
// page size.
|
||
|
func (c *OperationsListCall) PageSize(pageSize int64) *OperationsListCall {
|
||
|
c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// PageToken sets the optional parameter "pageToken": The standard list
|
||
|
// page token.
|
||
|
func (c *OperationsListCall) PageToken(pageToken string) *OperationsListCall {
|
||
|
c.urlParams_.Set("pageToken", pageToken)
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Fields allows partial responses to be retrieved. See
|
||
|
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
|
||
|
// for more information.
|
||
|
func (c *OperationsListCall) Fields(s ...googleapi.Field) *OperationsListCall {
|
||
|
c.urlParams_.Set("fields", googleapi.CombineFields(s))
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// IfNoneMatch sets the optional parameter which makes the operation
|
||
|
// fail if the object's ETag matches the given value. This is useful for
|
||
|
// getting updates only after the object has changed since the last
|
||
|
// request. Use googleapi.IsNotModified to check whether the response
|
||
|
// error from Do is the result of In-None-Match.
|
||
|
func (c *OperationsListCall) IfNoneMatch(entityTag string) *OperationsListCall {
|
||
|
c.ifNoneMatch_ = entityTag
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Context sets the context to be used in this call's Do method. Any
|
||
|
// pending HTTP request will be aborted if the provided context is
|
||
|
// canceled.
|
||
|
func (c *OperationsListCall) Context(ctx context.Context) *OperationsListCall {
|
||
|
c.ctx_ = ctx
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Header returns an http.Header that can be modified by the caller to
|
||
|
// add HTTP headers to the request.
|
||
|
func (c *OperationsListCall) Header() http.Header {
|
||
|
if c.header_ == nil {
|
||
|
c.header_ = make(http.Header)
|
||
|
}
|
||
|
return c.header_
|
||
|
}
|
||
|
|
||
|
func (c *OperationsListCall) doRequest(alt string) (*http.Response, error) {
|
||
|
reqHeaders := make(http.Header)
|
||
|
for k, v := range c.header_ {
|
||
|
reqHeaders[k] = v
|
||
|
}
|
||
|
reqHeaders.Set("User-Agent", c.s.userAgent())
|
||
|
if c.ifNoneMatch_ != "" {
|
||
|
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
|
||
|
}
|
||
|
var body io.Reader = nil
|
||
|
c.urlParams_.Set("alt", alt)
|
||
|
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/operations")
|
||
|
urls += "?" + c.urlParams_.Encode()
|
||
|
req, _ := http.NewRequest("GET", urls, body)
|
||
|
req.Header = reqHeaders
|
||
|
return gensupport.SendRequest(c.ctx_, c.s.client, req)
|
||
|
}
|
||
|
|
||
|
// Do executes the "speech.operations.list" call.
|
||
|
// Exactly one of *ListOperationsResponse or error will be non-nil. Any
|
||
|
// non-2xx status code is an error. Response headers are in either
|
||
|
// *ListOperationsResponse.ServerResponse.Header or (if a response was
|
||
|
// returned at all) in error.(*googleapi.Error).Header. Use
|
||
|
// googleapi.IsNotModified to check whether the returned error was
|
||
|
// because http.StatusNotModified was returned.
|
||
|
func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
|
||
|
gensupport.SetOptions(c.urlParams_, opts...)
|
||
|
res, err := c.doRequest("json")
|
||
|
if res != nil && res.StatusCode == http.StatusNotModified {
|
||
|
if res.Body != nil {
|
||
|
res.Body.Close()
|
||
|
}
|
||
|
return nil, &googleapi.Error{
|
||
|
Code: res.StatusCode,
|
||
|
Header: res.Header,
|
||
|
}
|
||
|
}
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer googleapi.CloseBody(res)
|
||
|
if err := googleapi.CheckResponse(res); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
ret := &ListOperationsResponse{
|
||
|
ServerResponse: googleapi.ServerResponse{
|
||
|
Header: res.Header,
|
||
|
HTTPStatusCode: res.StatusCode,
|
||
|
},
|
||
|
}
|
||
|
target := &ret
|
||
|
if err := json.NewDecoder(res.Body).Decode(target); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return ret, nil
|
||
|
// {
|
||
|
// "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
|
||
|
// "flatPath": "v1/operations",
|
||
|
// "httpMethod": "GET",
|
||
|
// "id": "speech.operations.list",
|
||
|
// "parameterOrder": [],
|
||
|
// "parameters": {
|
||
|
// "filter": {
|
||
|
// "description": "The standard list filter.",
|
||
|
// "location": "query",
|
||
|
// "type": "string"
|
||
|
// },
|
||
|
// "name": {
|
||
|
// "description": "The name of the operation's parent resource.",
|
||
|
// "location": "query",
|
||
|
// "type": "string"
|
||
|
// },
|
||
|
// "pageSize": {
|
||
|
// "description": "The standard list page size.",
|
||
|
// "format": "int32",
|
||
|
// "location": "query",
|
||
|
// "type": "integer"
|
||
|
// },
|
||
|
// "pageToken": {
|
||
|
// "description": "The standard list page token.",
|
||
|
// "location": "query",
|
||
|
// "type": "string"
|
||
|
// }
|
||
|
// },
|
||
|
// "path": "v1/operations",
|
||
|
// "response": {
|
||
|
// "$ref": "ListOperationsResponse"
|
||
|
// },
|
||
|
// "scopes": [
|
||
|
// "https://www.googleapis.com/auth/cloud-platform"
|
||
|
// ]
|
||
|
// }
|
||
|
|
||
|
}
|
||
|
|
||
|
// Pages invokes f for each page of results.
|
||
|
// A non-nil error returned from f will halt the iteration.
|
||
|
// The provided context supersedes any context provided to the Context method.
|
||
|
func (c *OperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
|
||
|
c.ctx_ = ctx
|
||
|
defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
|
||
|
for {
|
||
|
x, err := c.Do()
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
if err := f(x); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
if x.NextPageToken == "" {
|
||
|
return nil
|
||
|
}
|
||
|
c.PageToken(x.NextPageToken)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// method id "speech.speech.longrunningrecognize":
|
||
|
|
||
|
type SpeechLongrunningrecognizeCall struct {
|
||
|
s *Service
|
||
|
longrunningrecognizerequest *LongRunningRecognizeRequest
|
||
|
urlParams_ gensupport.URLParams
|
||
|
ctx_ context.Context
|
||
|
header_ http.Header
|
||
|
}
|
||
|
|
||
|
// Longrunningrecognize: Performs asynchronous speech recognition:
|
||
|
// receive results via the
|
||
|
// google.longrunning.Operations interface. Returns either
|
||
|
// an
|
||
|
// `Operation.error` or an `Operation.response` which contains
|
||
|
// a `LongRunningRecognizeResponse` message.
|
||
|
func (r *SpeechService) Longrunningrecognize(longrunningrecognizerequest *LongRunningRecognizeRequest) *SpeechLongrunningrecognizeCall {
|
||
|
c := &SpeechLongrunningrecognizeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
|
||
|
c.longrunningrecognizerequest = longrunningrecognizerequest
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Fields allows partial responses to be retrieved. See
|
||
|
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
|
||
|
// for more information.
|
||
|
func (c *SpeechLongrunningrecognizeCall) Fields(s ...googleapi.Field) *SpeechLongrunningrecognizeCall {
|
||
|
c.urlParams_.Set("fields", googleapi.CombineFields(s))
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Context sets the context to be used in this call's Do method. Any
|
||
|
// pending HTTP request will be aborted if the provided context is
|
||
|
// canceled.
|
||
|
func (c *SpeechLongrunningrecognizeCall) Context(ctx context.Context) *SpeechLongrunningrecognizeCall {
|
||
|
c.ctx_ = ctx
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Header returns an http.Header that can be modified by the caller to
|
||
|
// add HTTP headers to the request.
|
||
|
func (c *SpeechLongrunningrecognizeCall) Header() http.Header {
|
||
|
if c.header_ == nil {
|
||
|
c.header_ = make(http.Header)
|
||
|
}
|
||
|
return c.header_
|
||
|
}
|
||
|
|
||
|
func (c *SpeechLongrunningrecognizeCall) doRequest(alt string) (*http.Response, error) {
|
||
|
reqHeaders := make(http.Header)
|
||
|
for k, v := range c.header_ {
|
||
|
reqHeaders[k] = v
|
||
|
}
|
||
|
reqHeaders.Set("User-Agent", c.s.userAgent())
|
||
|
var body io.Reader = nil
|
||
|
body, err := googleapi.WithoutDataWrapper.JSONReader(c.longrunningrecognizerequest)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
reqHeaders.Set("Content-Type", "application/json")
|
||
|
c.urlParams_.Set("alt", alt)
|
||
|
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/speech:longrunningrecognize")
|
||
|
urls += "?" + c.urlParams_.Encode()
|
||
|
req, _ := http.NewRequest("POST", urls, body)
|
||
|
req.Header = reqHeaders
|
||
|
return gensupport.SendRequest(c.ctx_, c.s.client, req)
|
||
|
}
|
||
|
|
||
|
// Do executes the "speech.speech.longrunningrecognize" call.
|
||
|
// Exactly one of *Operation or error will be non-nil. Any non-2xx
|
||
|
// status code is an error. Response headers are in either
|
||
|
// *Operation.ServerResponse.Header or (if a response was returned at
|
||
|
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
|
||
|
// to check whether the returned error was because
|
||
|
// http.StatusNotModified was returned.
|
||
|
func (c *SpeechLongrunningrecognizeCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
|
||
|
gensupport.SetOptions(c.urlParams_, opts...)
|
||
|
res, err := c.doRequest("json")
|
||
|
if res != nil && res.StatusCode == http.StatusNotModified {
|
||
|
if res.Body != nil {
|
||
|
res.Body.Close()
|
||
|
}
|
||
|
return nil, &googleapi.Error{
|
||
|
Code: res.StatusCode,
|
||
|
Header: res.Header,
|
||
|
}
|
||
|
}
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer googleapi.CloseBody(res)
|
||
|
if err := googleapi.CheckResponse(res); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
ret := &Operation{
|
||
|
ServerResponse: googleapi.ServerResponse{
|
||
|
Header: res.Header,
|
||
|
HTTPStatusCode: res.StatusCode,
|
||
|
},
|
||
|
}
|
||
|
target := &ret
|
||
|
if err := json.NewDecoder(res.Body).Decode(target); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return ret, nil
|
||
|
// {
|
||
|
// "description": "Performs asynchronous speech recognition: receive results via the\ngoogle.longrunning.Operations interface. Returns either an\n`Operation.error` or an `Operation.response` which contains\na `LongRunningRecognizeResponse` message.",
|
||
|
// "flatPath": "v1/speech:longrunningrecognize",
|
||
|
// "httpMethod": "POST",
|
||
|
// "id": "speech.speech.longrunningrecognize",
|
||
|
// "parameterOrder": [],
|
||
|
// "parameters": {},
|
||
|
// "path": "v1/speech:longrunningrecognize",
|
||
|
// "request": {
|
||
|
// "$ref": "LongRunningRecognizeRequest"
|
||
|
// },
|
||
|
// "response": {
|
||
|
// "$ref": "Operation"
|
||
|
// },
|
||
|
// "scopes": [
|
||
|
// "https://www.googleapis.com/auth/cloud-platform"
|
||
|
// ]
|
||
|
// }
|
||
|
|
||
|
}
|
||
|
|
||
|
// method id "speech.speech.recognize":
|
||
|
|
||
|
type SpeechRecognizeCall struct {
|
||
|
s *Service
|
||
|
recognizerequest *RecognizeRequest
|
||
|
urlParams_ gensupport.URLParams
|
||
|
ctx_ context.Context
|
||
|
header_ http.Header
|
||
|
}
|
||
|
|
||
|
// Recognize: Performs synchronous speech recognition: receive results
|
||
|
// after all audio
|
||
|
// has been sent and processed.
|
||
|
func (r *SpeechService) Recognize(recognizerequest *RecognizeRequest) *SpeechRecognizeCall {
|
||
|
c := &SpeechRecognizeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
|
||
|
c.recognizerequest = recognizerequest
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Fields allows partial responses to be retrieved. See
|
||
|
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
|
||
|
// for more information.
|
||
|
func (c *SpeechRecognizeCall) Fields(s ...googleapi.Field) *SpeechRecognizeCall {
|
||
|
c.urlParams_.Set("fields", googleapi.CombineFields(s))
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Context sets the context to be used in this call's Do method. Any
|
||
|
// pending HTTP request will be aborted if the provided context is
|
||
|
// canceled.
|
||
|
func (c *SpeechRecognizeCall) Context(ctx context.Context) *SpeechRecognizeCall {
|
||
|
c.ctx_ = ctx
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
// Header returns an http.Header that can be modified by the caller to
|
||
|
// add HTTP headers to the request.
|
||
|
func (c *SpeechRecognizeCall) Header() http.Header {
|
||
|
if c.header_ == nil {
|
||
|
c.header_ = make(http.Header)
|
||
|
}
|
||
|
return c.header_
|
||
|
}
|
||
|
|
||
|
func (c *SpeechRecognizeCall) doRequest(alt string) (*http.Response, error) {
|
||
|
reqHeaders := make(http.Header)
|
||
|
for k, v := range c.header_ {
|
||
|
reqHeaders[k] = v
|
||
|
}
|
||
|
reqHeaders.Set("User-Agent", c.s.userAgent())
|
||
|
var body io.Reader = nil
|
||
|
body, err := googleapi.WithoutDataWrapper.JSONReader(c.recognizerequest)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
reqHeaders.Set("Content-Type", "application/json")
|
||
|
c.urlParams_.Set("alt", alt)
|
||
|
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/speech:recognize")
|
||
|
urls += "?" + c.urlParams_.Encode()
|
||
|
req, _ := http.NewRequest("POST", urls, body)
|
||
|
req.Header = reqHeaders
|
||
|
return gensupport.SendRequest(c.ctx_, c.s.client, req)
|
||
|
}
|
||
|
|
||
|
// Do executes the "speech.speech.recognize" call.
|
||
|
// Exactly one of *RecognizeResponse or error will be non-nil. Any
|
||
|
// non-2xx status code is an error. Response headers are in either
|
||
|
// *RecognizeResponse.ServerResponse.Header or (if a response was
|
||
|
// returned at all) in error.(*googleapi.Error).Header. Use
|
||
|
// googleapi.IsNotModified to check whether the returned error was
|
||
|
// because http.StatusNotModified was returned.
|
||
|
func (c *SpeechRecognizeCall) Do(opts ...googleapi.CallOption) (*RecognizeResponse, error) {
|
||
|
gensupport.SetOptions(c.urlParams_, opts...)
|
||
|
res, err := c.doRequest("json")
|
||
|
if res != nil && res.StatusCode == http.StatusNotModified {
|
||
|
if res.Body != nil {
|
||
|
res.Body.Close()
|
||
|
}
|
||
|
return nil, &googleapi.Error{
|
||
|
Code: res.StatusCode,
|
||
|
Header: res.Header,
|
||
|
}
|
||
|
}
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer googleapi.CloseBody(res)
|
||
|
if err := googleapi.CheckResponse(res); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
ret := &RecognizeResponse{
|
||
|
ServerResponse: googleapi.ServerResponse{
|
||
|
Header: res.Header,
|
||
|
HTTPStatusCode: res.StatusCode,
|
||
|
},
|
||
|
}
|
||
|
target := &ret
|
||
|
if err := json.NewDecoder(res.Body).Decode(target); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return ret, nil
|
||
|
// {
|
||
|
// "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.",
|
||
|
// "flatPath": "v1/speech:recognize",
|
||
|
// "httpMethod": "POST",
|
||
|
// "id": "speech.speech.recognize",
|
||
|
// "parameterOrder": [],
|
||
|
// "parameters": {},
|
||
|
// "path": "v1/speech:recognize",
|
||
|
// "request": {
|
||
|
// "$ref": "RecognizeRequest"
|
||
|
// },
|
||
|
// "response": {
|
||
|
// "$ref": "RecognizeResponse"
|
||
|
// },
|
||
|
// "scopes": [
|
||
|
// "https://www.googleapis.com/auth/cloud-platform"
|
||
|
// ]
|
||
|
// }
|
||
|
|
||
|
}
|