You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1776 line
70 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: google/assistant/embedded/v1alpha2/embedded_assistant.proto
  3. package embedded // import "google.golang.org/genproto/googleapis/assistant/embedded/v1alpha2"
  4. import proto "github.com/golang/protobuf/proto"
  5. import fmt "fmt"
  6. import math "math"
  7. import _ "google.golang.org/genproto/googleapis/api/annotations"
  8. import latlng "google.golang.org/genproto/googleapis/type/latlng"
  9. import (
  10. context "golang.org/x/net/context"
  11. grpc "google.golang.org/grpc"
  12. )
  13. // Reference imports to suppress errors if they are not otherwise used.
  14. var _ = proto.Marshal
  15. var _ = fmt.Errorf
  16. var _ = math.Inf
  17. // This is a compile-time assertion to ensure that this generated file
  18. // is compatible with the proto package it is being compiled against.
  19. // A compilation error at this line likely means your copy of the
  20. // proto package needs to be updated.
  21. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  22. // Indicates the type of event.
  23. type AssistResponse_EventType int32
  24. const (
  25. // No event specified.
  26. AssistResponse_EVENT_TYPE_UNSPECIFIED AssistResponse_EventType = 0
  27. // This event indicates that the server has detected the end of the user's
  28. // speech utterance and expects no additional speech. Therefore, the server
  29. // will not process additional audio (although it may subsequently return
  30. // additional results). The client should stop sending additional audio
  31. // data, half-close the gRPC connection, and wait for any additional results
  32. // until the server closes the gRPC connection.
  33. AssistResponse_END_OF_UTTERANCE AssistResponse_EventType = 1
  34. )
  35. var AssistResponse_EventType_name = map[int32]string{
  36. 0: "EVENT_TYPE_UNSPECIFIED",
  37. 1: "END_OF_UTTERANCE",
  38. }
  39. var AssistResponse_EventType_value = map[string]int32{
  40. "EVENT_TYPE_UNSPECIFIED": 0,
  41. "END_OF_UTTERANCE": 1,
  42. }
  43. func (x AssistResponse_EventType) String() string {
  44. return proto.EnumName(AssistResponse_EventType_name, int32(x))
  45. }
  46. func (AssistResponse_EventType) EnumDescriptor() ([]byte, []int) {
  47. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{1, 0}
  48. }
  49. // Audio encoding of the data sent in the audio message.
  50. // Audio must be one-channel (mono).
  51. type AudioInConfig_Encoding int32
  52. const (
  53. // Not specified. Will return result [google.rpc.Code.INVALID_ARGUMENT][].
  54. AudioInConfig_ENCODING_UNSPECIFIED AudioInConfig_Encoding = 0
  55. // Uncompressed 16-bit signed little-endian samples (Linear PCM).
  56. // This encoding includes no header, only the raw audio bytes.
  57. AudioInConfig_LINEAR16 AudioInConfig_Encoding = 1
  58. // [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio
  59. // Codec) is the recommended encoding because it is
  60. // lossless--therefore recognition is not compromised--and
  61. // requires only about half the bandwidth of `LINEAR16`. This encoding
  62. // includes the `FLAC` stream header followed by audio data. It supports
  63. // 16-bit and 24-bit samples, however, not all fields in `STREAMINFO` are
  64. // supported.
  65. AudioInConfig_FLAC AudioInConfig_Encoding = 2
  66. )
  67. var AudioInConfig_Encoding_name = map[int32]string{
  68. 0: "ENCODING_UNSPECIFIED",
  69. 1: "LINEAR16",
  70. 2: "FLAC",
  71. }
  72. var AudioInConfig_Encoding_value = map[string]int32{
  73. "ENCODING_UNSPECIFIED": 0,
  74. "LINEAR16": 1,
  75. "FLAC": 2,
  76. }
  77. func (x AudioInConfig_Encoding) String() string {
  78. return proto.EnumName(AudioInConfig_Encoding_name, int32(x))
  79. }
  80. func (AudioInConfig_Encoding) EnumDescriptor() ([]byte, []int) {
  81. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{4, 0}
  82. }
  83. // Audio encoding of the data returned in the audio message. All encodings are
  84. // raw audio bytes with no header, except as indicated below.
  85. type AudioOutConfig_Encoding int32
  86. const (
  87. // Not specified. Will return result [google.rpc.Code.INVALID_ARGUMENT][].
  88. AudioOutConfig_ENCODING_UNSPECIFIED AudioOutConfig_Encoding = 0
  89. // Uncompressed 16-bit signed little-endian samples (Linear PCM).
  90. AudioOutConfig_LINEAR16 AudioOutConfig_Encoding = 1
  91. // MP3 audio encoding. The sample rate is encoded in the payload.
  92. AudioOutConfig_MP3 AudioOutConfig_Encoding = 2
  93. // Opus-encoded audio wrapped in an ogg container. The result will be a
  94. // file which can be played natively on Android and in some browsers (such
  95. // as Chrome). The quality of the encoding is considerably higher than MP3
  96. // while using the same bitrate. The sample rate is encoded in the payload.
  97. AudioOutConfig_OPUS_IN_OGG AudioOutConfig_Encoding = 3
  98. )
  99. var AudioOutConfig_Encoding_name = map[int32]string{
  100. 0: "ENCODING_UNSPECIFIED",
  101. 1: "LINEAR16",
  102. 2: "MP3",
  103. 3: "OPUS_IN_OGG",
  104. }
  105. var AudioOutConfig_Encoding_value = map[string]int32{
  106. "ENCODING_UNSPECIFIED": 0,
  107. "LINEAR16": 1,
  108. "MP3": 2,
  109. "OPUS_IN_OGG": 3,
  110. }
  111. func (x AudioOutConfig_Encoding) String() string {
  112. return proto.EnumName(AudioOutConfig_Encoding_name, int32(x))
  113. }
  114. func (AudioOutConfig_Encoding) EnumDescriptor() ([]byte, []int) {
  115. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{5, 0}
  116. }
  117. // Possible modes for visual screen-output on the device.
  118. type ScreenOutConfig_ScreenMode int32
  119. const (
  120. // No video mode specified.
  121. // The Assistant may respond as if in `OFF` mode.
  122. ScreenOutConfig_SCREEN_MODE_UNSPECIFIED ScreenOutConfig_ScreenMode = 0
  123. // Screen is off (or has brightness or other settings set so low it is
  124. // not visible). The Assistant will typically not return a screen response
  125. // in this mode.
  126. ScreenOutConfig_OFF ScreenOutConfig_ScreenMode = 1
  127. // The Assistant will typically return a partial-screen response in this
  128. // mode.
  129. ScreenOutConfig_PLAYING ScreenOutConfig_ScreenMode = 3
  130. )
  131. var ScreenOutConfig_ScreenMode_name = map[int32]string{
  132. 0: "SCREEN_MODE_UNSPECIFIED",
  133. 1: "OFF",
  134. 3: "PLAYING",
  135. }
  136. var ScreenOutConfig_ScreenMode_value = map[string]int32{
  137. "SCREEN_MODE_UNSPECIFIED": 0,
  138. "OFF": 1,
  139. "PLAYING": 3,
  140. }
  141. func (x ScreenOutConfig_ScreenMode) String() string {
  142. return proto.EnumName(ScreenOutConfig_ScreenMode_name, int32(x))
  143. }
  144. func (ScreenOutConfig_ScreenMode) EnumDescriptor() ([]byte, []int) {
  145. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{6, 0}
  146. }
  147. // Possible formats of the screen data.
  148. type ScreenOut_Format int32
  149. const (
  150. // No format specified.
  151. ScreenOut_FORMAT_UNSPECIFIED ScreenOut_Format = 0
  152. // Data will contain a fully-formed HTML5 layout encoded in UTF-8, e.g.
  153. // `<html><body><div>...</div></body></html>`. It is intended to be rendered
  154. // along with the audio response. Note that HTML5 doctype should be included
  155. // in the actual HTML data.
  156. ScreenOut_HTML ScreenOut_Format = 1
  157. )
  158. var ScreenOut_Format_name = map[int32]string{
  159. 0: "FORMAT_UNSPECIFIED",
  160. 1: "HTML",
  161. }
  162. var ScreenOut_Format_value = map[string]int32{
  163. "FORMAT_UNSPECIFIED": 0,
  164. "HTML": 1,
  165. }
  166. func (x ScreenOut_Format) String() string {
  167. return proto.EnumName(ScreenOut_Format_name, int32(x))
  168. }
  169. func (ScreenOut_Format) EnumDescriptor() ([]byte, []int) {
  170. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{10, 0}
  171. }
  172. // Possible states of the microphone after a `Assist` RPC completes.
  173. type DialogStateOut_MicrophoneMode int32
  174. const (
  175. // No mode specified.
  176. DialogStateOut_MICROPHONE_MODE_UNSPECIFIED DialogStateOut_MicrophoneMode = 0
  177. // The service is not expecting a follow-on question from the user.
  178. // The microphone should remain off until the user re-activates it.
  179. DialogStateOut_CLOSE_MICROPHONE DialogStateOut_MicrophoneMode = 1
  180. // The service is expecting a follow-on question from the user. The
  181. // microphone should be re-opened when the `AudioOut` playback completes
  182. // (by starting a new `Assist` RPC call to send the new audio).
  183. DialogStateOut_DIALOG_FOLLOW_ON DialogStateOut_MicrophoneMode = 2
  184. )
  185. var DialogStateOut_MicrophoneMode_name = map[int32]string{
  186. 0: "MICROPHONE_MODE_UNSPECIFIED",
  187. 1: "CLOSE_MICROPHONE",
  188. 2: "DIALOG_FOLLOW_ON",
  189. }
  190. var DialogStateOut_MicrophoneMode_value = map[string]int32{
  191. "MICROPHONE_MODE_UNSPECIFIED": 0,
  192. "CLOSE_MICROPHONE": 1,
  193. "DIALOG_FOLLOW_ON": 2,
  194. }
  195. func (x DialogStateOut_MicrophoneMode) String() string {
  196. return proto.EnumName(DialogStateOut_MicrophoneMode_name, int32(x))
  197. }
  198. func (DialogStateOut_MicrophoneMode) EnumDescriptor() ([]byte, []int) {
  199. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{13, 0}
  200. }
  201. // The top-level message sent by the client. Clients must send at least two, and
  202. // typically numerous `AssistRequest` messages. The first message must
  203. // contain a `config` message and must not contain `audio_in` data. All
  204. // subsequent messages must contain `audio_in` data and must not contain a
  205. // `config` message.
  206. type AssistRequest struct {
  207. // Exactly one of these fields must be specified in each `AssistRequest`.
  208. //
  209. // Types that are valid to be assigned to Type:
  210. // *AssistRequest_Config
  211. // *AssistRequest_AudioIn
  212. Type isAssistRequest_Type `protobuf_oneof:"type"`
  213. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  214. XXX_unrecognized []byte `json:"-"`
  215. XXX_sizecache int32 `json:"-"`
  216. }
  217. func (m *AssistRequest) Reset() { *m = AssistRequest{} }
  218. func (m *AssistRequest) String() string { return proto.CompactTextString(m) }
  219. func (*AssistRequest) ProtoMessage() {}
  220. func (*AssistRequest) Descriptor() ([]byte, []int) {
  221. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{0}
  222. }
  223. func (m *AssistRequest) XXX_Unmarshal(b []byte) error {
  224. return xxx_messageInfo_AssistRequest.Unmarshal(m, b)
  225. }
  226. func (m *AssistRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  227. return xxx_messageInfo_AssistRequest.Marshal(b, m, deterministic)
  228. }
  229. func (dst *AssistRequest) XXX_Merge(src proto.Message) {
  230. xxx_messageInfo_AssistRequest.Merge(dst, src)
  231. }
  232. func (m *AssistRequest) XXX_Size() int {
  233. return xxx_messageInfo_AssistRequest.Size(m)
  234. }
  235. func (m *AssistRequest) XXX_DiscardUnknown() {
  236. xxx_messageInfo_AssistRequest.DiscardUnknown(m)
  237. }
  238. var xxx_messageInfo_AssistRequest proto.InternalMessageInfo
  239. type isAssistRequest_Type interface {
  240. isAssistRequest_Type()
  241. }
  242. type AssistRequest_Config struct {
  243. Config *AssistConfig `protobuf:"bytes,1,opt,name=config,proto3,oneof"`
  244. }
  245. type AssistRequest_AudioIn struct {
  246. AudioIn []byte `protobuf:"bytes,2,opt,name=audio_in,json=audioIn,proto3,oneof"`
  247. }
  248. func (*AssistRequest_Config) isAssistRequest_Type() {}
  249. func (*AssistRequest_AudioIn) isAssistRequest_Type() {}
  250. func (m *AssistRequest) GetType() isAssistRequest_Type {
  251. if m != nil {
  252. return m.Type
  253. }
  254. return nil
  255. }
  256. func (m *AssistRequest) GetConfig() *AssistConfig {
  257. if x, ok := m.GetType().(*AssistRequest_Config); ok {
  258. return x.Config
  259. }
  260. return nil
  261. }
  262. func (m *AssistRequest) GetAudioIn() []byte {
  263. if x, ok := m.GetType().(*AssistRequest_AudioIn); ok {
  264. return x.AudioIn
  265. }
  266. return nil
  267. }
  268. // XXX_OneofFuncs is for the internal use of the proto package.
  269. func (*AssistRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  270. return _AssistRequest_OneofMarshaler, _AssistRequest_OneofUnmarshaler, _AssistRequest_OneofSizer, []interface{}{
  271. (*AssistRequest_Config)(nil),
  272. (*AssistRequest_AudioIn)(nil),
  273. }
  274. }
  275. func _AssistRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  276. m := msg.(*AssistRequest)
  277. // type
  278. switch x := m.Type.(type) {
  279. case *AssistRequest_Config:
  280. b.EncodeVarint(1<<3 | proto.WireBytes)
  281. if err := b.EncodeMessage(x.Config); err != nil {
  282. return err
  283. }
  284. case *AssistRequest_AudioIn:
  285. b.EncodeVarint(2<<3 | proto.WireBytes)
  286. b.EncodeRawBytes(x.AudioIn)
  287. case nil:
  288. default:
  289. return fmt.Errorf("AssistRequest.Type has unexpected type %T", x)
  290. }
  291. return nil
  292. }
  293. func _AssistRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  294. m := msg.(*AssistRequest)
  295. switch tag {
  296. case 1: // type.config
  297. if wire != proto.WireBytes {
  298. return true, proto.ErrInternalBadWireType
  299. }
  300. msg := new(AssistConfig)
  301. err := b.DecodeMessage(msg)
  302. m.Type = &AssistRequest_Config{msg}
  303. return true, err
  304. case 2: // type.audio_in
  305. if wire != proto.WireBytes {
  306. return true, proto.ErrInternalBadWireType
  307. }
  308. x, err := b.DecodeRawBytes(true)
  309. m.Type = &AssistRequest_AudioIn{x}
  310. return true, err
  311. default:
  312. return false, nil
  313. }
  314. }
  315. func _AssistRequest_OneofSizer(msg proto.Message) (n int) {
  316. m := msg.(*AssistRequest)
  317. // type
  318. switch x := m.Type.(type) {
  319. case *AssistRequest_Config:
  320. s := proto.Size(x.Config)
  321. n += 1 // tag and wire
  322. n += proto.SizeVarint(uint64(s))
  323. n += s
  324. case *AssistRequest_AudioIn:
  325. n += 1 // tag and wire
  326. n += proto.SizeVarint(uint64(len(x.AudioIn)))
  327. n += len(x.AudioIn)
  328. case nil:
  329. default:
  330. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  331. }
  332. return n
  333. }
  334. // The top-level message received by the client. A series of one or more
  335. // `AssistResponse` messages are streamed back to the client.
  336. type AssistResponse struct {
  337. // *Output-only* Indicates the type of event.
  338. EventType AssistResponse_EventType `protobuf:"varint,1,opt,name=event_type,json=eventType,proto3,enum=google.assistant.embedded.v1alpha2.AssistResponse_EventType" json:"event_type,omitempty"`
  339. // *Output-only* The audio containing the Assistant's response to the query.
  340. AudioOut *AudioOut `protobuf:"bytes,3,opt,name=audio_out,json=audioOut,proto3" json:"audio_out,omitempty"`
  341. // *Output-only* Contains the Assistant's visual response to the query.
  342. ScreenOut *ScreenOut `protobuf:"bytes,4,opt,name=screen_out,json=screenOut,proto3" json:"screen_out,omitempty"`
  343. // *Output-only* Contains the action triggered by the query with the
  344. // appropriate payloads and semantic parsing.
  345. DeviceAction *DeviceAction `protobuf:"bytes,6,opt,name=device_action,json=deviceAction,proto3" json:"device_action,omitempty"`
  346. // *Output-only* This repeated list contains zero or more speech recognition
  347. // results that correspond to consecutive portions of the audio currently
  348. // being processed, starting with the portion corresponding to the earliest
  349. // audio (and most stable portion) to the portion corresponding to the most
  350. // recent audio. The strings can be concatenated to view the full
  351. // in-progress response. When the speech recognition completes, this list
  352. // will contain one item with `stability` of `1.0`.
  353. SpeechResults []*SpeechRecognitionResult `protobuf:"bytes,2,rep,name=speech_results,json=speechResults,proto3" json:"speech_results,omitempty"`
  354. // *Output-only* Contains output related to the user's query.
  355. DialogStateOut *DialogStateOut `protobuf:"bytes,5,opt,name=dialog_state_out,json=dialogStateOut,proto3" json:"dialog_state_out,omitempty"`
  356. // *Output-only* Debugging info for developer. Only returned if request set
  357. // `return_debug_info` to true.
  358. DebugInfo *DebugInfo `protobuf:"bytes,8,opt,name=debug_info,json=debugInfo,proto3" json:"debug_info,omitempty"`
  359. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  360. XXX_unrecognized []byte `json:"-"`
  361. XXX_sizecache int32 `json:"-"`
  362. }
  363. func (m *AssistResponse) Reset() { *m = AssistResponse{} }
  364. func (m *AssistResponse) String() string { return proto.CompactTextString(m) }
  365. func (*AssistResponse) ProtoMessage() {}
  366. func (*AssistResponse) Descriptor() ([]byte, []int) {
  367. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{1}
  368. }
  369. func (m *AssistResponse) XXX_Unmarshal(b []byte) error {
  370. return xxx_messageInfo_AssistResponse.Unmarshal(m, b)
  371. }
  372. func (m *AssistResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  373. return xxx_messageInfo_AssistResponse.Marshal(b, m, deterministic)
  374. }
  375. func (dst *AssistResponse) XXX_Merge(src proto.Message) {
  376. xxx_messageInfo_AssistResponse.Merge(dst, src)
  377. }
  378. func (m *AssistResponse) XXX_Size() int {
  379. return xxx_messageInfo_AssistResponse.Size(m)
  380. }
  381. func (m *AssistResponse) XXX_DiscardUnknown() {
  382. xxx_messageInfo_AssistResponse.DiscardUnknown(m)
  383. }
  384. var xxx_messageInfo_AssistResponse proto.InternalMessageInfo
  385. func (m *AssistResponse) GetEventType() AssistResponse_EventType {
  386. if m != nil {
  387. return m.EventType
  388. }
  389. return AssistResponse_EVENT_TYPE_UNSPECIFIED
  390. }
  391. func (m *AssistResponse) GetAudioOut() *AudioOut {
  392. if m != nil {
  393. return m.AudioOut
  394. }
  395. return nil
  396. }
  397. func (m *AssistResponse) GetScreenOut() *ScreenOut {
  398. if m != nil {
  399. return m.ScreenOut
  400. }
  401. return nil
  402. }
  403. func (m *AssistResponse) GetDeviceAction() *DeviceAction {
  404. if m != nil {
  405. return m.DeviceAction
  406. }
  407. return nil
  408. }
  409. func (m *AssistResponse) GetSpeechResults() []*SpeechRecognitionResult {
  410. if m != nil {
  411. return m.SpeechResults
  412. }
  413. return nil
  414. }
  415. func (m *AssistResponse) GetDialogStateOut() *DialogStateOut {
  416. if m != nil {
  417. return m.DialogStateOut
  418. }
  419. return nil
  420. }
  421. func (m *AssistResponse) GetDebugInfo() *DebugInfo {
  422. if m != nil {
  423. return m.DebugInfo
  424. }
  425. return nil
  426. }
  427. // Debug info for developer. Only returned if request set `return_debug_info`
  428. // to true.
  429. type DebugInfo struct {
  430. // The original JSON response from an Action-on-Google agent to Google server.
  431. // See
  432. // https://developers.google.com/actions/reference/rest/Shared.Types/AppResponse.
  433. // It will only be populated if the request maker owns the AoG project and the
  434. // AoG project is in preview mode.
  435. AogAgentToAssistantJson string `protobuf:"bytes,1,opt,name=aog_agent_to_assistant_json,json=aogAgentToAssistantJson,proto3" json:"aog_agent_to_assistant_json,omitempty"`
  436. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  437. XXX_unrecognized []byte `json:"-"`
  438. XXX_sizecache int32 `json:"-"`
  439. }
  440. func (m *DebugInfo) Reset() { *m = DebugInfo{} }
  441. func (m *DebugInfo) String() string { return proto.CompactTextString(m) }
  442. func (*DebugInfo) ProtoMessage() {}
  443. func (*DebugInfo) Descriptor() ([]byte, []int) {
  444. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{2}
  445. }
  446. func (m *DebugInfo) XXX_Unmarshal(b []byte) error {
  447. return xxx_messageInfo_DebugInfo.Unmarshal(m, b)
  448. }
  449. func (m *DebugInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  450. return xxx_messageInfo_DebugInfo.Marshal(b, m, deterministic)
  451. }
  452. func (dst *DebugInfo) XXX_Merge(src proto.Message) {
  453. xxx_messageInfo_DebugInfo.Merge(dst, src)
  454. }
  455. func (m *DebugInfo) XXX_Size() int {
  456. return xxx_messageInfo_DebugInfo.Size(m)
  457. }
  458. func (m *DebugInfo) XXX_DiscardUnknown() {
  459. xxx_messageInfo_DebugInfo.DiscardUnknown(m)
  460. }
  461. var xxx_messageInfo_DebugInfo proto.InternalMessageInfo
  462. func (m *DebugInfo) GetAogAgentToAssistantJson() string {
  463. if m != nil {
  464. return m.AogAgentToAssistantJson
  465. }
  466. return ""
  467. }
  468. // Specifies how to process the `AssistRequest` messages.
  469. type AssistConfig struct {
  470. // Types that are valid to be assigned to Type:
  471. // *AssistConfig_AudioInConfig
  472. // *AssistConfig_TextQuery
  473. Type isAssistConfig_Type `protobuf_oneof:"type"`
  474. // *Required* Specifies how to format the audio that will be returned.
  475. AudioOutConfig *AudioOutConfig `protobuf:"bytes,2,opt,name=audio_out_config,json=audioOutConfig,proto3" json:"audio_out_config,omitempty"`
  476. // *Optional* Specifies the desired format to use when server returns a
  477. // visual screen response.
  478. ScreenOutConfig *ScreenOutConfig `protobuf:"bytes,8,opt,name=screen_out_config,json=screenOutConfig,proto3" json:"screen_out_config,omitempty"`
  479. // *Required* Represents the current dialog state.
  480. DialogStateIn *DialogStateIn `protobuf:"bytes,3,opt,name=dialog_state_in,json=dialogStateIn,proto3" json:"dialog_state_in,omitempty"`
  481. // Device configuration that uniquely identifies a specific device.
  482. DeviceConfig *DeviceConfig `protobuf:"bytes,4,opt,name=device_config,json=deviceConfig,proto3" json:"device_config,omitempty"`
  483. // *Optional* Debugging parameters for the whole `Assist` RPC.
  484. DebugConfig *DebugConfig `protobuf:"bytes,5,opt,name=debug_config,json=debugConfig,proto3" json:"debug_config,omitempty"`
  485. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  486. XXX_unrecognized []byte `json:"-"`
  487. XXX_sizecache int32 `json:"-"`
  488. }
  489. func (m *AssistConfig) Reset() { *m = AssistConfig{} }
  490. func (m *AssistConfig) String() string { return proto.CompactTextString(m) }
  491. func (*AssistConfig) ProtoMessage() {}
  492. func (*AssistConfig) Descriptor() ([]byte, []int) {
  493. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{3}
  494. }
  495. func (m *AssistConfig) XXX_Unmarshal(b []byte) error {
  496. return xxx_messageInfo_AssistConfig.Unmarshal(m, b)
  497. }
  498. func (m *AssistConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  499. return xxx_messageInfo_AssistConfig.Marshal(b, m, deterministic)
  500. }
  501. func (dst *AssistConfig) XXX_Merge(src proto.Message) {
  502. xxx_messageInfo_AssistConfig.Merge(dst, src)
  503. }
  504. func (m *AssistConfig) XXX_Size() int {
  505. return xxx_messageInfo_AssistConfig.Size(m)
  506. }
  507. func (m *AssistConfig) XXX_DiscardUnknown() {
  508. xxx_messageInfo_AssistConfig.DiscardUnknown(m)
  509. }
  510. var xxx_messageInfo_AssistConfig proto.InternalMessageInfo
  511. type isAssistConfig_Type interface {
  512. isAssistConfig_Type()
  513. }
  514. type AssistConfig_AudioInConfig struct {
  515. AudioInConfig *AudioInConfig `protobuf:"bytes,1,opt,name=audio_in_config,json=audioInConfig,proto3,oneof"`
  516. }
  517. type AssistConfig_TextQuery struct {
  518. TextQuery string `protobuf:"bytes,6,opt,name=text_query,json=textQuery,proto3,oneof"`
  519. }
  520. func (*AssistConfig_AudioInConfig) isAssistConfig_Type() {}
  521. func (*AssistConfig_TextQuery) isAssistConfig_Type() {}
  522. func (m *AssistConfig) GetType() isAssistConfig_Type {
  523. if m != nil {
  524. return m.Type
  525. }
  526. return nil
  527. }
  528. func (m *AssistConfig) GetAudioInConfig() *AudioInConfig {
  529. if x, ok := m.GetType().(*AssistConfig_AudioInConfig); ok {
  530. return x.AudioInConfig
  531. }
  532. return nil
  533. }
  534. func (m *AssistConfig) GetTextQuery() string {
  535. if x, ok := m.GetType().(*AssistConfig_TextQuery); ok {
  536. return x.TextQuery
  537. }
  538. return ""
  539. }
  540. func (m *AssistConfig) GetAudioOutConfig() *AudioOutConfig {
  541. if m != nil {
  542. return m.AudioOutConfig
  543. }
  544. return nil
  545. }
  546. func (m *AssistConfig) GetScreenOutConfig() *ScreenOutConfig {
  547. if m != nil {
  548. return m.ScreenOutConfig
  549. }
  550. return nil
  551. }
  552. func (m *AssistConfig) GetDialogStateIn() *DialogStateIn {
  553. if m != nil {
  554. return m.DialogStateIn
  555. }
  556. return nil
  557. }
  558. func (m *AssistConfig) GetDeviceConfig() *DeviceConfig {
  559. if m != nil {
  560. return m.DeviceConfig
  561. }
  562. return nil
  563. }
  564. func (m *AssistConfig) GetDebugConfig() *DebugConfig {
  565. if m != nil {
  566. return m.DebugConfig
  567. }
  568. return nil
  569. }
  570. // XXX_OneofFuncs is for the internal use of the proto package.
  571. func (*AssistConfig) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  572. return _AssistConfig_OneofMarshaler, _AssistConfig_OneofUnmarshaler, _AssistConfig_OneofSizer, []interface{}{
  573. (*AssistConfig_AudioInConfig)(nil),
  574. (*AssistConfig_TextQuery)(nil),
  575. }
  576. }
  577. func _AssistConfig_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  578. m := msg.(*AssistConfig)
  579. // type
  580. switch x := m.Type.(type) {
  581. case *AssistConfig_AudioInConfig:
  582. b.EncodeVarint(1<<3 | proto.WireBytes)
  583. if err := b.EncodeMessage(x.AudioInConfig); err != nil {
  584. return err
  585. }
  586. case *AssistConfig_TextQuery:
  587. b.EncodeVarint(6<<3 | proto.WireBytes)
  588. b.EncodeStringBytes(x.TextQuery)
  589. case nil:
  590. default:
  591. return fmt.Errorf("AssistConfig.Type has unexpected type %T", x)
  592. }
  593. return nil
  594. }
  595. func _AssistConfig_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  596. m := msg.(*AssistConfig)
  597. switch tag {
  598. case 1: // type.audio_in_config
  599. if wire != proto.WireBytes {
  600. return true, proto.ErrInternalBadWireType
  601. }
  602. msg := new(AudioInConfig)
  603. err := b.DecodeMessage(msg)
  604. m.Type = &AssistConfig_AudioInConfig{msg}
  605. return true, err
  606. case 6: // type.text_query
  607. if wire != proto.WireBytes {
  608. return true, proto.ErrInternalBadWireType
  609. }
  610. x, err := b.DecodeStringBytes()
  611. m.Type = &AssistConfig_TextQuery{x}
  612. return true, err
  613. default:
  614. return false, nil
  615. }
  616. }
  617. func _AssistConfig_OneofSizer(msg proto.Message) (n int) {
  618. m := msg.(*AssistConfig)
  619. // type
  620. switch x := m.Type.(type) {
  621. case *AssistConfig_AudioInConfig:
  622. s := proto.Size(x.AudioInConfig)
  623. n += 1 // tag and wire
  624. n += proto.SizeVarint(uint64(s))
  625. n += s
  626. case *AssistConfig_TextQuery:
  627. n += 1 // tag and wire
  628. n += proto.SizeVarint(uint64(len(x.TextQuery)))
  629. n += len(x.TextQuery)
  630. case nil:
  631. default:
  632. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  633. }
  634. return n
  635. }
  636. // Specifies how to process the `audio_in` data that will be provided in
  637. // subsequent requests. For recommended settings, see the Google Assistant SDK
  638. // [best
  639. // practices](https://developers.google.com/assistant/sdk/guides/service/python/best-practices/audio).
  640. type AudioInConfig struct {
  641. // *Required* Encoding of audio data sent in all `audio_in` messages.
  642. Encoding AudioInConfig_Encoding `protobuf:"varint,1,opt,name=encoding,proto3,enum=google.assistant.embedded.v1alpha2.AudioInConfig_Encoding" json:"encoding,omitempty"`
  643. // *Required* Sample rate (in Hertz) of the audio data sent in all `audio_in`
  644. // messages. Valid values are from 16000-24000, but 16000 is optimal.
  645. // For best results, set the sampling rate of the audio source to 16000 Hz.
  646. // If that's not possible, use the native sample rate of the audio source
  647. // (instead of re-sampling).
  648. SampleRateHertz int32 `protobuf:"varint,2,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`
  649. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  650. XXX_unrecognized []byte `json:"-"`
  651. XXX_sizecache int32 `json:"-"`
  652. }
  653. func (m *AudioInConfig) Reset() { *m = AudioInConfig{} }
  654. func (m *AudioInConfig) String() string { return proto.CompactTextString(m) }
  655. func (*AudioInConfig) ProtoMessage() {}
  656. func (*AudioInConfig) Descriptor() ([]byte, []int) {
  657. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{4}
  658. }
  659. func (m *AudioInConfig) XXX_Unmarshal(b []byte) error {
  660. return xxx_messageInfo_AudioInConfig.Unmarshal(m, b)
  661. }
  662. func (m *AudioInConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  663. return xxx_messageInfo_AudioInConfig.Marshal(b, m, deterministic)
  664. }
  665. func (dst *AudioInConfig) XXX_Merge(src proto.Message) {
  666. xxx_messageInfo_AudioInConfig.Merge(dst, src)
  667. }
  668. func (m *AudioInConfig) XXX_Size() int {
  669. return xxx_messageInfo_AudioInConfig.Size(m)
  670. }
  671. func (m *AudioInConfig) XXX_DiscardUnknown() {
  672. xxx_messageInfo_AudioInConfig.DiscardUnknown(m)
  673. }
  674. var xxx_messageInfo_AudioInConfig proto.InternalMessageInfo
  675. func (m *AudioInConfig) GetEncoding() AudioInConfig_Encoding {
  676. if m != nil {
  677. return m.Encoding
  678. }
  679. return AudioInConfig_ENCODING_UNSPECIFIED
  680. }
  681. func (m *AudioInConfig) GetSampleRateHertz() int32 {
  682. if m != nil {
  683. return m.SampleRateHertz
  684. }
  685. return 0
  686. }
  687. // Specifies the desired format for the server to use when it returns
  688. // `audio_out` messages.
  689. type AudioOutConfig struct {
  690. // *Required* The encoding of audio data to be returned in all `audio_out`
  691. // messages.
  692. Encoding AudioOutConfig_Encoding `protobuf:"varint,1,opt,name=encoding,proto3,enum=google.assistant.embedded.v1alpha2.AudioOutConfig_Encoding" json:"encoding,omitempty"`
  693. // *Required* The sample rate in Hertz of the audio data returned in
  694. // `audio_out` messages. Valid values are: 16000-24000.
  695. SampleRateHertz int32 `protobuf:"varint,2,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`
  696. // *Required* Current volume setting of the device's audio output.
  697. // Valid values are 1 to 100 (corresponding to 1% to 100%).
  698. VolumePercentage int32 `protobuf:"varint,3,opt,name=volume_percentage,json=volumePercentage,proto3" json:"volume_percentage,omitempty"`
  699. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  700. XXX_unrecognized []byte `json:"-"`
  701. XXX_sizecache int32 `json:"-"`
  702. }
  703. func (m *AudioOutConfig) Reset() { *m = AudioOutConfig{} }
  704. func (m *AudioOutConfig) String() string { return proto.CompactTextString(m) }
  705. func (*AudioOutConfig) ProtoMessage() {}
  706. func (*AudioOutConfig) Descriptor() ([]byte, []int) {
  707. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{5}
  708. }
  709. func (m *AudioOutConfig) XXX_Unmarshal(b []byte) error {
  710. return xxx_messageInfo_AudioOutConfig.Unmarshal(m, b)
  711. }
  712. func (m *AudioOutConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  713. return xxx_messageInfo_AudioOutConfig.Marshal(b, m, deterministic)
  714. }
  715. func (dst *AudioOutConfig) XXX_Merge(src proto.Message) {
  716. xxx_messageInfo_AudioOutConfig.Merge(dst, src)
  717. }
  718. func (m *AudioOutConfig) XXX_Size() int {
  719. return xxx_messageInfo_AudioOutConfig.Size(m)
  720. }
  721. func (m *AudioOutConfig) XXX_DiscardUnknown() {
  722. xxx_messageInfo_AudioOutConfig.DiscardUnknown(m)
  723. }
  724. var xxx_messageInfo_AudioOutConfig proto.InternalMessageInfo
  725. func (m *AudioOutConfig) GetEncoding() AudioOutConfig_Encoding {
  726. if m != nil {
  727. return m.Encoding
  728. }
  729. return AudioOutConfig_ENCODING_UNSPECIFIED
  730. }
  731. func (m *AudioOutConfig) GetSampleRateHertz() int32 {
  732. if m != nil {
  733. return m.SampleRateHertz
  734. }
  735. return 0
  736. }
  737. func (m *AudioOutConfig) GetVolumePercentage() int32 {
  738. if m != nil {
  739. return m.VolumePercentage
  740. }
  741. return 0
  742. }
  743. // Specifies the desired format for the server to use when it returns
  744. // `screen_out` response.
  745. type ScreenOutConfig struct {
  746. // Current visual screen-mode for the device while issuing the query.
  747. ScreenMode ScreenOutConfig_ScreenMode `protobuf:"varint,1,opt,name=screen_mode,json=screenMode,proto3,enum=google.assistant.embedded.v1alpha2.ScreenOutConfig_ScreenMode" json:"screen_mode,omitempty"`
  748. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  749. XXX_unrecognized []byte `json:"-"`
  750. XXX_sizecache int32 `json:"-"`
  751. }
  752. func (m *ScreenOutConfig) Reset() { *m = ScreenOutConfig{} }
  753. func (m *ScreenOutConfig) String() string { return proto.CompactTextString(m) }
  754. func (*ScreenOutConfig) ProtoMessage() {}
  755. func (*ScreenOutConfig) Descriptor() ([]byte, []int) {
  756. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{6}
  757. }
  758. func (m *ScreenOutConfig) XXX_Unmarshal(b []byte) error {
  759. return xxx_messageInfo_ScreenOutConfig.Unmarshal(m, b)
  760. }
  761. func (m *ScreenOutConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  762. return xxx_messageInfo_ScreenOutConfig.Marshal(b, m, deterministic)
  763. }
  764. func (dst *ScreenOutConfig) XXX_Merge(src proto.Message) {
  765. xxx_messageInfo_ScreenOutConfig.Merge(dst, src)
  766. }
  767. func (m *ScreenOutConfig) XXX_Size() int {
  768. return xxx_messageInfo_ScreenOutConfig.Size(m)
  769. }
  770. func (m *ScreenOutConfig) XXX_DiscardUnknown() {
  771. xxx_messageInfo_ScreenOutConfig.DiscardUnknown(m)
  772. }
  773. var xxx_messageInfo_ScreenOutConfig proto.InternalMessageInfo
  774. func (m *ScreenOutConfig) GetScreenMode() ScreenOutConfig_ScreenMode {
  775. if m != nil {
  776. return m.ScreenMode
  777. }
  778. return ScreenOutConfig_SCREEN_MODE_UNSPECIFIED
  779. }
  780. // Provides information about the current dialog state.
  781. type DialogStateIn struct {
  782. // *Required* This field must always be set to the
  783. // [DialogStateOut.conversation_state][google.assistant.embedded.v1alpha2.DialogStateOut.conversation_state]
  784. // value that was returned in the prior `Assist` RPC. It should only be
  785. // omitted (field not set) if there was no prior `Assist` RPC because this is
  786. // the first `Assist` RPC made by this device after it was first setup and/or
  787. // a factory-default reset.
  788. ConversationState []byte `protobuf:"bytes,1,opt,name=conversation_state,json=conversationState,proto3" json:"conversation_state,omitempty"`
  789. // *Required* Language of the request in
  790. // [IETF BCP 47 syntax](https://tools.ietf.org/html/bcp47) (for example,
  791. // "en-US"). See [Language
  792. // Support](https://developers.google.com/assistant/sdk/reference/rpc/languages)
  793. // for more information. If you have selected a language for this `device_id`
  794. // using the
  795. // [Settings](https://developers.google.com/assistant/sdk/reference/assistant-app/assistant-settings)
  796. // menu in your phone's Google Assistant app, that selection will override
  797. // this value.
  798. LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
  799. // *Optional* Location of the device where the query originated.
  800. DeviceLocation *DeviceLocation `protobuf:"bytes,5,opt,name=device_location,json=deviceLocation,proto3" json:"device_location,omitempty"`
  801. // *Optional* If true, the server will treat the request as a new conversation
  802. // and not use state from the prior request. Set this field to true when the
  803. // conversation should be restarted, such as after a device reboot, or after a
  804. // significant lapse of time since the prior query.
  805. IsNewConversation bool `protobuf:"varint,7,opt,name=is_new_conversation,json=isNewConversation,proto3" json:"is_new_conversation,omitempty"`
  806. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  807. XXX_unrecognized []byte `json:"-"`
  808. XXX_sizecache int32 `json:"-"`
  809. }
  810. func (m *DialogStateIn) Reset() { *m = DialogStateIn{} }
  811. func (m *DialogStateIn) String() string { return proto.CompactTextString(m) }
  812. func (*DialogStateIn) ProtoMessage() {}
  813. func (*DialogStateIn) Descriptor() ([]byte, []int) {
  814. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{7}
  815. }
  816. func (m *DialogStateIn) XXX_Unmarshal(b []byte) error {
  817. return xxx_messageInfo_DialogStateIn.Unmarshal(m, b)
  818. }
  819. func (m *DialogStateIn) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  820. return xxx_messageInfo_DialogStateIn.Marshal(b, m, deterministic)
  821. }
  822. func (dst *DialogStateIn) XXX_Merge(src proto.Message) {
  823. xxx_messageInfo_DialogStateIn.Merge(dst, src)
  824. }
  825. func (m *DialogStateIn) XXX_Size() int {
  826. return xxx_messageInfo_DialogStateIn.Size(m)
  827. }
  828. func (m *DialogStateIn) XXX_DiscardUnknown() {
  829. xxx_messageInfo_DialogStateIn.DiscardUnknown(m)
  830. }
  831. var xxx_messageInfo_DialogStateIn proto.InternalMessageInfo
  832. func (m *DialogStateIn) GetConversationState() []byte {
  833. if m != nil {
  834. return m.ConversationState
  835. }
  836. return nil
  837. }
  838. func (m *DialogStateIn) GetLanguageCode() string {
  839. if m != nil {
  840. return m.LanguageCode
  841. }
  842. return ""
  843. }
  844. func (m *DialogStateIn) GetDeviceLocation() *DeviceLocation {
  845. if m != nil {
  846. return m.DeviceLocation
  847. }
  848. return nil
  849. }
  850. func (m *DialogStateIn) GetIsNewConversation() bool {
  851. if m != nil {
  852. return m.IsNewConversation
  853. }
  854. return false
  855. }
  856. // *Required* Fields that identify the device to the Assistant.
  857. //
  858. // See also:
  859. //
  860. // * [Register a Device - REST
  861. // API](https://developers.google.com/assistant/sdk/reference/device-registration/register-device-manual)
  862. // * [Device Model and Instance
  863. // Schemas](https://developers.google.com/assistant/sdk/reference/device-registration/model-and-instance-schemas)
  864. // * [Device
  865. // Proto](https://developers.google.com/assistant/sdk/reference/rpc/google.assistant.devices.v1alpha2#device)
  866. type DeviceConfig struct {
  867. // *Required* Unique identifier for the device. The id length must be 128
  868. // characters or less. Example: DBCDW098234. This MUST match the device_id
  869. // returned from device registration. This device_id is used to match against
  870. // the user's registered devices to lookup the supported traits and
  871. // capabilities of this device. This information should not change across
  872. // device reboots. However, it should not be saved across
  873. // factory-default resets.
  874. DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
  875. // *Required* Unique identifier for the device model. The combination of
  876. // device_model_id and device_id must have been previously associated through
  877. // device registration.
  878. DeviceModelId string `protobuf:"bytes,3,opt,name=device_model_id,json=deviceModelId,proto3" json:"device_model_id,omitempty"`
  879. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  880. XXX_unrecognized []byte `json:"-"`
  881. XXX_sizecache int32 `json:"-"`
  882. }
  883. func (m *DeviceConfig) Reset() { *m = DeviceConfig{} }
  884. func (m *DeviceConfig) String() string { return proto.CompactTextString(m) }
  885. func (*DeviceConfig) ProtoMessage() {}
  886. func (*DeviceConfig) Descriptor() ([]byte, []int) {
  887. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{8}
  888. }
  889. func (m *DeviceConfig) XXX_Unmarshal(b []byte) error {
  890. return xxx_messageInfo_DeviceConfig.Unmarshal(m, b)
  891. }
  892. func (m *DeviceConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  893. return xxx_messageInfo_DeviceConfig.Marshal(b, m, deterministic)
  894. }
  895. func (dst *DeviceConfig) XXX_Merge(src proto.Message) {
  896. xxx_messageInfo_DeviceConfig.Merge(dst, src)
  897. }
  898. func (m *DeviceConfig) XXX_Size() int {
  899. return xxx_messageInfo_DeviceConfig.Size(m)
  900. }
  901. func (m *DeviceConfig) XXX_DiscardUnknown() {
  902. xxx_messageInfo_DeviceConfig.DiscardUnknown(m)
  903. }
  904. var xxx_messageInfo_DeviceConfig proto.InternalMessageInfo
  905. func (m *DeviceConfig) GetDeviceId() string {
  906. if m != nil {
  907. return m.DeviceId
  908. }
  909. return ""
  910. }
  911. func (m *DeviceConfig) GetDeviceModelId() string {
  912. if m != nil {
  913. return m.DeviceModelId
  914. }
  915. return ""
  916. }
  917. // The audio containing the Assistant's response to the query. Sequential chunks
  918. // of audio data are received in sequential `AssistResponse` messages.
  919. type AudioOut struct {
  920. // *Output-only* The audio data containing the Assistant's response to the
  921. // query. Sequential chunks of audio data are received in sequential
  922. // `AssistResponse` messages.
  923. AudioData []byte `protobuf:"bytes,1,opt,name=audio_data,json=audioData,proto3" json:"audio_data,omitempty"`
  924. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  925. XXX_unrecognized []byte `json:"-"`
  926. XXX_sizecache int32 `json:"-"`
  927. }
  928. func (m *AudioOut) Reset() { *m = AudioOut{} }
  929. func (m *AudioOut) String() string { return proto.CompactTextString(m) }
  930. func (*AudioOut) ProtoMessage() {}
  931. func (*AudioOut) Descriptor() ([]byte, []int) {
  932. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{9}
  933. }
  934. func (m *AudioOut) XXX_Unmarshal(b []byte) error {
  935. return xxx_messageInfo_AudioOut.Unmarshal(m, b)
  936. }
  937. func (m *AudioOut) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  938. return xxx_messageInfo_AudioOut.Marshal(b, m, deterministic)
  939. }
  940. func (dst *AudioOut) XXX_Merge(src proto.Message) {
  941. xxx_messageInfo_AudioOut.Merge(dst, src)
  942. }
  943. func (m *AudioOut) XXX_Size() int {
  944. return xxx_messageInfo_AudioOut.Size(m)
  945. }
  946. func (m *AudioOut) XXX_DiscardUnknown() {
  947. xxx_messageInfo_AudioOut.DiscardUnknown(m)
  948. }
  949. var xxx_messageInfo_AudioOut proto.InternalMessageInfo
  950. func (m *AudioOut) GetAudioData() []byte {
  951. if m != nil {
  952. return m.AudioData
  953. }
  954. return nil
  955. }
  956. // The Assistant's visual output response to query. Enabled by
  957. // `screen_out_config`.
  958. type ScreenOut struct {
  959. // *Output-only* The format of the provided screen data.
  960. Format ScreenOut_Format `protobuf:"varint,1,opt,name=format,proto3,enum=google.assistant.embedded.v1alpha2.ScreenOut_Format" json:"format,omitempty"`
  961. // *Output-only* The raw screen data to be displayed as the result of the
  962. // Assistant query.
  963. Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
  964. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  965. XXX_unrecognized []byte `json:"-"`
  966. XXX_sizecache int32 `json:"-"`
  967. }
  968. func (m *ScreenOut) Reset() { *m = ScreenOut{} }
  969. func (m *ScreenOut) String() string { return proto.CompactTextString(m) }
  970. func (*ScreenOut) ProtoMessage() {}
  971. func (*ScreenOut) Descriptor() ([]byte, []int) {
  972. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{10}
  973. }
  974. func (m *ScreenOut) XXX_Unmarshal(b []byte) error {
  975. return xxx_messageInfo_ScreenOut.Unmarshal(m, b)
  976. }
  977. func (m *ScreenOut) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  978. return xxx_messageInfo_ScreenOut.Marshal(b, m, deterministic)
  979. }
  980. func (dst *ScreenOut) XXX_Merge(src proto.Message) {
  981. xxx_messageInfo_ScreenOut.Merge(dst, src)
  982. }
  983. func (m *ScreenOut) XXX_Size() int {
  984. return xxx_messageInfo_ScreenOut.Size(m)
  985. }
  986. func (m *ScreenOut) XXX_DiscardUnknown() {
  987. xxx_messageInfo_ScreenOut.DiscardUnknown(m)
  988. }
  989. var xxx_messageInfo_ScreenOut proto.InternalMessageInfo
  990. func (m *ScreenOut) GetFormat() ScreenOut_Format {
  991. if m != nil {
  992. return m.Format
  993. }
  994. return ScreenOut_FORMAT_UNSPECIFIED
  995. }
  996. func (m *ScreenOut) GetData() []byte {
  997. if m != nil {
  998. return m.Data
  999. }
  1000. return nil
  1001. }
  1002. // The response returned to the device if the user has triggered a Device
  1003. // Action. For example, a device which supports the query *Turn on the light*
  1004. // would receive a `DeviceAction` with a JSON payload containing the semantics
  1005. // of the request.
  1006. type DeviceAction struct {
  1007. // JSON containing the device command response generated from the triggered
  1008. // Device Action grammar. The format is given by the
  1009. // `action.devices.EXECUTE` intent for a given
  1010. // [trait](https://developers.google.com/assistant/sdk/reference/traits/).
  1011. DeviceRequestJson string `protobuf:"bytes,1,opt,name=device_request_json,json=deviceRequestJson,proto3" json:"device_request_json,omitempty"`
  1012. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1013. XXX_unrecognized []byte `json:"-"`
  1014. XXX_sizecache int32 `json:"-"`
  1015. }
  1016. func (m *DeviceAction) Reset() { *m = DeviceAction{} }
  1017. func (m *DeviceAction) String() string { return proto.CompactTextString(m) }
  1018. func (*DeviceAction) ProtoMessage() {}
  1019. func (*DeviceAction) Descriptor() ([]byte, []int) {
  1020. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{11}
  1021. }
  1022. func (m *DeviceAction) XXX_Unmarshal(b []byte) error {
  1023. return xxx_messageInfo_DeviceAction.Unmarshal(m, b)
  1024. }
  1025. func (m *DeviceAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1026. return xxx_messageInfo_DeviceAction.Marshal(b, m, deterministic)
  1027. }
  1028. func (dst *DeviceAction) XXX_Merge(src proto.Message) {
  1029. xxx_messageInfo_DeviceAction.Merge(dst, src)
  1030. }
  1031. func (m *DeviceAction) XXX_Size() int {
  1032. return xxx_messageInfo_DeviceAction.Size(m)
  1033. }
  1034. func (m *DeviceAction) XXX_DiscardUnknown() {
  1035. xxx_messageInfo_DeviceAction.DiscardUnknown(m)
  1036. }
  1037. var xxx_messageInfo_DeviceAction proto.InternalMessageInfo
  1038. func (m *DeviceAction) GetDeviceRequestJson() string {
  1039. if m != nil {
  1040. return m.DeviceRequestJson
  1041. }
  1042. return ""
  1043. }
  1044. // The estimated transcription of a phrase the user has spoken. This could be
  1045. // a single segment or the full guess of the user's spoken query.
  1046. type SpeechRecognitionResult struct {
  1047. // *Output-only* Transcript text representing the words that the user spoke.
  1048. Transcript string `protobuf:"bytes,1,opt,name=transcript,proto3" json:"transcript,omitempty"`
  1049. // *Output-only* An estimate of the likelihood that the Assistant will not
  1050. // change its guess about this result. Values range from 0.0 (completely
  1051. // unstable) to 1.0 (completely stable and final). The default of 0.0 is a
  1052. // sentinel value indicating `stability` was not set.
  1053. Stability float32 `protobuf:"fixed32,2,opt,name=stability,proto3" json:"stability,omitempty"`
  1054. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1055. XXX_unrecognized []byte `json:"-"`
  1056. XXX_sizecache int32 `json:"-"`
  1057. }
  1058. func (m *SpeechRecognitionResult) Reset() { *m = SpeechRecognitionResult{} }
  1059. func (m *SpeechRecognitionResult) String() string { return proto.CompactTextString(m) }
  1060. func (*SpeechRecognitionResult) ProtoMessage() {}
  1061. func (*SpeechRecognitionResult) Descriptor() ([]byte, []int) {
  1062. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{12}
  1063. }
  1064. func (m *SpeechRecognitionResult) XXX_Unmarshal(b []byte) error {
  1065. return xxx_messageInfo_SpeechRecognitionResult.Unmarshal(m, b)
  1066. }
  1067. func (m *SpeechRecognitionResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1068. return xxx_messageInfo_SpeechRecognitionResult.Marshal(b, m, deterministic)
  1069. }
  1070. func (dst *SpeechRecognitionResult) XXX_Merge(src proto.Message) {
  1071. xxx_messageInfo_SpeechRecognitionResult.Merge(dst, src)
  1072. }
  1073. func (m *SpeechRecognitionResult) XXX_Size() int {
  1074. return xxx_messageInfo_SpeechRecognitionResult.Size(m)
  1075. }
  1076. func (m *SpeechRecognitionResult) XXX_DiscardUnknown() {
  1077. xxx_messageInfo_SpeechRecognitionResult.DiscardUnknown(m)
  1078. }
  1079. var xxx_messageInfo_SpeechRecognitionResult proto.InternalMessageInfo
  1080. func (m *SpeechRecognitionResult) GetTranscript() string {
  1081. if m != nil {
  1082. return m.Transcript
  1083. }
  1084. return ""
  1085. }
  1086. func (m *SpeechRecognitionResult) GetStability() float32 {
  1087. if m != nil {
  1088. return m.Stability
  1089. }
  1090. return 0
  1091. }
  1092. // The dialog state resulting from the user's query. Multiple of these messages
  1093. // may be received.
  1094. type DialogStateOut struct {
  1095. // *Output-only* Supplemental display text from the Assistant. This could be
  1096. // the same as the speech spoken in `AssistResponse.audio_out` or it could
  1097. // be some additional information which aids the user's understanding.
  1098. SupplementalDisplayText string `protobuf:"bytes,1,opt,name=supplemental_display_text,json=supplementalDisplayText,proto3" json:"supplemental_display_text,omitempty"`
  1099. // *Output-only* State information for the subsequent `Assist` RPC. This
  1100. // value should be saved in the client and returned in the
  1101. // [`DialogStateIn.conversation_state`](#dialogstatein) field with the next
  1102. // `Assist` RPC. (The client does not need to interpret or otherwise use this
  1103. // value.) This information should be saved across device reboots. However,
  1104. // this value should be cleared (not saved in the client) during a
  1105. // factory-default reset.
  1106. ConversationState []byte `protobuf:"bytes,2,opt,name=conversation_state,json=conversationState,proto3" json:"conversation_state,omitempty"`
  1107. // *Output-only* Specifies the mode of the microphone after this `Assist`
  1108. // RPC is processed.
  1109. MicrophoneMode DialogStateOut_MicrophoneMode `protobuf:"varint,3,opt,name=microphone_mode,json=microphoneMode,proto3,enum=google.assistant.embedded.v1alpha2.DialogStateOut_MicrophoneMode" json:"microphone_mode,omitempty"`
  1110. // *Output-only* Updated volume level. The value will be 0 or omitted
  1111. // (indicating no change) unless a voice command such as *Increase the volume*
  1112. // or *Set volume level 4* was recognized, in which case the value will be
  1113. // between 1 and 100 (corresponding to the new volume level of 1% to 100%).
  1114. // Typically, a client should use this volume level when playing the
  1115. // `audio_out` data, and retain this value as the current volume level and
  1116. // supply it in the `AudioOutConfig` of the next `AssistRequest`. (Some
  1117. // clients may also implement other ways to allow the current volume level to
  1118. // be changed, for example, by providing a knob that the user can turn.)
  1119. VolumePercentage int32 `protobuf:"varint,4,opt,name=volume_percentage,json=volumePercentage,proto3" json:"volume_percentage,omitempty"`
  1120. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1121. XXX_unrecognized []byte `json:"-"`
  1122. XXX_sizecache int32 `json:"-"`
  1123. }
  1124. func (m *DialogStateOut) Reset() { *m = DialogStateOut{} }
  1125. func (m *DialogStateOut) String() string { return proto.CompactTextString(m) }
  1126. func (*DialogStateOut) ProtoMessage() {}
  1127. func (*DialogStateOut) Descriptor() ([]byte, []int) {
  1128. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{13}
  1129. }
  1130. func (m *DialogStateOut) XXX_Unmarshal(b []byte) error {
  1131. return xxx_messageInfo_DialogStateOut.Unmarshal(m, b)
  1132. }
  1133. func (m *DialogStateOut) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1134. return xxx_messageInfo_DialogStateOut.Marshal(b, m, deterministic)
  1135. }
  1136. func (dst *DialogStateOut) XXX_Merge(src proto.Message) {
  1137. xxx_messageInfo_DialogStateOut.Merge(dst, src)
  1138. }
  1139. func (m *DialogStateOut) XXX_Size() int {
  1140. return xxx_messageInfo_DialogStateOut.Size(m)
  1141. }
  1142. func (m *DialogStateOut) XXX_DiscardUnknown() {
  1143. xxx_messageInfo_DialogStateOut.DiscardUnknown(m)
  1144. }
  1145. var xxx_messageInfo_DialogStateOut proto.InternalMessageInfo
  1146. func (m *DialogStateOut) GetSupplementalDisplayText() string {
  1147. if m != nil {
  1148. return m.SupplementalDisplayText
  1149. }
  1150. return ""
  1151. }
  1152. func (m *DialogStateOut) GetConversationState() []byte {
  1153. if m != nil {
  1154. return m.ConversationState
  1155. }
  1156. return nil
  1157. }
  1158. func (m *DialogStateOut) GetMicrophoneMode() DialogStateOut_MicrophoneMode {
  1159. if m != nil {
  1160. return m.MicrophoneMode
  1161. }
  1162. return DialogStateOut_MICROPHONE_MODE_UNSPECIFIED
  1163. }
  1164. func (m *DialogStateOut) GetVolumePercentage() int32 {
  1165. if m != nil {
  1166. return m.VolumePercentage
  1167. }
  1168. return 0
  1169. }
  1170. // Debugging parameters for the current request.
  1171. type DebugConfig struct {
  1172. // When this field is set to true, the `debug_info` field in `AssistResponse`
  1173. // may be populated. However it will significantly increase latency of
  1174. // responses. Do not set this field true in production code.
  1175. ReturnDebugInfo bool `protobuf:"varint,6,opt,name=return_debug_info,json=returnDebugInfo,proto3" json:"return_debug_info,omitempty"`
  1176. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1177. XXX_unrecognized []byte `json:"-"`
  1178. XXX_sizecache int32 `json:"-"`
  1179. }
  1180. func (m *DebugConfig) Reset() { *m = DebugConfig{} }
  1181. func (m *DebugConfig) String() string { return proto.CompactTextString(m) }
  1182. func (*DebugConfig) ProtoMessage() {}
  1183. func (*DebugConfig) Descriptor() ([]byte, []int) {
  1184. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{14}
  1185. }
  1186. func (m *DebugConfig) XXX_Unmarshal(b []byte) error {
  1187. return xxx_messageInfo_DebugConfig.Unmarshal(m, b)
  1188. }
  1189. func (m *DebugConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1190. return xxx_messageInfo_DebugConfig.Marshal(b, m, deterministic)
  1191. }
  1192. func (dst *DebugConfig) XXX_Merge(src proto.Message) {
  1193. xxx_messageInfo_DebugConfig.Merge(dst, src)
  1194. }
  1195. func (m *DebugConfig) XXX_Size() int {
  1196. return xxx_messageInfo_DebugConfig.Size(m)
  1197. }
  1198. func (m *DebugConfig) XXX_DiscardUnknown() {
  1199. xxx_messageInfo_DebugConfig.DiscardUnknown(m)
  1200. }
  1201. var xxx_messageInfo_DebugConfig proto.InternalMessageInfo
  1202. func (m *DebugConfig) GetReturnDebugInfo() bool {
  1203. if m != nil {
  1204. return m.ReturnDebugInfo
  1205. }
  1206. return false
  1207. }
  1208. // There are three sources of locations. They are used with this precedence:
  1209. //
  1210. // 1. This `DeviceLocation`, which is primarily used for mobile devices with
  1211. // GPS .
  1212. // 2. Location specified by the user during device setup; this is per-user, per
  1213. // device. This location is used if `DeviceLocation` is not specified.
  1214. // 3. Inferred location based on IP address. This is used only if neither of the
  1215. // above are specified.
  1216. type DeviceLocation struct {
  1217. // Types that are valid to be assigned to Type:
  1218. // *DeviceLocation_Coordinates
  1219. Type isDeviceLocation_Type `protobuf_oneof:"type"`
  1220. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1221. XXX_unrecognized []byte `json:"-"`
  1222. XXX_sizecache int32 `json:"-"`
  1223. }
  1224. func (m *DeviceLocation) Reset() { *m = DeviceLocation{} }
  1225. func (m *DeviceLocation) String() string { return proto.CompactTextString(m) }
  1226. func (*DeviceLocation) ProtoMessage() {}
  1227. func (*DeviceLocation) Descriptor() ([]byte, []int) {
  1228. return fileDescriptor_embedded_assistant_31f36a6aca89d40d, []int{15}
  1229. }
  1230. func (m *DeviceLocation) XXX_Unmarshal(b []byte) error {
  1231. return xxx_messageInfo_DeviceLocation.Unmarshal(m, b)
  1232. }
  1233. func (m *DeviceLocation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1234. return xxx_messageInfo_DeviceLocation.Marshal(b, m, deterministic)
  1235. }
  1236. func (dst *DeviceLocation) XXX_Merge(src proto.Message) {
  1237. xxx_messageInfo_DeviceLocation.Merge(dst, src)
  1238. }
  1239. func (m *DeviceLocation) XXX_Size() int {
  1240. return xxx_messageInfo_DeviceLocation.Size(m)
  1241. }
  1242. func (m *DeviceLocation) XXX_DiscardUnknown() {
  1243. xxx_messageInfo_DeviceLocation.DiscardUnknown(m)
  1244. }
  1245. var xxx_messageInfo_DeviceLocation proto.InternalMessageInfo
  1246. type isDeviceLocation_Type interface {
  1247. isDeviceLocation_Type()
  1248. }
  1249. type DeviceLocation_Coordinates struct {
  1250. Coordinates *latlng.LatLng `protobuf:"bytes,1,opt,name=coordinates,proto3,oneof"`
  1251. }
  1252. func (*DeviceLocation_Coordinates) isDeviceLocation_Type() {}
  1253. func (m *DeviceLocation) GetType() isDeviceLocation_Type {
  1254. if m != nil {
  1255. return m.Type
  1256. }
  1257. return nil
  1258. }
  1259. func (m *DeviceLocation) GetCoordinates() *latlng.LatLng {
  1260. if x, ok := m.GetType().(*DeviceLocation_Coordinates); ok {
  1261. return x.Coordinates
  1262. }
  1263. return nil
  1264. }
  1265. // XXX_OneofFuncs is for the internal use of the proto package.
  1266. func (*DeviceLocation) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  1267. return _DeviceLocation_OneofMarshaler, _DeviceLocation_OneofUnmarshaler, _DeviceLocation_OneofSizer, []interface{}{
  1268. (*DeviceLocation_Coordinates)(nil),
  1269. }
  1270. }
  1271. func _DeviceLocation_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  1272. m := msg.(*DeviceLocation)
  1273. // type
  1274. switch x := m.Type.(type) {
  1275. case *DeviceLocation_Coordinates:
  1276. b.EncodeVarint(1<<3 | proto.WireBytes)
  1277. if err := b.EncodeMessage(x.Coordinates); err != nil {
  1278. return err
  1279. }
  1280. case nil:
  1281. default:
  1282. return fmt.Errorf("DeviceLocation.Type has unexpected type %T", x)
  1283. }
  1284. return nil
  1285. }
  1286. func _DeviceLocation_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  1287. m := msg.(*DeviceLocation)
  1288. switch tag {
  1289. case 1: // type.coordinates
  1290. if wire != proto.WireBytes {
  1291. return true, proto.ErrInternalBadWireType
  1292. }
  1293. msg := new(latlng.LatLng)
  1294. err := b.DecodeMessage(msg)
  1295. m.Type = &DeviceLocation_Coordinates{msg}
  1296. return true, err
  1297. default:
  1298. return false, nil
  1299. }
  1300. }
  1301. func _DeviceLocation_OneofSizer(msg proto.Message) (n int) {
  1302. m := msg.(*DeviceLocation)
  1303. // type
  1304. switch x := m.Type.(type) {
  1305. case *DeviceLocation_Coordinates:
  1306. s := proto.Size(x.Coordinates)
  1307. n += 1 // tag and wire
  1308. n += proto.SizeVarint(uint64(s))
  1309. n += s
  1310. case nil:
  1311. default:
  1312. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  1313. }
  1314. return n
  1315. }
  1316. func init() {
  1317. proto.RegisterType((*AssistRequest)(nil), "google.assistant.embedded.v1alpha2.AssistRequest")
  1318. proto.RegisterType((*AssistResponse)(nil), "google.assistant.embedded.v1alpha2.AssistResponse")
  1319. proto.RegisterType((*DebugInfo)(nil), "google.assistant.embedded.v1alpha2.DebugInfo")
  1320. proto.RegisterType((*AssistConfig)(nil), "google.assistant.embedded.v1alpha2.AssistConfig")
  1321. proto.RegisterType((*AudioInConfig)(nil), "google.assistant.embedded.v1alpha2.AudioInConfig")
  1322. proto.RegisterType((*AudioOutConfig)(nil), "google.assistant.embedded.v1alpha2.AudioOutConfig")
  1323. proto.RegisterType((*ScreenOutConfig)(nil), "google.assistant.embedded.v1alpha2.ScreenOutConfig")
  1324. proto.RegisterType((*DialogStateIn)(nil), "google.assistant.embedded.v1alpha2.DialogStateIn")
  1325. proto.RegisterType((*DeviceConfig)(nil), "google.assistant.embedded.v1alpha2.DeviceConfig")
  1326. proto.RegisterType((*AudioOut)(nil), "google.assistant.embedded.v1alpha2.AudioOut")
  1327. proto.RegisterType((*ScreenOut)(nil), "google.assistant.embedded.v1alpha2.ScreenOut")
  1328. proto.RegisterType((*DeviceAction)(nil), "google.assistant.embedded.v1alpha2.DeviceAction")
  1329. proto.RegisterType((*SpeechRecognitionResult)(nil), "google.assistant.embedded.v1alpha2.SpeechRecognitionResult")
  1330. proto.RegisterType((*DialogStateOut)(nil), "google.assistant.embedded.v1alpha2.DialogStateOut")
  1331. proto.RegisterType((*DebugConfig)(nil), "google.assistant.embedded.v1alpha2.DebugConfig")
  1332. proto.RegisterType((*DeviceLocation)(nil), "google.assistant.embedded.v1alpha2.DeviceLocation")
  1333. proto.RegisterEnum("google.assistant.embedded.v1alpha2.AssistResponse_EventType", AssistResponse_EventType_name, AssistResponse_EventType_value)
  1334. proto.RegisterEnum("google.assistant.embedded.v1alpha2.AudioInConfig_Encoding", AudioInConfig_Encoding_name, AudioInConfig_Encoding_value)
  1335. proto.RegisterEnum("google.assistant.embedded.v1alpha2.AudioOutConfig_Encoding", AudioOutConfig_Encoding_name, AudioOutConfig_Encoding_value)
  1336. proto.RegisterEnum("google.assistant.embedded.v1alpha2.ScreenOutConfig_ScreenMode", ScreenOutConfig_ScreenMode_name, ScreenOutConfig_ScreenMode_value)
  1337. proto.RegisterEnum("google.assistant.embedded.v1alpha2.ScreenOut_Format", ScreenOut_Format_name, ScreenOut_Format_value)
  1338. proto.RegisterEnum("google.assistant.embedded.v1alpha2.DialogStateOut_MicrophoneMode", DialogStateOut_MicrophoneMode_name, DialogStateOut_MicrophoneMode_value)
  1339. }
  1340. // Reference imports to suppress errors if they are not otherwise used.
  1341. var _ context.Context
  1342. var _ grpc.ClientConn
  1343. // This is a compile-time assertion to ensure that this generated file
  1344. // is compatible with the grpc package it is being compiled against.
  1345. const _ = grpc.SupportPackageIsVersion4
  1346. // EmbeddedAssistantClient is the client API for EmbeddedAssistant service.
  1347. //
  1348. // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  1349. type EmbeddedAssistantClient interface {
  1350. // Initiates or continues a conversation with the embedded Assistant Service.
  1351. // Each call performs one round-trip, sending an audio request to the service
  1352. // and receiving the audio response. Uses bidirectional streaming to receive
  1353. // results, such as the `END_OF_UTTERANCE` event, while sending audio.
  1354. //
  1355. // A conversation is one or more gRPC connections, each consisting of several
  1356. // streamed requests and responses.
  1357. // For example, the user says *Add to my shopping list* and the Assistant
  1358. // responds *What do you want to add?*. The sequence of streamed requests and
  1359. // responses in the first gRPC message could be:
  1360. //
  1361. // * AssistRequest.config
  1362. // * AssistRequest.audio_in
  1363. // * AssistRequest.audio_in
  1364. // * AssistRequest.audio_in
  1365. // * AssistRequest.audio_in
  1366. // * AssistResponse.event_type.END_OF_UTTERANCE
  1367. // * AssistResponse.speech_results.transcript "add to my shopping list"
  1368. // * AssistResponse.dialog_state_out.microphone_mode.DIALOG_FOLLOW_ON
  1369. // * AssistResponse.audio_out
  1370. // * AssistResponse.audio_out
  1371. // * AssistResponse.audio_out
  1372. //
  1373. //
  1374. // The user then says *bagels* and the Assistant responds
  1375. // *OK, I've added bagels to your shopping list*. This is sent as another gRPC
  1376. // connection call to the `Assist` method, again with streamed requests and
  1377. // responses, such as:
  1378. //
  1379. // * AssistRequest.config
  1380. // * AssistRequest.audio_in
  1381. // * AssistRequest.audio_in
  1382. // * AssistRequest.audio_in
  1383. // * AssistResponse.event_type.END_OF_UTTERANCE
  1384. // * AssistResponse.dialog_state_out.microphone_mode.CLOSE_MICROPHONE
  1385. // * AssistResponse.audio_out
  1386. // * AssistResponse.audio_out
  1387. // * AssistResponse.audio_out
  1388. // * AssistResponse.audio_out
  1389. //
  1390. // Although the precise order of responses is not guaranteed, sequential
  1391. // `AssistResponse.audio_out` messages will always contain sequential portions
  1392. // of audio.
  1393. Assist(ctx context.Context, opts ...grpc.CallOption) (EmbeddedAssistant_AssistClient, error)
  1394. }
  1395. type embeddedAssistantClient struct {
  1396. cc *grpc.ClientConn
  1397. }
  1398. func NewEmbeddedAssistantClient(cc *grpc.ClientConn) EmbeddedAssistantClient {
  1399. return &embeddedAssistantClient{cc}
  1400. }
  1401. func (c *embeddedAssistantClient) Assist(ctx context.Context, opts ...grpc.CallOption) (EmbeddedAssistant_AssistClient, error) {
  1402. stream, err := c.cc.NewStream(ctx, &_EmbeddedAssistant_serviceDesc.Streams[0], "/google.assistant.embedded.v1alpha2.EmbeddedAssistant/Assist", opts...)
  1403. if err != nil {
  1404. return nil, err
  1405. }
  1406. x := &embeddedAssistantAssistClient{stream}
  1407. return x, nil
  1408. }
  1409. type EmbeddedAssistant_AssistClient interface {
  1410. Send(*AssistRequest) error
  1411. Recv() (*AssistResponse, error)
  1412. grpc.ClientStream
  1413. }
  1414. type embeddedAssistantAssistClient struct {
  1415. grpc.ClientStream
  1416. }
  1417. func (x *embeddedAssistantAssistClient) Send(m *AssistRequest) error {
  1418. return x.ClientStream.SendMsg(m)
  1419. }
  1420. func (x *embeddedAssistantAssistClient) Recv() (*AssistResponse, error) {
  1421. m := new(AssistResponse)
  1422. if err := x.ClientStream.RecvMsg(m); err != nil {
  1423. return nil, err
  1424. }
  1425. return m, nil
  1426. }
  1427. // EmbeddedAssistantServer is the server API for EmbeddedAssistant service.
  1428. type EmbeddedAssistantServer interface {
  1429. // Initiates or continues a conversation with the embedded Assistant Service.
  1430. // Each call performs one round-trip, sending an audio request to the service
  1431. // and receiving the audio response. Uses bidirectional streaming to receive
  1432. // results, such as the `END_OF_UTTERANCE` event, while sending audio.
  1433. //
  1434. // A conversation is one or more gRPC connections, each consisting of several
  1435. // streamed requests and responses.
  1436. // For example, the user says *Add to my shopping list* and the Assistant
  1437. // responds *What do you want to add?*. The sequence of streamed requests and
  1438. // responses in the first gRPC message could be:
  1439. //
  1440. // * AssistRequest.config
  1441. // * AssistRequest.audio_in
  1442. // * AssistRequest.audio_in
  1443. // * AssistRequest.audio_in
  1444. // * AssistRequest.audio_in
  1445. // * AssistResponse.event_type.END_OF_UTTERANCE
  1446. // * AssistResponse.speech_results.transcript "add to my shopping list"
  1447. // * AssistResponse.dialog_state_out.microphone_mode.DIALOG_FOLLOW_ON
  1448. // * AssistResponse.audio_out
  1449. // * AssistResponse.audio_out
  1450. // * AssistResponse.audio_out
  1451. //
  1452. //
  1453. // The user then says *bagels* and the Assistant responds
  1454. // *OK, I've added bagels to your shopping list*. This is sent as another gRPC
  1455. // connection call to the `Assist` method, again with streamed requests and
  1456. // responses, such as:
  1457. //
  1458. // * AssistRequest.config
  1459. // * AssistRequest.audio_in
  1460. // * AssistRequest.audio_in
  1461. // * AssistRequest.audio_in
  1462. // * AssistResponse.event_type.END_OF_UTTERANCE
  1463. // * AssistResponse.dialog_state_out.microphone_mode.CLOSE_MICROPHONE
  1464. // * AssistResponse.audio_out
  1465. // * AssistResponse.audio_out
  1466. // * AssistResponse.audio_out
  1467. // * AssistResponse.audio_out
  1468. //
  1469. // Although the precise order of responses is not guaranteed, sequential
  1470. // `AssistResponse.audio_out` messages will always contain sequential portions
  1471. // of audio.
  1472. Assist(EmbeddedAssistant_AssistServer) error
  1473. }
  1474. func RegisterEmbeddedAssistantServer(s *grpc.Server, srv EmbeddedAssistantServer) {
  1475. s.RegisterService(&_EmbeddedAssistant_serviceDesc, srv)
  1476. }
  1477. func _EmbeddedAssistant_Assist_Handler(srv interface{}, stream grpc.ServerStream) error {
  1478. return srv.(EmbeddedAssistantServer).Assist(&embeddedAssistantAssistServer{stream})
  1479. }
  1480. type EmbeddedAssistant_AssistServer interface {
  1481. Send(*AssistResponse) error
  1482. Recv() (*AssistRequest, error)
  1483. grpc.ServerStream
  1484. }
  1485. type embeddedAssistantAssistServer struct {
  1486. grpc.ServerStream
  1487. }
  1488. func (x *embeddedAssistantAssistServer) Send(m *AssistResponse) error {
  1489. return x.ServerStream.SendMsg(m)
  1490. }
  1491. func (x *embeddedAssistantAssistServer) Recv() (*AssistRequest, error) {
  1492. m := new(AssistRequest)
  1493. if err := x.ServerStream.RecvMsg(m); err != nil {
  1494. return nil, err
  1495. }
  1496. return m, nil
  1497. }
  1498. var _EmbeddedAssistant_serviceDesc = grpc.ServiceDesc{
  1499. ServiceName: "google.assistant.embedded.v1alpha2.EmbeddedAssistant",
  1500. HandlerType: (*EmbeddedAssistantServer)(nil),
  1501. Methods: []grpc.MethodDesc{},
  1502. Streams: []grpc.StreamDesc{
  1503. {
  1504. StreamName: "Assist",
  1505. Handler: _EmbeddedAssistant_Assist_Handler,
  1506. ServerStreams: true,
  1507. ClientStreams: true,
  1508. },
  1509. },
  1510. Metadata: "google/assistant/embedded/v1alpha2/embedded_assistant.proto",
  1511. }
  1512. func init() {
  1513. proto.RegisterFile("google/assistant/embedded/v1alpha2/embedded_assistant.proto", fileDescriptor_embedded_assistant_31f36a6aca89d40d)
  1514. }
  1515. var fileDescriptor_embedded_assistant_31f36a6aca89d40d = []byte{
  1516. // 1449 bytes of a gzipped FileDescriptorProto
  1517. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x57, 0x41, 0x73, 0xdb, 0xc6,
  1518. 0x15, 0x16, 0x28, 0x8a, 0x22, 0x1f, 0x29, 0x92, 0x5a, 0x7b, 0x6c, 0x56, 0x72, 0x6b, 0x0d, 0x3a,
  1519. 0xe3, 0x51, 0xdd, 0x9a, 0xb4, 0xe8, 0x4e, 0x3b, 0xb5, 0x5c, 0x77, 0x68, 0x12, 0x94, 0xe0, 0x52,
  1520. 0x04, 0x0d, 0x52, 0xf6, 0xb8, 0x6e, 0x07, 0xb3, 0x22, 0x56, 0x10, 0x3c, 0xe0, 0x2e, 0x0d, 0x2c,
  1521. 0x65, 0xab, 0xa7, 0x1c, 0x73, 0x4b, 0xae, 0xb9, 0xe6, 0x9c, 0x5b, 0x7e, 0x49, 0x8e, 0xf9, 0x17,
  1522. 0x99, 0xc9, 0x1f, 0xc8, 0xec, 0x62, 0x41, 0x91, 0x8a, 0x95, 0x90, 0xce, 0x0d, 0xfb, 0xde, 0xbe,
  1523. 0x0f, 0x0f, 0xbb, 0xdf, 0xf7, 0xde, 0x03, 0xec, 0x7b, 0x8c, 0x79, 0x01, 0xa9, 0xe1, 0x28, 0xf2,
  1524. 0x23, 0x8e, 0x29, 0xaf, 0x91, 0xd1, 0x09, 0x71, 0x5d, 0xe2, 0xd6, 0xce, 0xf7, 0x70, 0x30, 0x3e,
  1525. 0xc3, 0xf5, 0xa9, 0xc5, 0x99, 0x6e, 0xaa, 0x8e, 0x43, 0xc6, 0x19, 0xd2, 0xe3, 0xe0, 0xea, 0xa5,
  1526. 0x3d, 0xd9, 0x5a, 0x4d, 0x82, 0xb7, 0xee, 0x24, 0x2f, 0x18, 0xfb, 0x35, 0x4c, 0x29, 0xe3, 0x98,
  1527. 0xfb, 0x8c, 0x46, 0x31, 0xc2, 0x56, 0x45, 0x79, 0xf9, 0xc5, 0x98, 0xd4, 0x02, 0xcc, 0x03, 0xea,
  1528. 0xc5, 0x1e, 0xfd, 0x33, 0x0d, 0x36, 0x1a, 0x12, 0xd7, 0x26, 0xef, 0x26, 0x24, 0xe2, 0xe8, 0x39,
  1529. 0x64, 0x86, 0x8c, 0x9e, 0xfa, 0x5e, 0x45, 0xdb, 0xd1, 0x76, 0xf3, 0xf5, 0x87, 0xd5, 0x5f, 0x7f,
  1530. 0x7d, 0x35, 0x86, 0x68, 0xca, 0xb8, 0xc3, 0x15, 0x5b, 0x21, 0xa0, 0x6d, 0xc8, 0xe2, 0x89, 0xeb,
  1531. 0x33, 0xc7, 0xa7, 0x95, 0xd4, 0x8e, 0xb6, 0x5b, 0x38, 0x5c, 0xb1, 0xd7, 0xa5, 0xc5, 0xa4, 0xcf,
  1532. 0x32, 0x90, 0x16, 0xf9, 0xe8, 0xdf, 0xac, 0x41, 0x31, 0x49, 0x21, 0x1a, 0x33, 0x1a, 0x11, 0xf4,
  1533. 0x06, 0x80, 0x9c, 0x13, 0xca, 0x1d, 0xb1, 0x41, 0xe6, 0x51, 0xac, 0x3f, 0x59, 0x3c, 0x8f, 0x04,
  1534. 0xa7, 0x6a, 0x08, 0x90, 0xc1, 0xc5, 0x98, 0xd8, 0x39, 0x92, 0x3c, 0x22, 0x13, 0x72, 0x71, 0x52,
  1535. 0x6c, 0xc2, 0x2b, 0xab, 0xf2, 0x1b, 0xff, 0xb2, 0x10, 0xb6, 0x08, 0xb2, 0x26, 0xdc, 0x8e, 0xbf,
  1536. 0xc9, 0x9a, 0x70, 0xd4, 0x01, 0x88, 0x86, 0x21, 0x21, 0x54, 0x62, 0xa5, 0x25, 0xd6, 0x83, 0x45,
  1537. 0xb0, 0xfa, 0x32, 0x4a, 0x80, 0xe5, 0xa2, 0xe4, 0x11, 0x1d, 0xc3, 0x86, 0x4b, 0xce, 0xfd, 0x21,
  1538. 0x71, 0xf0, 0x50, 0xdc, 0x5e, 0x25, 0xb3, 0xf8, 0x05, 0xb4, 0x64, 0x60, 0x43, 0xc6, 0xd9, 0x05,
  1539. 0x77, 0x66, 0x85, 0x4e, 0xa0, 0x18, 0x8d, 0x09, 0x19, 0x9e, 0x39, 0x21, 0x89, 0x26, 0x01, 0x8f,
  1540. 0x2a, 0xa9, 0x9d, 0xd5, 0xdd, 0x7c, 0x7d, 0x7f, 0xa1, 0x44, 0x65, 0xa4, 0x4d, 0x86, 0xcc, 0xa3,
  1541. 0xbe, 0x04, 0x97, 0x18, 0xf6, 0x46, 0xa4, 0x1c, 0x12, 0x11, 0xfd, 0x17, 0xca, 0xae, 0x8f, 0x03,
  1542. 0xe6, 0x39, 0x11, 0xc7, 0x9c, 0xc8, 0xe3, 0x58, 0x93, 0xd9, 0xd7, 0x17, 0xca, 0x5e, 0xc6, 0xf6,
  1543. 0x45, 0xa8, 0x38, 0x93, 0xa2, 0x3b, 0xb7, 0x16, 0xc7, 0xec, 0x92, 0x93, 0x89, 0xe7, 0xf8, 0xf4,
  1544. 0x94, 0x55, 0xb2, 0x8b, 0x1f, 0x73, 0x4b, 0x44, 0x99, 0xf4, 0x94, 0xd9, 0x39, 0x37, 0x79, 0xd4,
  1545. 0xff, 0x09, 0xb9, 0x29, 0x2f, 0xd0, 0x16, 0xdc, 0x32, 0x5e, 0x1a, 0xdd, 0x81, 0x33, 0x78, 0xdd,
  1546. 0x33, 0x9c, 0xe3, 0x6e, 0xbf, 0x67, 0x34, 0xcd, 0xb6, 0x69, 0xb4, 0xca, 0x2b, 0xe8, 0x26, 0x94,
  1547. 0x8d, 0x6e, 0xcb, 0xb1, 0xda, 0xce, 0xf1, 0x60, 0x60, 0xd8, 0x8d, 0x6e, 0xd3, 0x28, 0x6b, 0xba,
  1548. 0x09, 0xb9, 0x29, 0x2c, 0x7a, 0x02, 0xdb, 0x98, 0x79, 0x0e, 0xf6, 0x24, 0x59, 0xd9, 0xa5, 0x74,
  1549. 0x9d, 0xb7, 0x11, 0xa3, 0x92, 0xb9, 0x39, 0xfb, 0x36, 0x66, 0x5e, 0x43, 0xec, 0x18, 0xb0, 0x46,
  1550. 0xe2, 0x7f, 0x1e, 0x31, 0xaa, 0x7f, 0x9f, 0x86, 0xc2, 0xac, 0x72, 0xd0, 0x1b, 0x28, 0x25, 0x7a,
  1551. 0x71, 0xe6, 0x44, 0xb8, 0xb7, 0x30, 0x41, 0x4d, 0x3a, 0x55, 0xe1, 0x06, 0x9e, 0x35, 0xa0, 0xbb,
  1552. 0x00, 0x9c, 0x7c, 0xe0, 0xce, 0xbb, 0x09, 0x09, 0x2f, 0x24, 0xb7, 0x72, 0x87, 0x2b, 0x76, 0x4e,
  1553. 0xd8, 0x5e, 0x08, 0x93, 0xb8, 0xc4, 0xa9, 0x30, 0x92, 0xd7, 0xa7, 0x16, 0xbf, 0xc4, 0x44, 0x1f,
  1554. 0xf1, 0xeb, 0xec, 0x22, 0x9e, 0x5b, 0x23, 0x07, 0x36, 0x2f, 0xb5, 0x92, 0xc0, 0xc7, 0x77, 0xf9,
  1555. 0x68, 0x29, 0xc9, 0x28, 0xfc, 0x52, 0x34, 0x6f, 0x40, 0xaf, 0xa1, 0x34, 0xc7, 0x41, 0x9f, 0x2a,
  1556. 0x75, 0xef, 0x2d, 0x49, 0x41, 0x93, 0xda, 0x1b, 0xee, 0xec, 0x72, 0x46, 0x99, 0x2a, 0xef, 0xf4,
  1557. 0xb2, 0xca, 0x54, 0x49, 0x2b, 0x65, 0xaa, 0x8c, 0x6d, 0x28, 0xc4, 0xbc, 0x56, 0xa8, 0xb1, 0x62,
  1558. 0x6a, 0x0b, 0x33, 0x5b, 0x81, 0xe6, 0xdd, 0xcb, 0xc5, 0xb4, 0xaa, 0x7e, 0x27, 0x0a, 0xfb, 0xdc,
  1559. 0xfd, 0xbf, 0x84, 0x2c, 0xa1, 0x43, 0xe6, 0xfa, 0xd4, 0x53, 0x25, 0xf5, 0xf1, 0xd2, 0xac, 0xaa,
  1560. 0x1a, 0x0a, 0xc1, 0x9e, 0x62, 0xa1, 0xfb, 0xb0, 0x19, 0xe1, 0xd1, 0x38, 0x20, 0x4e, 0x28, 0x8e,
  1561. 0xfd, 0x8c, 0x84, 0xfc, 0xff, 0x92, 0x37, 0x6b, 0x76, 0x29, 0x76, 0xd8, 0x98, 0x93, 0x43, 0x61,
  1562. 0xd6, 0x9f, 0x40, 0x36, 0x41, 0x40, 0x15, 0xb8, 0x69, 0x74, 0x9b, 0x56, 0xcb, 0xec, 0x1e, 0x5c,
  1563. 0x11, 0x5e, 0x01, 0xb2, 0x1d, 0xb3, 0x6b, 0x34, 0xec, 0xbd, 0xbf, 0x95, 0x35, 0x94, 0x85, 0x74,
  1564. 0xbb, 0xd3, 0x68, 0x96, 0x53, 0xfa, 0x97, 0x29, 0x28, 0xce, 0xb3, 0x0c, 0xbd, 0xfa, 0xd9, 0x47,
  1565. 0xed, 0x2f, 0xcf, 0xd5, 0xdf, 0xf8, 0x55, 0xe8, 0xcf, 0xb0, 0x79, 0xce, 0x82, 0xc9, 0x88, 0x38,
  1566. 0x63, 0x12, 0x0e, 0x09, 0xe5, 0xd8, 0x23, 0x92, 0x7b, 0x6b, 0x76, 0x39, 0x76, 0xf4, 0xa6, 0x76,
  1567. 0xbd, 0xf3, 0x09, 0x47, 0xb0, 0x0e, 0xab, 0x47, 0xbd, 0x47, 0xe5, 0x14, 0x2a, 0x41, 0xde, 0xea,
  1568. 0x1d, 0xf7, 0x1d, 0xb3, 0xeb, 0x58, 0x07, 0x07, 0xe5, 0x55, 0xfd, 0x5b, 0x0d, 0x4a, 0x57, 0x94,
  1569. 0x81, 0x1c, 0xc8, 0x2b, 0xa5, 0x8d, 0x98, 0x9b, 0xb4, 0xcf, 0xa7, 0x9f, 0xa0, 0x31, 0xb5, 0x3e,
  1570. 0x62, 0x2e, 0xb1, 0x55, 0xa3, 0x13, 0xcf, 0xfa, 0xbf, 0x00, 0x2e, 0x3d, 0x68, 0x1b, 0x6e, 0xf7,
  1571. 0x9b, 0xb6, 0x61, 0x74, 0x9d, 0x23, 0xab, 0x75, 0xb5, 0x86, 0xae, 0xc3, 0xaa, 0xd5, 0x6e, 0x97,
  1572. 0x35, 0x94, 0x87, 0xf5, 0x5e, 0xa7, 0xf1, 0xda, 0xec, 0x8a, 0xac, 0x7f, 0xd0, 0x60, 0x63, 0x4e,
  1573. 0x70, 0xe8, 0x01, 0xa0, 0x21, 0xa3, 0xe7, 0x24, 0x8c, 0xe4, 0xe0, 0x12, 0x4b, 0x58, 0xa6, 0x5e,
  1574. 0xb0, 0x37, 0x67, 0x3d, 0x32, 0x00, 0xfd, 0x11, 0x36, 0x02, 0x4c, 0xbd, 0x09, 0xf6, 0x84, 0x24,
  1575. 0x5d, 0x22, 0x6f, 0x26, 0x67, 0x17, 0x12, 0x63, 0x53, 0x24, 0xf6, 0x06, 0x4a, 0x4a, 0xb5, 0x01,
  1576. 0x1b, 0xca, 0xe0, 0xa5, 0x7a, 0x92, 0x0c, 0xed, 0xa8, 0x48, 0xbb, 0xe8, 0xce, 0xad, 0x51, 0x15,
  1577. 0x6e, 0xf8, 0x91, 0x43, 0xc9, 0x7b, 0x67, 0x36, 0xbb, 0xca, 0xfa, 0x8e, 0xb6, 0x9b, 0xb5, 0x37,
  1578. 0xfd, 0xa8, 0x4b, 0xde, 0x37, 0x67, 0x1c, 0x7a, 0x1f, 0x0a, 0xb3, 0x95, 0x00, 0x6d, 0x43, 0x4e,
  1579. 0x25, 0xe7, 0xbb, 0xaa, 0x4f, 0x64, 0x63, 0x83, 0xe9, 0xa2, 0x7b, 0xd3, 0xcc, 0xc5, 0x0d, 0x06,
  1580. 0x62, 0xcb, 0xaa, 0xdc, 0xa2, 0xca, 0x90, 0x38, 0xf7, 0xc0, 0x74, 0xf5, 0x3f, 0x41, 0x36, 0x61,
  1581. 0x32, 0xfa, 0x3d, 0x40, 0x5c, 0xbd, 0x5d, 0xcc, 0xb1, 0x3a, 0xb9, 0x78, 0xd0, 0x69, 0x61, 0x8e,
  1582. 0xf5, 0xaf, 0x34, 0xc8, 0x4d, 0xaf, 0x17, 0x75, 0x20, 0x73, 0xca, 0xc2, 0x11, 0xe6, 0x8a, 0x1d,
  1583. 0x7f, 0x5d, 0x8a, 0x1d, 0xd5, 0xb6, 0x8c, 0xb5, 0x15, 0x06, 0x42, 0x90, 0x96, 0x2f, 0x95, 0x23,
  1584. 0x9e, 0x2d, 0x9f, 0xf5, 0xfb, 0x90, 0x89, 0x77, 0xa1, 0x5b, 0x80, 0xda, 0x96, 0x7d, 0xd4, 0x18,
  1585. 0x5c, 0xa1, 0x46, 0x16, 0xd2, 0x87, 0x83, 0xa3, 0x4e, 0x59, 0xd3, 0x9f, 0x26, 0x67, 0xa3, 0x26,
  1586. 0x96, 0x2a, 0xdc, 0x50, 0x9f, 0x1f, 0xc6, 0x43, 0xe9, 0x6c, 0x37, 0xdd, 0x8c, 0x5d, 0x6a, 0x5c,
  1587. 0x95, 0x7d, 0xf4, 0x15, 0xdc, 0xbe, 0x66, 0x4e, 0x41, 0x7f, 0x00, 0xe0, 0x21, 0xa6, 0xd1, 0x30,
  1588. 0xf4, 0xc7, 0x5c, 0x21, 0xcc, 0x58, 0xd0, 0x1d, 0xc8, 0x45, 0x1c, 0x9f, 0xf8, 0x81, 0xcf, 0x2f,
  1589. 0x64, 0xfe, 0x29, 0xfb, 0xd2, 0xa0, 0xff, 0x98, 0x82, 0xe2, 0xfc, 0x6c, 0x82, 0x1e, 0xc3, 0xef,
  1590. 0xa2, 0xc9, 0x78, 0x1c, 0x90, 0x91, 0xd0, 0x73, 0xe0, 0xb8, 0x7e, 0x34, 0x0e, 0xf0, 0x85, 0x23,
  1591. 0xda, 0x68, 0xd2, 0xef, 0x67, 0x37, 0xb4, 0x62, 0xff, 0x80, 0x7c, 0xe0, 0xd7, 0x90, 0x3c, 0x75,
  1592. 0x1d, 0xc9, 0xdf, 0x42, 0x69, 0xe4, 0x0f, 0x43, 0x36, 0x3e, 0x63, 0x34, 0x66, 0x82, 0x64, 0x41,
  1593. 0xb1, 0xde, 0x58, 0x7e, 0xa6, 0xaa, 0x1e, 0x4d, 0x91, 0xa4, 0x9c, 0x8b, 0xa3, 0xb9, 0xf5, 0xc7,
  1594. 0x4b, 0x58, 0xfa, 0x9a, 0x12, 0xf6, 0x3f, 0x28, 0xce, 0xc3, 0xa1, 0xbb, 0xb0, 0x7d, 0x64, 0x36,
  1595. 0x6d, 0xab, 0x77, 0x68, 0x75, 0x8d, 0x8f, 0xd5, 0x81, 0x9b, 0x50, 0x6e, 0x76, 0xac, 0xbe, 0xe1,
  1596. 0x5c, 0x6e, 0x2b, 0x6b, 0xc2, 0xda, 0x32, 0x1b, 0x1d, 0xeb, 0xc0, 0x69, 0x5b, 0x9d, 0x8e, 0xf5,
  1597. 0xca, 0xb1, 0xba, 0xe5, 0x94, 0xfe, 0x0f, 0xc8, 0xcf, 0xb4, 0x37, 0x51, 0x89, 0x43, 0xc2, 0x27,
  1598. 0x21, 0x75, 0x66, 0x86, 0xc0, 0x8c, 0xd4, 0x59, 0x29, 0x76, 0x4c, 0xe7, 0x31, 0xfd, 0x05, 0x14,
  1599. 0xe7, 0x75, 0x8b, 0xfe, 0x0e, 0xf9, 0x21, 0x63, 0xa1, 0xeb, 0x53, 0xcc, 0x49, 0xa4, 0xc6, 0xa9,
  1600. 0x1b, 0xc9, 0x01, 0x8a, 0x56, 0x59, 0xed, 0x60, 0xde, 0xa1, 0x62, 0x60, 0x9a, 0xdd, 0x99, 0x34,
  1601. 0xd2, 0xfa, 0xe7, 0x1a, 0x6c, 0x1a, 0xea, 0x74, 0xa7, 0xe3, 0x1b, 0x8a, 0x20, 0x13, 0x2f, 0xd0,
  1602. 0xde, 0x32, 0xff, 0x25, 0x92, 0xb3, 0x5b, 0xf5, 0xe5, 0x7f, 0x65, 0x76, 0xb5, 0x87, 0xda, 0xb3,
  1603. 0x2f, 0x34, 0xb8, 0x37, 0x64, 0xa3, 0x05, 0xa2, 0x9f, 0x15, 0xa7, 0xa9, 0xf6, 0xc4, 0x7f, 0x5e,
  1604. 0x4f, 0xfb, 0xcf, 0x73, 0x15, 0xe5, 0x31, 0x51, 0x24, 0xab, 0x2c, 0xf4, 0x6a, 0x1e, 0xa1, 0xf2,
  1605. 0x2f, 0xb0, 0x16, 0xbb, 0xf0, 0xd8, 0x8f, 0x7e, 0xe9, 0x0f, 0x75, 0x3f, 0xb1, 0x7c, 0x9d, 0xca,
  1606. 0x34, 0xfa, 0x83, 0x7e, 0xeb, 0xdf, 0x27, 0x19, 0x19, 0xff, 0xe8, 0xa7, 0x00, 0x00, 0x00, 0xff,
  1607. 0xff, 0xb9, 0x08, 0x29, 0x0f, 0xe0, 0x0e, 0x00, 0x00,
  1608. }