1// Copyright 2020 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Code generated by protoc-gen-go. DO NOT EDIT.
16// versions:
17// 	protoc-gen-go v1.26.0
18// 	protoc        v3.12.2
19// source: google/actions/sdk/v2/interactionmodel/scene.proto
20
21package interactionmodel
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
28	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
29)
30
31const (
32	// Verify that this generated code is sufficiently up-to-date.
33	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
34	// Verify that runtime/protoimpl is sufficiently up-to-date.
35	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
36)
37
38// Scene is the basic unit of control flow when designing a conversation. They
39// can be chained together with other scenes, generate prompts for the end user,
40// and define slots.
41// The scene name is specified in the name of the file.
42type Scene struct {
43	state         protoimpl.MessageState
44	sizeCache     protoimpl.SizeCache
45	unknownFields protoimpl.UnknownFields
46
47	// Handler to invoke when transitioning into this scene.
48	OnEnter *EventHandler `protobuf:"bytes,1,opt,name=on_enter,json=onEnter,proto3" json:"on_enter,omitempty"`
49	// The list of events that trigger based on intents. These events can
50	// be triggered at any time after the on_load Handler has been called.
51	// Important - these events define the set of intents which are scoped to
52	// this scene and will take precedence over any globally defined events that
53	// have the same intents or their triggering phrases. Intent names must be
54	// unique within a scene.
55	IntentEvents []*IntentEvent `protobuf:"bytes,2,rep,name=intent_events,json=intentEvents,proto3" json:"intent_events,omitempty"`
56	// The list of events to trigger based on conditional statements. These are
57	// evaluated after the form has been filled or immediately after on_load if
58	// this scene does not have a form (evaluation is only done once). Only the
59	// first matching event will be triggered.
60	ConditionalEvents []*ConditionalEvent `protobuf:"bytes,3,rep,name=conditional_events,json=conditionalEvents,proto3" json:"conditional_events,omitempty"`
61	// Ordered list of slots. Each slot defines the type of data
62	// that it will resolve and configuration to customize the experience of this
63	// resolution (e.g. prompts).
64	Slots []*Slot `protobuf:"bytes,4,rep,name=slots,proto3" json:"slots,omitempty"`
65	// Handler called when there is a change in state of a slot not
66	// caused by updates within another Handler. This allows slots to be
67	// invalidated, the scene invalidated or other changes to scene state.
68	OnSlotUpdated *EventHandler `protobuf:"bytes,5,opt,name=on_slot_updated,json=onSlotUpdated,proto3" json:"on_slot_updated,omitempty"`
69}
70
71func (x *Scene) Reset() {
72	*x = Scene{}
73	if protoimpl.UnsafeEnabled {
74		mi := &file_google_actions_sdk_v2_interactionmodel_scene_proto_msgTypes[0]
75		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
76		ms.StoreMessageInfo(mi)
77	}
78}
79
80func (x *Scene) String() string {
81	return protoimpl.X.MessageStringOf(x)
82}
83
84func (*Scene) ProtoMessage() {}
85
86func (x *Scene) ProtoReflect() protoreflect.Message {
87	mi := &file_google_actions_sdk_v2_interactionmodel_scene_proto_msgTypes[0]
88	if protoimpl.UnsafeEnabled && x != nil {
89		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
90		if ms.LoadMessageInfo() == nil {
91			ms.StoreMessageInfo(mi)
92		}
93		return ms
94	}
95	return mi.MessageOf(x)
96}
97
98// Deprecated: Use Scene.ProtoReflect.Descriptor instead.
99func (*Scene) Descriptor() ([]byte, []int) {
100	return file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescGZIP(), []int{0}
101}
102
103func (x *Scene) GetOnEnter() *EventHandler {
104	if x != nil {
105		return x.OnEnter
106	}
107	return nil
108}
109
110func (x *Scene) GetIntentEvents() []*IntentEvent {
111	if x != nil {
112		return x.IntentEvents
113	}
114	return nil
115}
116
117func (x *Scene) GetConditionalEvents() []*ConditionalEvent {
118	if x != nil {
119		return x.ConditionalEvents
120	}
121	return nil
122}
123
124func (x *Scene) GetSlots() []*Slot {
125	if x != nil {
126		return x.Slots
127	}
128	return nil
129}
130
131func (x *Scene) GetOnSlotUpdated() *EventHandler {
132	if x != nil {
133		return x.OnSlotUpdated
134	}
135	return nil
136}
137
138var File_google_actions_sdk_v2_interactionmodel_scene_proto protoreflect.FileDescriptor
139
140var file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDesc = []byte{
141	0x0a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
142	0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x32, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74,
143	0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x2e, 0x70,
144	0x72, 0x6f, 0x74, 0x6f, 0x12, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x63, 0x74,
145	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x73, 0x64, 0x6b, 0x2e, 0x76, 0x32, 0x2e, 0x69, 0x6e, 0x74, 0x65,
146	0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0x3e, 0x67, 0x6f,
147	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x64, 0x6b,
148	0x2f, 0x76, 0x32, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d,
149	0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
150	0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3a, 0x67, 0x6f,
151	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x64, 0x6b,
152	0x2f, 0x76, 0x32, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d,
153	0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c,
154	0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x39, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
155	0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x32, 0x2f,
156	0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
157	0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
158	0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x63, 0x74, 0x69,
159	0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x32, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72,
160	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2f, 0x73, 0x6c, 0x6f, 0x74,
161	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbd, 0x03, 0x0a, 0x05, 0x53, 0x63, 0x65, 0x6e, 0x65,
162	0x12, 0x4f, 0x0a, 0x08, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
163	0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x63, 0x74, 0x69,
164	0x6f, 0x6e, 0x73, 0x2e, 0x73, 0x64, 0x6b, 0x2e, 0x76, 0x32, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72,
165	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e,
166	0x74, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x52, 0x07, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x65,
167	0x72, 0x12, 0x58, 0x0a, 0x0d, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x76, 0x65, 0x6e,
168	0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
169	0x65, 0x2e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x73, 0x64, 0x6b, 0x2e, 0x76, 0x32,
170	0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65,
171	0x6c, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x69,
172	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x67, 0x0a, 0x12, 0x63,
173	0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74,
174	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
175	0x2e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x73, 0x64, 0x6b, 0x2e, 0x76, 0x32, 0x2e,
176	0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
177	0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e,
178	0x74, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x45, 0x76,
179	0x65, 0x6e, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x04, 0x20,
180	0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x63, 0x74,
181	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x73, 0x64, 0x6b, 0x2e, 0x76, 0x32, 0x2e, 0x69, 0x6e, 0x74, 0x65,
182	0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x53, 0x6c, 0x6f,
183	0x74, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x5c, 0x0a, 0x0f, 0x6f, 0x6e, 0x5f, 0x73,
184	0x6c, 0x6f, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
185	0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x63, 0x74, 0x69, 0x6f,
186	0x6e, 0x73, 0x2e, 0x73, 0x64, 0x6b, 0x2e, 0x76, 0x32, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61,
187	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74,
188	0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x52, 0x0d, 0x6f, 0x6e, 0x53, 0x6c, 0x6f, 0x74, 0x55,
189	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x92, 0x01, 0x0a, 0x2a, 0x63, 0x6f, 0x6d, 0x2e, 0x67,
190	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x73, 0x64,
191	0x6b, 0x2e, 0x76, 0x32, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
192	0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x0a, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x50, 0x72, 0x6f, 0x74,
193	0x6f, 0x50, 0x01, 0x5a, 0x56, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61,
194	0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
195	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x63, 0x74, 0x69, 0x6f,
196	0x6e, 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x32, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61,
197	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x3b, 0x69, 0x6e, 0x74, 0x65, 0x72,
198	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x62, 0x06, 0x70, 0x72, 0x6f,
199	0x74, 0x6f, 0x33,
200}
201
202var (
203	file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescOnce sync.Once
204	file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescData = file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDesc
205)
206
207func file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescGZIP() []byte {
208	file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescOnce.Do(func() {
209		file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescData)
210	})
211	return file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDescData
212}
213
214var file_google_actions_sdk_v2_interactionmodel_scene_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
215var file_google_actions_sdk_v2_interactionmodel_scene_proto_goTypes = []interface{}{
216	(*Scene)(nil),            // 0: google.actions.sdk.v2.interactionmodel.Scene
217	(*EventHandler)(nil),     // 1: google.actions.sdk.v2.interactionmodel.EventHandler
218	(*IntentEvent)(nil),      // 2: google.actions.sdk.v2.interactionmodel.IntentEvent
219	(*ConditionalEvent)(nil), // 3: google.actions.sdk.v2.interactionmodel.ConditionalEvent
220	(*Slot)(nil),             // 4: google.actions.sdk.v2.interactionmodel.Slot
221}
222var file_google_actions_sdk_v2_interactionmodel_scene_proto_depIdxs = []int32{
223	1, // 0: google.actions.sdk.v2.interactionmodel.Scene.on_enter:type_name -> google.actions.sdk.v2.interactionmodel.EventHandler
224	2, // 1: google.actions.sdk.v2.interactionmodel.Scene.intent_events:type_name -> google.actions.sdk.v2.interactionmodel.IntentEvent
225	3, // 2: google.actions.sdk.v2.interactionmodel.Scene.conditional_events:type_name -> google.actions.sdk.v2.interactionmodel.ConditionalEvent
226	4, // 3: google.actions.sdk.v2.interactionmodel.Scene.slots:type_name -> google.actions.sdk.v2.interactionmodel.Slot
227	1, // 4: google.actions.sdk.v2.interactionmodel.Scene.on_slot_updated:type_name -> google.actions.sdk.v2.interactionmodel.EventHandler
228	5, // [5:5] is the sub-list for method output_type
229	5, // [5:5] is the sub-list for method input_type
230	5, // [5:5] is the sub-list for extension type_name
231	5, // [5:5] is the sub-list for extension extendee
232	0, // [0:5] is the sub-list for field type_name
233}
234
235func init() { file_google_actions_sdk_v2_interactionmodel_scene_proto_init() }
236func file_google_actions_sdk_v2_interactionmodel_scene_proto_init() {
237	if File_google_actions_sdk_v2_interactionmodel_scene_proto != nil {
238		return
239	}
240	file_google_actions_sdk_v2_interactionmodel_conditional_event_proto_init()
241	file_google_actions_sdk_v2_interactionmodel_event_handler_proto_init()
242	file_google_actions_sdk_v2_interactionmodel_intent_event_proto_init()
243	file_google_actions_sdk_v2_interactionmodel_slot_proto_init()
244	if !protoimpl.UnsafeEnabled {
245		file_google_actions_sdk_v2_interactionmodel_scene_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
246			switch v := v.(*Scene); i {
247			case 0:
248				return &v.state
249			case 1:
250				return &v.sizeCache
251			case 2:
252				return &v.unknownFields
253			default:
254				return nil
255			}
256		}
257	}
258	type x struct{}
259	out := protoimpl.TypeBuilder{
260		File: protoimpl.DescBuilder{
261			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
262			RawDescriptor: file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDesc,
263			NumEnums:      0,
264			NumMessages:   1,
265			NumExtensions: 0,
266			NumServices:   0,
267		},
268		GoTypes:           file_google_actions_sdk_v2_interactionmodel_scene_proto_goTypes,
269		DependencyIndexes: file_google_actions_sdk_v2_interactionmodel_scene_proto_depIdxs,
270		MessageInfos:      file_google_actions_sdk_v2_interactionmodel_scene_proto_msgTypes,
271	}.Build()
272	File_google_actions_sdk_v2_interactionmodel_scene_proto = out.File
273	file_google_actions_sdk_v2_interactionmodel_scene_proto_rawDesc = nil
274	file_google_actions_sdk_v2_interactionmodel_scene_proto_goTypes = nil
275	file_google_actions_sdk_v2_interactionmodel_scene_proto_depIdxs = nil
276}
277