blob: 3f96efdb3e2f1964de661197303e8fc9155b1892 [file] [log] [blame]
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/home/graph/v1/homegraph.proto
package graph
import (
context "context"
fmt "fmt"
math "math"
proto "github.com/golang/protobuf/proto"
empty "github.com/golang/protobuf/ptypes/empty"
_struct "github.com/golang/protobuf/ptypes/struct"
_ "google.golang.org/genproto/googleapis/api/annotations"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
// Request type for the
// [`RequestSyncDevices`](#google.home.graph.v1.HomeGraphApiService.RequestSyncDevices)
// call.
type RequestSyncDevicesRequest struct {
// Required. Third-party user ID issued by agent's third-party identity
// provider.
AgentUserId string `protobuf:"bytes,1,opt,name=agent_user_id,json=agentUserId,proto3" json:"agent_user_id,omitempty"`
// Optional. If set, the request will be added to a queue and a response will
// be returned immediately. The queue allows for de-duplication of
// simultaneous requests.
Async bool `protobuf:"varint,2,opt,name=async,proto3" json:"async,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RequestSyncDevicesRequest) Reset() { *m = RequestSyncDevicesRequest{} }
func (m *RequestSyncDevicesRequest) String() string { return proto.CompactTextString(m) }
func (*RequestSyncDevicesRequest) ProtoMessage() {}
func (*RequestSyncDevicesRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{0}
}
func (m *RequestSyncDevicesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RequestSyncDevicesRequest.Unmarshal(m, b)
}
func (m *RequestSyncDevicesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RequestSyncDevicesRequest.Marshal(b, m, deterministic)
}
func (m *RequestSyncDevicesRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_RequestSyncDevicesRequest.Merge(m, src)
}
func (m *RequestSyncDevicesRequest) XXX_Size() int {
return xxx_messageInfo_RequestSyncDevicesRequest.Size(m)
}
func (m *RequestSyncDevicesRequest) XXX_DiscardUnknown() {
xxx_messageInfo_RequestSyncDevicesRequest.DiscardUnknown(m)
}
var xxx_messageInfo_RequestSyncDevicesRequest proto.InternalMessageInfo
func (m *RequestSyncDevicesRequest) GetAgentUserId() string {
if m != nil {
return m.AgentUserId
}
return ""
}
func (m *RequestSyncDevicesRequest) GetAsync() bool {
if m != nil {
return m.Async
}
return false
}
// Response type for the
// [`RequestSyncDevices`](#google.home.graph.v1.HomeGraphApiService.RequestSyncDevices)
// call. Intentionally empty upon success. An HTTP response code is returned
// with more details upon failure.
type RequestSyncDevicesResponse struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RequestSyncDevicesResponse) Reset() { *m = RequestSyncDevicesResponse{} }
func (m *RequestSyncDevicesResponse) String() string { return proto.CompactTextString(m) }
func (*RequestSyncDevicesResponse) ProtoMessage() {}
func (*RequestSyncDevicesResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{1}
}
func (m *RequestSyncDevicesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RequestSyncDevicesResponse.Unmarshal(m, b)
}
func (m *RequestSyncDevicesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RequestSyncDevicesResponse.Marshal(b, m, deterministic)
}
func (m *RequestSyncDevicesResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_RequestSyncDevicesResponse.Merge(m, src)
}
func (m *RequestSyncDevicesResponse) XXX_Size() int {
return xxx_messageInfo_RequestSyncDevicesResponse.Size(m)
}
func (m *RequestSyncDevicesResponse) XXX_DiscardUnknown() {
xxx_messageInfo_RequestSyncDevicesResponse.DiscardUnknown(m)
}
var xxx_messageInfo_RequestSyncDevicesResponse proto.InternalMessageInfo
// Request type for the
// [`ReportStateAndNotification`](#google.home.graph.v1.HomeGraphApiService.ReportStateAndNotification)
// call. It may include States, Notifications, or both. This request uses
// globally unique flattened state names instead of namespaces based on traits
// to align with the existing QUERY and EXECUTE APIs implemented by 90+ Smart
// Home partners. States and notifications are defined per `device_id` (for example, "123"
// and "456" in the following example). # Example
// ```json
// {
// "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
// "agentUserId": "1234",
// "payload": {
// "devices": {
// "states": {
// "123": {
// "on": true
// },
// "456": {
// "on": true,
// "brightness": 10
// }
// },
// }
// }
// }
// ```
type ReportStateAndNotificationRequest struct {
// Request ID used for debugging.
RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Unique identifier per event (for example, a doorbell press).
EventId string `protobuf:"bytes,4,opt,name=event_id,json=eventId,proto3" json:"event_id,omitempty"`
// Required. Third-party user ID.
AgentUserId string `protobuf:"bytes,2,opt,name=agent_user_id,json=agentUserId,proto3" json:"agent_user_id,omitempty"`
// Token to maintain state in the follow up notification response.
FollowUpToken string `protobuf:"bytes,5,opt,name=follow_up_token,json=followUpToken,proto3" json:"follow_up_token,omitempty"`
// Required. State of devices to update and notification metadata for devices. For
// example, if a user turns a light on manually, a state update should be
// sent so that the information is always the current status of the device.
// Notifications are independent from the state and its piece of the payload
// should contain everything necessary to notify the user. Although it may be
// related to a state change, it does not need to be. For example, if a
// device can turn on/off and change temperature, the states reported would
// include both "on" and "70 degrees" but the 3p may choose not to send any
// notification for that, or to only say that the "the room is heating up",
// keeping state and notification independent.
Payload *StateAndNotificationPayload `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ReportStateAndNotificationRequest) Reset() { *m = ReportStateAndNotificationRequest{} }
func (m *ReportStateAndNotificationRequest) String() string { return proto.CompactTextString(m) }
func (*ReportStateAndNotificationRequest) ProtoMessage() {}
func (*ReportStateAndNotificationRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{2}
}
func (m *ReportStateAndNotificationRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ReportStateAndNotificationRequest.Unmarshal(m, b)
}
func (m *ReportStateAndNotificationRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ReportStateAndNotificationRequest.Marshal(b, m, deterministic)
}
func (m *ReportStateAndNotificationRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ReportStateAndNotificationRequest.Merge(m, src)
}
func (m *ReportStateAndNotificationRequest) XXX_Size() int {
return xxx_messageInfo_ReportStateAndNotificationRequest.Size(m)
}
func (m *ReportStateAndNotificationRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ReportStateAndNotificationRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ReportStateAndNotificationRequest proto.InternalMessageInfo
func (m *ReportStateAndNotificationRequest) GetRequestId() string {
if m != nil {
return m.RequestId
}
return ""
}
func (m *ReportStateAndNotificationRequest) GetEventId() string {
if m != nil {
return m.EventId
}
return ""
}
func (m *ReportStateAndNotificationRequest) GetAgentUserId() string {
if m != nil {
return m.AgentUserId
}
return ""
}
func (m *ReportStateAndNotificationRequest) GetFollowUpToken() string {
if m != nil {
return m.FollowUpToken
}
return ""
}
func (m *ReportStateAndNotificationRequest) GetPayload() *StateAndNotificationPayload {
if m != nil {
return m.Payload
}
return nil
}
// Response type for the
// [`ReportStateAndNotification`](#google.home.graph.v1.HomeGraphApiService.ReportStateAndNotification)
// call.
type ReportStateAndNotificationResponse struct {
// Request ID copied from [ReportStateAndNotificationRequest][google.home.graph.v1.ReportStateAndNotificationRequest].
RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ReportStateAndNotificationResponse) Reset() { *m = ReportStateAndNotificationResponse{} }
func (m *ReportStateAndNotificationResponse) String() string { return proto.CompactTextString(m) }
func (*ReportStateAndNotificationResponse) ProtoMessage() {}
func (*ReportStateAndNotificationResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{3}
}
func (m *ReportStateAndNotificationResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ReportStateAndNotificationResponse.Unmarshal(m, b)
}
func (m *ReportStateAndNotificationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ReportStateAndNotificationResponse.Marshal(b, m, deterministic)
}
func (m *ReportStateAndNotificationResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_ReportStateAndNotificationResponse.Merge(m, src)
}
func (m *ReportStateAndNotificationResponse) XXX_Size() int {
return xxx_messageInfo_ReportStateAndNotificationResponse.Size(m)
}
func (m *ReportStateAndNotificationResponse) XXX_DiscardUnknown() {
xxx_messageInfo_ReportStateAndNotificationResponse.DiscardUnknown(m)
}
var xxx_messageInfo_ReportStateAndNotificationResponse proto.InternalMessageInfo
func (m *ReportStateAndNotificationResponse) GetRequestId() string {
if m != nil {
return m.RequestId
}
return ""
}
// Payload containing the state and notification information for devices.
type StateAndNotificationPayload struct {
// The devices for updating state and sending notifications.
Devices *ReportStateAndNotificationDevice `protobuf:"bytes,1,opt,name=devices,proto3" json:"devices,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *StateAndNotificationPayload) Reset() { *m = StateAndNotificationPayload{} }
func (m *StateAndNotificationPayload) String() string { return proto.CompactTextString(m) }
func (*StateAndNotificationPayload) ProtoMessage() {}
func (*StateAndNotificationPayload) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{4}
}
func (m *StateAndNotificationPayload) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_StateAndNotificationPayload.Unmarshal(m, b)
}
func (m *StateAndNotificationPayload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_StateAndNotificationPayload.Marshal(b, m, deterministic)
}
func (m *StateAndNotificationPayload) XXX_Merge(src proto.Message) {
xxx_messageInfo_StateAndNotificationPayload.Merge(m, src)
}
func (m *StateAndNotificationPayload) XXX_Size() int {
return xxx_messageInfo_StateAndNotificationPayload.Size(m)
}
func (m *StateAndNotificationPayload) XXX_DiscardUnknown() {
xxx_messageInfo_StateAndNotificationPayload.DiscardUnknown(m)
}
var xxx_messageInfo_StateAndNotificationPayload proto.InternalMessageInfo
func (m *StateAndNotificationPayload) GetDevices() *ReportStateAndNotificationDevice {
if m != nil {
return m.Devices
}
return nil
}
// The states and notifications specific to a device.
type ReportStateAndNotificationDevice struct {
// States of devices to update.
States *_struct.Struct `protobuf:"bytes,1,opt,name=states,proto3" json:"states,omitempty"`
// Notifications metadata for devices.
Notifications *_struct.Struct `protobuf:"bytes,2,opt,name=notifications,proto3" json:"notifications,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ReportStateAndNotificationDevice) Reset() { *m = ReportStateAndNotificationDevice{} }
func (m *ReportStateAndNotificationDevice) String() string { return proto.CompactTextString(m) }
func (*ReportStateAndNotificationDevice) ProtoMessage() {}
func (*ReportStateAndNotificationDevice) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{5}
}
func (m *ReportStateAndNotificationDevice) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ReportStateAndNotificationDevice.Unmarshal(m, b)
}
func (m *ReportStateAndNotificationDevice) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ReportStateAndNotificationDevice.Marshal(b, m, deterministic)
}
func (m *ReportStateAndNotificationDevice) XXX_Merge(src proto.Message) {
xxx_messageInfo_ReportStateAndNotificationDevice.Merge(m, src)
}
func (m *ReportStateAndNotificationDevice) XXX_Size() int {
return xxx_messageInfo_ReportStateAndNotificationDevice.Size(m)
}
func (m *ReportStateAndNotificationDevice) XXX_DiscardUnknown() {
xxx_messageInfo_ReportStateAndNotificationDevice.DiscardUnknown(m)
}
var xxx_messageInfo_ReportStateAndNotificationDevice proto.InternalMessageInfo
func (m *ReportStateAndNotificationDevice) GetStates() *_struct.Struct {
if m != nil {
return m.States
}
return nil
}
func (m *ReportStateAndNotificationDevice) GetNotifications() *_struct.Struct {
if m != nil {
return m.Notifications
}
return nil
}
// Request type for the
// [`DeleteAgentUser`](#google.home.graph.v1.HomeGraphApiService.DeleteAgentUser)
// call.
type DeleteAgentUserRequest struct {
// Request ID used for debugging.
RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Required. Third-party user ID.
AgentUserId string `protobuf:"bytes,2,opt,name=agent_user_id,json=agentUserId,proto3" json:"agent_user_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *DeleteAgentUserRequest) Reset() { *m = DeleteAgentUserRequest{} }
func (m *DeleteAgentUserRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteAgentUserRequest) ProtoMessage() {}
func (*DeleteAgentUserRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{6}
}
func (m *DeleteAgentUserRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteAgentUserRequest.Unmarshal(m, b)
}
func (m *DeleteAgentUserRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DeleteAgentUserRequest.Marshal(b, m, deterministic)
}
func (m *DeleteAgentUserRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_DeleteAgentUserRequest.Merge(m, src)
}
func (m *DeleteAgentUserRequest) XXX_Size() int {
return xxx_messageInfo_DeleteAgentUserRequest.Size(m)
}
func (m *DeleteAgentUserRequest) XXX_DiscardUnknown() {
xxx_messageInfo_DeleteAgentUserRequest.DiscardUnknown(m)
}
var xxx_messageInfo_DeleteAgentUserRequest proto.InternalMessageInfo
func (m *DeleteAgentUserRequest) GetRequestId() string {
if m != nil {
return m.RequestId
}
return ""
}
func (m *DeleteAgentUserRequest) GetAgentUserId() string {
if m != nil {
return m.AgentUserId
}
return ""
}
// Request type for the
// [`Query`](#google.home.graph.v1.HomeGraphApiService.Query) call. This should
// be the same format as the Actions on Google `action.devices.QUERY`
// [request](/actions/smarthome/create-app#actiondevicesquery) with the
// exception of the extra `agent_user_id` and no `intent` and `customData`
// fields.
type QueryRequest struct {
// Request ID used for debugging.
RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Required. Third-party user ID.
AgentUserId string `protobuf:"bytes,2,opt,name=agent_user_id,json=agentUserId,proto3" json:"agent_user_id,omitempty"`
// Required. Inputs containing third-party partner's device IDs for which to
// get the device states.
Inputs []*QueryRequestInput `protobuf:"bytes,3,rep,name=inputs,proto3" json:"inputs,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *QueryRequest) Reset() { *m = QueryRequest{} }
func (m *QueryRequest) String() string { return proto.CompactTextString(m) }
func (*QueryRequest) ProtoMessage() {}
func (*QueryRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{7}
}
func (m *QueryRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QueryRequest.Unmarshal(m, b)
}
func (m *QueryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_QueryRequest.Marshal(b, m, deterministic)
}
func (m *QueryRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_QueryRequest.Merge(m, src)
}
func (m *QueryRequest) XXX_Size() int {
return xxx_messageInfo_QueryRequest.Size(m)
}
func (m *QueryRequest) XXX_DiscardUnknown() {
xxx_messageInfo_QueryRequest.DiscardUnknown(m)
}
var xxx_messageInfo_QueryRequest proto.InternalMessageInfo
func (m *QueryRequest) GetRequestId() string {
if m != nil {
return m.RequestId
}
return ""
}
func (m *QueryRequest) GetAgentUserId() string {
if m != nil {
return m.AgentUserId
}
return ""
}
func (m *QueryRequest) GetInputs() []*QueryRequestInput {
if m != nil {
return m.Inputs
}
return nil
}
// Device ID inputs to [QueryRequest][google.home.graph.v1.QueryRequest].
type QueryRequestInput struct {
// Payload containing third-party partner's device IDs.
Payload *QueryRequestPayload `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *QueryRequestInput) Reset() { *m = QueryRequestInput{} }
func (m *QueryRequestInput) String() string { return proto.CompactTextString(m) }
func (*QueryRequestInput) ProtoMessage() {}
func (*QueryRequestInput) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{8}
}
func (m *QueryRequestInput) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QueryRequestInput.Unmarshal(m, b)
}
func (m *QueryRequestInput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_QueryRequestInput.Marshal(b, m, deterministic)
}
func (m *QueryRequestInput) XXX_Merge(src proto.Message) {
xxx_messageInfo_QueryRequestInput.Merge(m, src)
}
func (m *QueryRequestInput) XXX_Size() int {
return xxx_messageInfo_QueryRequestInput.Size(m)
}
func (m *QueryRequestInput) XXX_DiscardUnknown() {
xxx_messageInfo_QueryRequestInput.DiscardUnknown(m)
}
var xxx_messageInfo_QueryRequestInput proto.InternalMessageInfo
func (m *QueryRequestInput) GetPayload() *QueryRequestPayload {
if m != nil {
return m.Payload
}
return nil
}
// Payload containing device IDs.
type QueryRequestPayload struct {
// Third-party partner's device IDs for which to get the device states.
Devices []*AgentDeviceId `protobuf:"bytes,1,rep,name=devices,proto3" json:"devices,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *QueryRequestPayload) Reset() { *m = QueryRequestPayload{} }
func (m *QueryRequestPayload) String() string { return proto.CompactTextString(m) }
func (*QueryRequestPayload) ProtoMessage() {}
func (*QueryRequestPayload) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{9}
}
func (m *QueryRequestPayload) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QueryRequestPayload.Unmarshal(m, b)
}
func (m *QueryRequestPayload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_QueryRequestPayload.Marshal(b, m, deterministic)
}
func (m *QueryRequestPayload) XXX_Merge(src proto.Message) {
xxx_messageInfo_QueryRequestPayload.Merge(m, src)
}
func (m *QueryRequestPayload) XXX_Size() int {
return xxx_messageInfo_QueryRequestPayload.Size(m)
}
func (m *QueryRequestPayload) XXX_DiscardUnknown() {
xxx_messageInfo_QueryRequestPayload.DiscardUnknown(m)
}
var xxx_messageInfo_QueryRequestPayload proto.InternalMessageInfo
func (m *QueryRequestPayload) GetDevices() []*AgentDeviceId {
if m != nil {
return m.Devices
}
return nil
}
// Third-party partner's device ID for one device.
type AgentDeviceId struct {
// Third-party partner's device ID.
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AgentDeviceId) Reset() { *m = AgentDeviceId{} }
func (m *AgentDeviceId) String() string { return proto.CompactTextString(m) }
func (*AgentDeviceId) ProtoMessage() {}
func (*AgentDeviceId) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{10}
}
func (m *AgentDeviceId) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AgentDeviceId.Unmarshal(m, b)
}
func (m *AgentDeviceId) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AgentDeviceId.Marshal(b, m, deterministic)
}
func (m *AgentDeviceId) XXX_Merge(src proto.Message) {
xxx_messageInfo_AgentDeviceId.Merge(m, src)
}
func (m *AgentDeviceId) XXX_Size() int {
return xxx_messageInfo_AgentDeviceId.Size(m)
}
func (m *AgentDeviceId) XXX_DiscardUnknown() {
xxx_messageInfo_AgentDeviceId.DiscardUnknown(m)
}
var xxx_messageInfo_AgentDeviceId proto.InternalMessageInfo
func (m *AgentDeviceId) GetId() string {
if m != nil {
return m.Id
}
return ""
}
// Response type for the
// [`Query`](#google.home.graph.v1.HomeGraphApiService.Query) call. This should
// follow the same format as the Actions on Google `action.devices.QUERY`
// [response](/actions/smarthome/create-app#actiondevicesquery).
// # Example
//
// ```json
// {
// "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
// "payload": {
// "devices": {
// "123": {
// "on": true,
// "online": true
// },
// "456": {
// "on": true,
// "online": true,
// "brightness": 80,
// "color": {
// "name": "cerulean",
// "spectrumRGB": 31655
// }
// }
// }
// }
// }
// ```
type QueryResponse struct {
// Request ID used for debugging. Copied from the request.
RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Device states for the devices given in the request.
Payload *QueryResponsePayload `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *QueryResponse) Reset() { *m = QueryResponse{} }
func (m *QueryResponse) String() string { return proto.CompactTextString(m) }
func (*QueryResponse) ProtoMessage() {}
func (*QueryResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{11}
}
func (m *QueryResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QueryResponse.Unmarshal(m, b)
}
func (m *QueryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_QueryResponse.Marshal(b, m, deterministic)
}
func (m *QueryResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_QueryResponse.Merge(m, src)
}
func (m *QueryResponse) XXX_Size() int {
return xxx_messageInfo_QueryResponse.Size(m)
}
func (m *QueryResponse) XXX_DiscardUnknown() {
xxx_messageInfo_QueryResponse.DiscardUnknown(m)
}
var xxx_messageInfo_QueryResponse proto.InternalMessageInfo
func (m *QueryResponse) GetRequestId() string {
if m != nil {
return m.RequestId
}
return ""
}
func (m *QueryResponse) GetPayload() *QueryResponsePayload {
if m != nil {
return m.Payload
}
return nil
}
// Payload containing device states information.
type QueryResponsePayload struct {
// States of the devices. Map of third-party device ID to struct of device
// states.
Devices map[string]*_struct.Struct `protobuf:"bytes,1,rep,name=devices,proto3" json:"devices,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *QueryResponsePayload) Reset() { *m = QueryResponsePayload{} }
func (m *QueryResponsePayload) String() string { return proto.CompactTextString(m) }
func (*QueryResponsePayload) ProtoMessage() {}
func (*QueryResponsePayload) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{12}
}
func (m *QueryResponsePayload) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QueryResponsePayload.Unmarshal(m, b)
}
func (m *QueryResponsePayload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_QueryResponsePayload.Marshal(b, m, deterministic)
}
func (m *QueryResponsePayload) XXX_Merge(src proto.Message) {
xxx_messageInfo_QueryResponsePayload.Merge(m, src)
}
func (m *QueryResponsePayload) XXX_Size() int {
return xxx_messageInfo_QueryResponsePayload.Size(m)
}
func (m *QueryResponsePayload) XXX_DiscardUnknown() {
xxx_messageInfo_QueryResponsePayload.DiscardUnknown(m)
}
var xxx_messageInfo_QueryResponsePayload proto.InternalMessageInfo
func (m *QueryResponsePayload) GetDevices() map[string]*_struct.Struct {
if m != nil {
return m.Devices
}
return nil
}
// Request type for the [`Sync`](#google.home.graph.v1.HomeGraphApiService.Sync)
// call. This should follow the same format as the Actions on Google
// `action.devices.SYNC`
// [request](/actions/smarthome/create-app#actiondevicessync) with the exception
// of the extra `agent_user_id` and no `intent` field.
type SyncRequest struct {
// Request ID used for debugging.
RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Required. Third-party user ID.
AgentUserId string `protobuf:"bytes,2,opt,name=agent_user_id,json=agentUserId,proto3" json:"agent_user_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SyncRequest) Reset() { *m = SyncRequest{} }
func (m *SyncRequest) String() string { return proto.CompactTextString(m) }
func (*SyncRequest) ProtoMessage() {}
func (*SyncRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{13}
}
func (m *SyncRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SyncRequest.Unmarshal(m, b)
}
func (m *SyncRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SyncRequest.Marshal(b, m, deterministic)
}
func (m *SyncRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_SyncRequest.Merge(m, src)
}
func (m *SyncRequest) XXX_Size() int {
return xxx_messageInfo_SyncRequest.Size(m)
}
func (m *SyncRequest) XXX_DiscardUnknown() {
xxx_messageInfo_SyncRequest.DiscardUnknown(m)
}
var xxx_messageInfo_SyncRequest proto.InternalMessageInfo
func (m *SyncRequest) GetRequestId() string {
if m != nil {
return m.RequestId
}
return ""
}
func (m *SyncRequest) GetAgentUserId() string {
if m != nil {
return m.AgentUserId
}
return ""
}
// Response type for the
// [`Sync`](#google.home.graph.v1.HomeGraphApiService.Sync) call. This should
// follow the same format as the Actions on Google `action.devices.SYNC`
// [response](/actions/smarthome/create-app#actiondevicessync).
// # Example
//
// ```json
// {
// "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
// "payload": {
// "agentUserId": "1836.15267389",
// "devices": [{
// "id": "123",
// "type": "action.devices.types.OUTLET",
// "traits": [
// "action.devices.traits.OnOff"
// ],
// "name": {
// "defaultNames": ["My Outlet 1234"],
// "name": "Night light",
// "nicknames": ["wall plug"]
// },
// "willReportState": false,
// "deviceInfo": {
// "manufacturer": "lights-out-inc",
// "model": "hs1234",
// "hwVersion": "3.2",
// "swVersion": "11.4"
// },
// "customData": {
// "fooValue": 74,
// "barValue": true,
// "bazValue": "foo"
// }
// }]
// }
// }
// ```
type SyncResponse struct {
// Request ID used for debugging. Copied from the request.
RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
// Devices associated with the third-party user.
Payload *SyncResponsePayload `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SyncResponse) Reset() { *m = SyncResponse{} }
func (m *SyncResponse) String() string { return proto.CompactTextString(m) }
func (*SyncResponse) ProtoMessage() {}
func (*SyncResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{14}
}
func (m *SyncResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SyncResponse.Unmarshal(m, b)
}
func (m *SyncResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SyncResponse.Marshal(b, m, deterministic)
}
func (m *SyncResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_SyncResponse.Merge(m, src)
}
func (m *SyncResponse) XXX_Size() int {
return xxx_messageInfo_SyncResponse.Size(m)
}
func (m *SyncResponse) XXX_DiscardUnknown() {
xxx_messageInfo_SyncResponse.DiscardUnknown(m)
}
var xxx_messageInfo_SyncResponse proto.InternalMessageInfo
func (m *SyncResponse) GetRequestId() string {
if m != nil {
return m.RequestId
}
return ""
}
func (m *SyncResponse) GetPayload() *SyncResponsePayload {
if m != nil {
return m.Payload
}
return nil
}
// Payload containing device information.
type SyncResponsePayload struct {
// Third-party user ID
AgentUserId string `protobuf:"bytes,1,opt,name=agent_user_id,json=agentUserId,proto3" json:"agent_user_id,omitempty"`
// Devices associated with the third-party user.
Devices []*Device `protobuf:"bytes,2,rep,name=devices,proto3" json:"devices,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SyncResponsePayload) Reset() { *m = SyncResponsePayload{} }
func (m *SyncResponsePayload) String() string { return proto.CompactTextString(m) }
func (*SyncResponsePayload) ProtoMessage() {}
func (*SyncResponsePayload) Descriptor() ([]byte, []int) {
return fileDescriptor_7c06ecdbcb0515e5, []int{15}
}
func (m *SyncResponsePayload) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SyncResponsePayload.Unmarshal(m, b)
}
func (m *SyncResponsePayload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SyncResponsePayload.Marshal(b, m, deterministic)
}
func (m *SyncResponsePayload) XXX_Merge(src proto.Message) {
xxx_messageInfo_SyncResponsePayload.Merge(m, src)
}
func (m *SyncResponsePayload) XXX_Size() int {
return xxx_messageInfo_SyncResponsePayload.Size(m)
}
func (m *SyncResponsePayload) XXX_DiscardUnknown() {
xxx_messageInfo_SyncResponsePayload.DiscardUnknown(m)
}
var xxx_messageInfo_SyncResponsePayload proto.InternalMessageInfo
func (m *SyncResponsePayload) GetAgentUserId() string {
if m != nil {
return m.AgentUserId
}
return ""
}
func (m *SyncResponsePayload) GetDevices() []*Device {
if m != nil {
return m.Devices
}
return nil
}
func init() {
proto.RegisterType((*RequestSyncDevicesRequest)(nil), "google.home.graph.v1.RequestSyncDevicesRequest")
proto.RegisterType((*RequestSyncDevicesResponse)(nil), "google.home.graph.v1.RequestSyncDevicesResponse")
proto.RegisterType((*ReportStateAndNotificationRequest)(nil), "google.home.graph.v1.ReportStateAndNotificationRequest")
proto.RegisterType((*ReportStateAndNotificationResponse)(nil), "google.home.graph.v1.ReportStateAndNotificationResponse")
proto.RegisterType((*StateAndNotificationPayload)(nil), "google.home.graph.v1.StateAndNotificationPayload")
proto.RegisterType((*ReportStateAndNotificationDevice)(nil), "google.home.graph.v1.ReportStateAndNotificationDevice")
proto.RegisterType((*DeleteAgentUserRequest)(nil), "google.home.graph.v1.DeleteAgentUserRequest")
proto.RegisterType((*QueryRequest)(nil), "google.home.graph.v1.QueryRequest")
proto.RegisterType((*QueryRequestInput)(nil), "google.home.graph.v1.QueryRequestInput")
proto.RegisterType((*QueryRequestPayload)(nil), "google.home.graph.v1.QueryRequestPayload")
proto.RegisterType((*AgentDeviceId)(nil), "google.home.graph.v1.AgentDeviceId")
proto.RegisterType((*QueryResponse)(nil), "google.home.graph.v1.QueryResponse")
proto.RegisterType((*QueryResponsePayload)(nil), "google.home.graph.v1.QueryResponsePayload")
proto.RegisterMapType((map[string]*_struct.Struct)(nil), "google.home.graph.v1.QueryResponsePayload.DevicesEntry")
proto.RegisterType((*SyncRequest)(nil), "google.home.graph.v1.SyncRequest")
proto.RegisterType((*SyncResponse)(nil), "google.home.graph.v1.SyncResponse")
proto.RegisterType((*SyncResponsePayload)(nil), "google.home.graph.v1.SyncResponsePayload")
}
func init() {
proto.RegisterFile("google/home/graph/v1/homegraph.proto", fileDescriptor_7c06ecdbcb0515e5)
}
var fileDescriptor_7c06ecdbcb0515e5 = []byte{
// 1030 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4f, 0x6f, 0xe3, 0x44,
0x14, 0x97, 0x9d, 0x6d, 0xbb, 0x3b, 0x69, 0xd8, 0xdd, 0xe9, 0xd2, 0xba, 0x69, 0x50, 0xd3, 0x29,
0xea, 0x66, 0x43, 0xb0, 0x69, 0x90, 0xba, 0x4b, 0x51, 0x91, 0xdc, 0x66, 0x05, 0xb9, 0xa0, 0x6e,
0xb2, 0x95, 0x10, 0x12, 0x8a, 0xdc, 0x78, 0x9a, 0x58, 0x9b, 0x78, 0x5c, 0x7b, 0x12, 0x14, 0xa1,
0x95, 0x10, 0x12, 0x27, 0x38, 0x20, 0xb8, 0xc2, 0x27, 0xe0, 0x23, 0x20, 0xf1, 0x01, 0xb8, 0x72,
0xeb, 0x69, 0x0f, 0x9c, 0x38, 0xf0, 0x01, 0x38, 0xa1, 0xf9, 0x93, 0xd8, 0x49, 0xec, 0xc4, 0x2b,
0x71, 0xf3, 0xcc, 0xfb, 0xf7, 0x7b, 0xef, 0xfd, 0xe6, 0x3d, 0x83, 0xb7, 0x3b, 0x84, 0x74, 0x7a,
0xd8, 0xe8, 0x92, 0x3e, 0x36, 0x3a, 0xbe, 0xe5, 0x75, 0x8d, 0xe1, 0x21, 0x3f, 0xf1, 0x83, 0xee,
0xf9, 0x84, 0x12, 0xf8, 0x40, 0x68, 0xe9, 0xec, 0x5e, 0x17, 0x82, 0xe1, 0x61, 0xbe, 0x20, 0x6d,
0x2d, 0xcf, 0x31, 0x2c, 0xd7, 0x25, 0xd4, 0xa2, 0x0e, 0x71, 0x03, 0x61, 0x93, 0xdf, 0x8a, 0x48,
0xdb, 0x3d, 0x07, 0xbb, 0x54, 0x0a, 0x76, 0x23, 0x82, 0x2b, 0x07, 0xf7, 0xec, 0xd6, 0x25, 0xee,
0x5a, 0x43, 0x87, 0xf8, 0x52, 0x61, 0x3b, 0xa2, 0xe0, 0xe3, 0x80, 0x0c, 0xfc, 0x36, 0x96, 0xa2,
0xbd, 0x58, 0xb8, 0x36, 0x1e, 0x3a, 0x13, 0x95, 0x1d, 0xa9, 0xc2, 0x4f, 0x97, 0x83, 0x2b, 0x03,
0xf7, 0x3d, 0x3a, 0x92, 0xc2, 0xc2, 0xac, 0x30, 0xa0, 0xfe, 0xa0, 0x2d, 0x91, 0xa1, 0x16, 0xd8,
0x6e, 0xe0, 0xeb, 0x01, 0x0e, 0x68, 0x73, 0xe4, 0xb6, 0x6b, 0xdc, 0x6b, 0x20, 0x6f, 0xe0, 0x43,
0x90, 0xb3, 0x3a, 0xd8, 0xa5, 0xad, 0x41, 0x80, 0xfd, 0x96, 0x63, 0x6b, 0x4a, 0x51, 0x29, 0xdd,
0x39, 0xcd, 0xbc, 0x32, 0xd5, 0x46, 0x96, 0x4b, 0x2e, 0x02, 0xec, 0xd7, 0x6d, 0xb8, 0x0d, 0x56,
0xac, 0x60, 0xe4, 0xb6, 0x35, 0xb5, 0xa8, 0x94, 0x6e, 0x33, 0x05, 0xa5, 0x21, 0x6e, 0x50, 0x01,
0xe4, 0xe3, 0x02, 0x04, 0x1e, 0x71, 0x03, 0x8c, 0xbe, 0x56, 0xc1, 0x5e, 0x03, 0x7b, 0xc4, 0xa7,
0x4d, 0x6a, 0x51, 0x6c, 0xba, 0xf6, 0xa7, 0x84, 0x3a, 0x57, 0x4e, 0x9b, 0xd7, 0x75, 0x8c, 0xe3,
0x2d, 0x00, 0x7c, 0xf1, 0x39, 0x01, 0xd1, 0xb8, 0x23, 0x6f, 0x78, 0xf4, 0xdb, 0x78, 0xc8, 0x60,
0x3a, 0xb6, 0x76, 0x8b, 0x0b, 0xd7, 0xf8, 0xb9, 0x6e, 0xcf, 0x67, 0xa0, 0x26, 0x64, 0x70, 0x00,
0xee, 0x5e, 0x91, 0x5e, 0x8f, 0x7c, 0xd9, 0x1a, 0x78, 0x2d, 0x4a, 0x5e, 0x60, 0x57, 0x5b, 0xe1,
0xae, 0x72, 0xe2, 0xfa, 0xc2, 0x7b, 0xce, 0x2e, 0xe1, 0x39, 0x58, 0xf3, 0xac, 0x51, 0x8f, 0x58,
0xb6, 0x96, 0x29, 0x2a, 0xa5, 0x6c, 0xf5, 0x50, 0x8f, 0x23, 0x8a, 0x1e, 0x97, 0xce, 0xb9, 0x30,
0x14, 0xd1, 0xc7, 0x6e, 0xd0, 0x19, 0x40, 0x8b, 0x2a, 0x20, 0x0a, 0xb5, 0xa4, 0x04, 0x88, 0x80,
0x9d, 0x05, 0x11, 0x19, 0x6a, 0x41, 0x98, 0x80, 0x9b, 0x66, 0xab, 0x47, 0xf1, 0xa8, 0x93, 0x81,
0x88, 0xc6, 0x35, 0xc6, 0x6e, 0xd0, 0x8f, 0x0a, 0x28, 0x2e, 0xd3, 0x86, 0x06, 0x58, 0x0d, 0x98,
0x74, 0x1c, 0x75, 0x6b, 0x1c, 0x75, 0xcc, 0x45, 0xbd, 0xc9, 0xb9, 0xd8, 0x90, 0x6a, 0xf0, 0x04,
0xe4, 0xdc, 0x88, 0x9b, 0x80, 0xb7, 0x6b, 0x81, 0xdd, 0xb4, 0x36, 0xfa, 0x4e, 0x01, 0x9b, 0x35,
0xdc, 0xc3, 0x14, 0x9b, 0xe3, 0xd6, 0xa6, 0xa4, 0x50, 0x23, 0x9e, 0x27, 0xfa, 0x2b, 0x53, 0xfd,
0xd7, 0x2c, 0x81, 0x83, 0x70, 0x3a, 0x08, 0x24, 0x96, 0xe7, 0x04, 0x7a, 0x9b, 0xf4, 0x8d, 0x49,
0xa0, 0x73, 0x8b, 0x76, 0xa7, 0x28, 0x85, 0x7e, 0x56, 0xc0, 0xfa, 0xb3, 0x01, 0xf6, 0x47, 0x29,
0x31, 0xa4, 0xe6, 0x6a, 0x0d, 0xac, 0x3a, 0xae, 0x37, 0xa0, 0x81, 0x96, 0x29, 0x66, 0x4a, 0xd9,
0xea, 0xc3, 0xf8, 0x66, 0x46, 0x63, 0xd7, 0x99, 0xbe, 0x70, 0x25, 0x6d, 0xd1, 0x67, 0xe0, 0xfe,
0x9c, 0x06, 0x3c, 0x0b, 0xe9, 0x2d, 0x5a, 0xf6, 0x68, 0xb9, 0x6f, 0x49, 0xb2, 0x90, 0xd1, 0xcf,
0xc1, 0x46, 0x8c, 0x1c, 0x9e, 0x44, 0x49, 0xc8, 0x70, 0xef, 0xc7, 0xfb, 0xe6, 0x25, 0x15, 0x0c,
0xaa, 0xdb, 0x21, 0xe3, 0x76, 0x41, 0x6e, 0x4a, 0x02, 0xdf, 0x00, 0xea, 0xa4, 0x8c, 0xaa, 0x63,
0x23, 0x0a, 0x72, 0x32, 0x6c, 0xaa, 0x37, 0x03, 0x6b, 0x61, 0xae, 0x82, 0x66, 0xe5, 0x85, 0xb9,
0x0a, 0xa7, 0x73, 0xc9, 0xfe, 0xae, 0x80, 0x07, 0x71, 0x1a, 0xf0, 0xd9, 0x6c, 0xba, 0x8f, 0xd3,
0xbb, 0xd7, 0xe5, 0x9c, 0x7c, 0xea, 0x52, 0x7f, 0x34, 0x29, 0x41, 0xbe, 0x09, 0xd6, 0xa3, 0x02,
0x78, 0x0f, 0x64, 0x5e, 0xe0, 0x91, 0xcc, 0x8c, 0x7d, 0xc2, 0x77, 0xc1, 0xca, 0xd0, 0xea, 0x0d,
0xf0, 0xb2, 0x87, 0x23, 0xb4, 0x8e, 0xd5, 0x27, 0x0a, 0xba, 0x00, 0x59, 0x36, 0x99, 0xff, 0x67,
0x92, 0x22, 0x1f, 0xac, 0x0b, 0xb7, 0xe9, 0x9a, 0x71, 0x36, 0xdb, 0x8c, 0x04, 0xe2, 0x45, 0x7d,
0xce, 0xf5, 0xe2, 0x1a, 0x6c, 0xc4, 0xc8, 0x21, 0x8a, 0x5d, 0x63, 0xd3, 0x6f, 0xea, 0x28, 0xec,
0x96, 0xca, 0xbb, 0x55, 0x88, 0x8f, 0x3f, 0x33, 0x07, 0xab, 0xdf, 0xaf, 0x81, 0x8d, 0x4f, 0x48,
0x1f, 0x7f, 0xcc, 0x14, 0x4c, 0xcf, 0x69, 0x62, 0x9f, 0x8f, 0xbe, 0x5f, 0x15, 0x00, 0xe7, 0xf7,
0x1e, 0x34, 0x92, 0xe6, 0x6e, 0xc2, 0x0a, 0xce, 0xbf, 0x97, 0xde, 0x40, 0xae, 0xd4, 0xea, 0x8d,
0x39, 0x9d, 0xee, 0x37, 0x7f, 0xfe, 0xf5, 0x93, 0x5a, 0x40, 0x5b, 0xe1, 0x6f, 0x43, 0x70, 0xec,
0x87, 0xf6, 0xc7, 0x4a, 0x19, 0xfe, 0xa3, 0xb0, 0x2d, 0x9d, 0x34, 0xcd, 0xe1, 0xe3, 0xd7, 0xdd,
0x16, 0x63, 0xf4, 0x4f, 0x5e, 0xdf, 0x50, 0x66, 0xf1, 0xc5, 0x8d, 0xf9, 0x28, 0xe4, 0x4b, 0x65,
0xbc, 0xdf, 0x2b, 0x53, 0x99, 0x55, 0x64, 0xe3, 0x79, 0x86, 0xef, 0xa0, 0x83, 0xe9, 0x0c, 0x93,
0x62, 0xb0, 0x84, 0x7f, 0x51, 0xc0, 0xdd, 0x99, 0x4d, 0x01, 0x2b, 0x49, 0x1d, 0x8f, 0x5b, 0x28,
0xf9, 0xcd, 0xb9, 0xa7, 0xf5, 0x94, 0xfd, 0x74, 0xa1, 0xda, 0x8d, 0xa9, 0x45, 0x80, 0xcf, 0x77,
0x62, 0xbf, 0xbc, 0xc7, 0x70, 0x7e, 0x35, 0x25, 0x39, 0x99, 0x70, 0x31, 0x30, 0xca, 0xe5, 0x97,
0xf0, 0x07, 0x05, 0xac, 0xf0, 0xc1, 0x00, 0xd1, 0xf2, 0x01, 0x9c, 0xdf, 0x4f, 0x31, 0x59, 0xd0,
0x47, 0x37, 0xe6, 0x6e, 0x12, 0xb0, 0x8a, 0xd8, 0x09, 0x1c, 0xdf, 0x26, 0xba, 0x1f, 0xad, 0xe3,
0x35, 0x73, 0xc2, 0x4a, 0xf6, 0xad, 0x02, 0x6e, 0x31, 0xbe, 0xc0, 0xbd, 0x45, 0x2f, 0x53, 0x00,
0x42, 0xcb, 0x1f, 0x2f, 0x3a, 0x5a, 0x56, 0xa8, 0x37, 0xd1, 0xbd, 0x28, 0x90, 0x40, 0x70, 0x35,
0xbf, 0xf3, 0x87, 0xa9, 0x25, 0xad, 0xe3, 0xd3, 0xdf, 0x94, 0xbf, 0xcd, 0x7a, 0xda, 0x75, 0x0d,
0x77, 0x23, 0x55, 0x8f, 0xf6, 0xc3, 0xb3, 0x68, 0xf7, 0xa4, 0x5c, 0x7e, 0x09, 0xb4, 0x36, 0xe9,
0xc7, 0xa6, 0x72, 0xaa, 0xc5, 0x3c, 0xfa, 0x73, 0xc6, 0x84, 0xcf, 0x3f, 0x90, 0xfa, 0x1d, 0xd2,
0xb3, 0xdc, 0x8e, 0x4e, 0xfc, 0x8e, 0xd1, 0xc1, 0x2e, 0x67, 0x89, 0x11, 0xa2, 0x99, 0xfe, 0x9d,
0xff, 0x90, 0x7f, 0x5c, 0xae, 0x72, 0xad, 0xf7, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x1f, 0xaa,
0x0a, 0xd7, 0xa2, 0x0c, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6
// HomeGraphApiServiceClient is the client API for HomeGraphApiService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type HomeGraphApiServiceClient interface {
// Requests a `SYNC` call from Google to a 3p partner's home control agent for
// a user.
//
//
// The third-party user's identity is passed in as `agent_user_id`
// (see [RequestSyncDevicesRequest][google.home.graph.v1.RequestSyncDevicesRequest]) and forwarded back to the agent.
// The agent is identified by the API key or JWT signed by the partner's
// service account.
RequestSyncDevices(ctx context.Context, in *RequestSyncDevicesRequest, opts ...grpc.CallOption) (*RequestSyncDevicesResponse, error)
// Reports device state and optionally sends device notifications. Called by
// an agent when the device state of a third-party changes or the agent wants
// to send a notification about the device. See
// [Implement Report State](/actions/smarthome/report-state) for more
// information.
// This method updates a predefined set of states for a device, which all
// devices have according to their prescribed traits (for example, a light
// will have the [OnOff](/actions/smarthome/traits/onoff) trait that reports
// the state `on` as a boolean value).
// A new state may not be created and an INVALID_ARGUMENT code will be thrown
// if so. It also optionally takes in a list of Notifications that may be
// created, which are associated to this state change.
//
// The third-party user's identity is passed in as `agent_user_id`.
// The agent is identified by the JWT signed by the partner's service account.
ReportStateAndNotification(ctx context.Context, in *ReportStateAndNotificationRequest, opts ...grpc.CallOption) (*ReportStateAndNotificationResponse, error)
// Unlinks an agent user from Google. As a result, all data related to this
// user will be deleted.
//
// Here is how the agent user is created in Google:
//
// 1. When a user opens their Google Home App, they can begin linking a 3p
// partner.
// 2. User is guided through the OAuth process.
// 3. After entering the 3p credentials, Google gets the 3p OAuth token and
// uses it to make a Sync call to the 3p partner and gets back all of the
// user's data, including `agent_user_id` and devices.
// 4. Google creates the agent user and stores a mapping from the
// `agent_user_id` -> Google ID mapping. Google also
// stores all of the user's devices under that Google ID.
//
// The mapping from `agent_user_id` to Google ID is many to many, since one
// Google user can have multiple 3p accounts, and multiple Google users can
// map to one `agent_user_id` (e.g., a husband and wife share one Nest account
// username/password).
//
// The third-party user's identity is passed in as `agent_user_id`.
// The agent is identified by the JWT signed by the partner's service account.
//
// Note: Special characters (except "/") in `agent_user_id` must be
// URL-encoded.
DeleteAgentUser(ctx context.Context, in *DeleteAgentUserRequest, opts ...grpc.CallOption) (*empty.Empty, error)
// Gets the device states for the devices in [QueryRequest][google.home.graph.v1.QueryRequest].
// The third-party user's identity is passed in as `agent_user_id`. The agent
// is identified by the JWT signed by the third-party partner's service
// account.
Query(ctx context.Context, in *QueryRequest, opts ...grpc.CallOption) (*QueryResponse, error)
// Gets all the devices associated with the given third-party user.
// The third-party user's identity is passed in as `agent_user_id`. The agent
// is identified by the JWT signed by the third-party partner's service
// account.
Sync(ctx context.Context, in *SyncRequest, opts ...grpc.CallOption) (*SyncResponse, error)
}
type homeGraphApiServiceClient struct {
cc grpc.ClientConnInterface
}
func NewHomeGraphApiServiceClient(cc grpc.ClientConnInterface) HomeGraphApiServiceClient {
return &homeGraphApiServiceClient{cc}
}
func (c *homeGraphApiServiceClient) RequestSyncDevices(ctx context.Context, in *RequestSyncDevicesRequest, opts ...grpc.CallOption) (*RequestSyncDevicesResponse, error) {
out := new(RequestSyncDevicesResponse)
err := c.cc.Invoke(ctx, "/google.home.graph.v1.HomeGraphApiService/RequestSyncDevices", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *homeGraphApiServiceClient) ReportStateAndNotification(ctx context.Context, in *ReportStateAndNotificationRequest, opts ...grpc.CallOption) (*ReportStateAndNotificationResponse, error) {
out := new(ReportStateAndNotificationResponse)
err := c.cc.Invoke(ctx, "/google.home.graph.v1.HomeGraphApiService/ReportStateAndNotification", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *homeGraphApiServiceClient) DeleteAgentUser(ctx context.Context, in *DeleteAgentUserRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
out := new(empty.Empty)
err := c.cc.Invoke(ctx, "/google.home.graph.v1.HomeGraphApiService/DeleteAgentUser", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *homeGraphApiServiceClient) Query(ctx context.Context, in *QueryRequest, opts ...grpc.CallOption) (*QueryResponse, error) {
out := new(QueryResponse)
err := c.cc.Invoke(ctx, "/google.home.graph.v1.HomeGraphApiService/Query", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *homeGraphApiServiceClient) Sync(ctx context.Context, in *SyncRequest, opts ...grpc.CallOption) (*SyncResponse, error) {
out := new(SyncResponse)
err := c.cc.Invoke(ctx, "/google.home.graph.v1.HomeGraphApiService/Sync", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// HomeGraphApiServiceServer is the server API for HomeGraphApiService service.
type HomeGraphApiServiceServer interface {
// Requests a `SYNC` call from Google to a 3p partner's home control agent for
// a user.
//
//
// The third-party user's identity is passed in as `agent_user_id`
// (see [RequestSyncDevicesRequest][google.home.graph.v1.RequestSyncDevicesRequest]) and forwarded back to the agent.
// The agent is identified by the API key or JWT signed by the partner's
// service account.
RequestSyncDevices(context.Context, *RequestSyncDevicesRequest) (*RequestSyncDevicesResponse, error)
// Reports device state and optionally sends device notifications. Called by
// an agent when the device state of a third-party changes or the agent wants
// to send a notification about the device. See
// [Implement Report State](/actions/smarthome/report-state) for more
// information.
// This method updates a predefined set of states for a device, which all
// devices have according to their prescribed traits (for example, a light
// will have the [OnOff](/actions/smarthome/traits/onoff) trait that reports
// the state `on` as a boolean value).
// A new state may not be created and an INVALID_ARGUMENT code will be thrown
// if so. It also optionally takes in a list of Notifications that may be
// created, which are associated to this state change.
//
// The third-party user's identity is passed in as `agent_user_id`.
// The agent is identified by the JWT signed by the partner's service account.
ReportStateAndNotification(context.Context, *ReportStateAndNotificationRequest) (*ReportStateAndNotificationResponse, error)
// Unlinks an agent user from Google. As a result, all data related to this
// user will be deleted.
//
// Here is how the agent user is created in Google:
//
// 1. When a user opens their Google Home App, they can begin linking a 3p
// partner.
// 2. User is guided through the OAuth process.
// 3. After entering the 3p credentials, Google gets the 3p OAuth token and
// uses it to make a Sync call to the 3p partner and gets back all of the
// user's data, including `agent_user_id` and devices.
// 4. Google creates the agent user and stores a mapping from the
// `agent_user_id` -> Google ID mapping. Google also
// stores all of the user's devices under that Google ID.
//
// The mapping from `agent_user_id` to Google ID is many to many, since one
// Google user can have multiple 3p accounts, and multiple Google users can
// map to one `agent_user_id` (e.g., a husband and wife share one Nest account
// username/password).
//
// The third-party user's identity is passed in as `agent_user_id`.
// The agent is identified by the JWT signed by the partner's service account.
//
// Note: Special characters (except "/") in `agent_user_id` must be
// URL-encoded.
DeleteAgentUser(context.Context, *DeleteAgentUserRequest) (*empty.Empty, error)
// Gets the device states for the devices in [QueryRequest][google.home.graph.v1.QueryRequest].
// The third-party user's identity is passed in as `agent_user_id`. The agent
// is identified by the JWT signed by the third-party partner's service
// account.
Query(context.Context, *QueryRequest) (*QueryResponse, error)
// Gets all the devices associated with the given third-party user.
// The third-party user's identity is passed in as `agent_user_id`. The agent
// is identified by the JWT signed by the third-party partner's service
// account.
Sync(context.Context, *SyncRequest) (*SyncResponse, error)
}
// UnimplementedHomeGraphApiServiceServer can be embedded to have forward compatible implementations.
type UnimplementedHomeGraphApiServiceServer struct {
}
func (*UnimplementedHomeGraphApiServiceServer) RequestSyncDevices(ctx context.Context, req *RequestSyncDevicesRequest) (*RequestSyncDevicesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method RequestSyncDevices not implemented")
}
func (*UnimplementedHomeGraphApiServiceServer) ReportStateAndNotification(ctx context.Context, req *ReportStateAndNotificationRequest) (*ReportStateAndNotificationResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ReportStateAndNotification not implemented")
}
func (*UnimplementedHomeGraphApiServiceServer) DeleteAgentUser(ctx context.Context, req *DeleteAgentUserRequest) (*empty.Empty, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteAgentUser not implemented")
}
func (*UnimplementedHomeGraphApiServiceServer) Query(ctx context.Context, req *QueryRequest) (*QueryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Query not implemented")
}
func (*UnimplementedHomeGraphApiServiceServer) Sync(ctx context.Context, req *SyncRequest) (*SyncResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Sync not implemented")
}
func RegisterHomeGraphApiServiceServer(s *grpc.Server, srv HomeGraphApiServiceServer) {
s.RegisterService(&_HomeGraphApiService_serviceDesc, srv)
}
func _HomeGraphApiService_RequestSyncDevices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(RequestSyncDevicesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(HomeGraphApiServiceServer).RequestSyncDevices(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.home.graph.v1.HomeGraphApiService/RequestSyncDevices",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(HomeGraphApiServiceServer).RequestSyncDevices(ctx, req.(*RequestSyncDevicesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _HomeGraphApiService_ReportStateAndNotification_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ReportStateAndNotificationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(HomeGraphApiServiceServer).ReportStateAndNotification(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.home.graph.v1.HomeGraphApiService/ReportStateAndNotification",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(HomeGraphApiServiceServer).ReportStateAndNotification(ctx, req.(*ReportStateAndNotificationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _HomeGraphApiService_DeleteAgentUser_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteAgentUserRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(HomeGraphApiServiceServer).DeleteAgentUser(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.home.graph.v1.HomeGraphApiService/DeleteAgentUser",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(HomeGraphApiServiceServer).DeleteAgentUser(ctx, req.(*DeleteAgentUserRequest))
}
return interceptor(ctx, in, info, handler)
}
func _HomeGraphApiService_Query_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(QueryRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(HomeGraphApiServiceServer).Query(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.home.graph.v1.HomeGraphApiService/Query",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(HomeGraphApiServiceServer).Query(ctx, req.(*QueryRequest))
}
return interceptor(ctx, in, info, handler)
}
func _HomeGraphApiService_Sync_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(SyncRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(HomeGraphApiServiceServer).Sync(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.home.graph.v1.HomeGraphApiService/Sync",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(HomeGraphApiServiceServer).Sync(ctx, req.(*SyncRequest))
}
return interceptor(ctx, in, info, handler)
}
var _HomeGraphApiService_serviceDesc = grpc.ServiceDesc{
ServiceName: "google.home.graph.v1.HomeGraphApiService",
HandlerType: (*HomeGraphApiServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "RequestSyncDevices",
Handler: _HomeGraphApiService_RequestSyncDevices_Handler,
},
{
MethodName: "ReportStateAndNotification",
Handler: _HomeGraphApiService_ReportStateAndNotification_Handler,
},
{
MethodName: "DeleteAgentUser",
Handler: _HomeGraphApiService_DeleteAgentUser_Handler,
},
{
MethodName: "Query",
Handler: _HomeGraphApiService_Query_Handler,
},
{
MethodName: "Sync",
Handler: _HomeGraphApiService_Sync_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "google/home/graph/v1/homegraph.proto",
}