123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246 |
- // Copyright 2020 Google LLC
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- syntax = "proto3";
- package google.actions.sdk.v2;
- import "google/actions/sdk/v2/conversation/intent.proto";
- import "google/actions/sdk/v2/conversation/prompt/prompt.proto";
- import "google/actions/sdk/v2/conversation/scene.proto";
- import "google/protobuf/struct.proto";
- import "google/protobuf/timestamp.proto";
- import "google/rpc/status.proto";
- option go_package = "google.golang.org/genproto/googleapis/actions/sdk/v2;sdk";
- option java_multiple_files = true;
- option java_outer_classname = "EventLogsProto";
- option java_package = "com.google.actions.sdk.v2";
- // Contains information about execution event which happened during processing
- // Actions Builder conversation request. For an overview of the stages involved
- // in a conversation request, see
- // https://developers.google.com/assistant/conversational/actions.
- message ExecutionEvent {
- // Timestamp when the event happened.
- google.protobuf.Timestamp event_time = 1;
- // State of the execution during this event.
- ExecutionState execution_state = 2;
- // Resulting status of particular execution step.
- google.rpc.Status status = 3;
- // Detailed information specific to different of events that may be involved
- // in processing a conversation round. The field set here defines the type of
- // this event.
- oneof EventData {
- // User input handling event.
- UserConversationInput user_input = 4;
- // Intent matching event.
- IntentMatch intent_match = 5;
- // Condition evaluation event.
- ConditionsEvaluated conditions_evaluated = 6;
- // OnSceneEnter execution event.
- OnSceneEnter on_scene_enter = 7;
- // Webhook request dispatch event.
- WebhookRequest webhook_request = 8;
- // Webhook response receipt event.
- WebhookResponse webhook_response = 9;
- // Webhook-initiated transition event.
- WebhookInitiatedTransition webhook_initiated_transition = 10;
- // Slot matching event.
- SlotMatch slot_match = 11;
- // Slot requesting event.
- SlotRequested slot_requested = 12;
- // Slot validation event.
- SlotValidated slot_validated = 13;
- // Form filling event.
- FormFilled form_filled = 14;
- // Waiting-for-user-input event.
- WaitingForUserInput waiting_user_input = 15;
- // End-of-conversation event.
- EndConversation end_conversation = 16;
- }
- // List of warnings generated during execution of this Event. Warnings are
- // tips for the developer discovered during the conversation request. These
- // are usually non-critical and do not halt the execution of the request. For
- // example, a warnings might be generated when webhook tries to override a
- // custom Type which does not exist. Errors are reported as a failed status
- // code, but warnings can be present even when the status is OK.
- repeated string warning_messages = 17;
- }
- // Current state of the execution.
- message ExecutionState {
- // ID of the scene which is currently active.
- string current_scene_id = 1;
- // State of the session storage:
- // https://developers.google.com/assistant/conversational/storage-session
- google.protobuf.Struct session_storage = 2;
- // State of the slots filling, if applicable:
- // https://developers.google.com/assistant/conversational/scenes#slot_filling
- Slots slots = 5;
- // Prompt queue:
- // https://developers.google.com/assistant/conversational/prompts
- repeated google.actions.sdk.v2.conversation.Prompt prompt_queue = 7;
- // State of the user storage:
- // https://developers.google.com/assistant/conversational/storage-user
- google.protobuf.Struct user_storage = 6;
- // State of the home storage:
- // https://developers.google.com/assistant/conversational/storage-home
- google.protobuf.Struct household_storage = 8;
- }
- // Represents the current state of a the scene's slots.
- message Slots {
- // The current status of slot filling.
- google.actions.sdk.v2.conversation.SlotFillingStatus status = 2;
- // The slots associated with the current scene.
- map<string, google.actions.sdk.v2.conversation.Slot> slots = 3;
- }
- // Information related to user input.
- message UserConversationInput {
- // Type of user input. E.g. keyboard, voice, touch, etc.
- string type = 1;
- // Original text input from the user.
- string original_query = 2;
- }
- // Information about triggered intent match (global or within a scene):
- // https://developers.google.com/assistant/conversational/intents
- message IntentMatch {
- // Intent id which triggered this interaction.
- string intent_id = 1;
- // Parameters of intent which triggered this interaction.
- map<string, google.actions.sdk.v2.conversation.IntentParameterValue> intent_parameters = 5;
- // Name of the handler attached to this interaction.
- string handler = 3;
- // Scene to which this interaction leads to.
- string next_scene_id = 4;
- }
- // Results of conditions evaluation:
- // https://developers.google.com/assistant/conversational/scenes#conditions
- message ConditionsEvaluated {
- // List of conditions which were evaluated to 'false'.
- repeated Condition failed_conditions = 1;
- // The first condition which was evaluated to 'true', if any.
- Condition success_condition = 2;
- }
- // Evaluated condition.
- message Condition {
- // Expression specified in this condition.
- string expression = 1;
- // Handler name specified in evaluated condition.
- string handler = 2;
- // Destination scene specified in evaluated condition.
- string next_scene_id = 3;
- }
- // Information about execution of onSceneEnter stage:
- // https://developers.google.com/assistant/conversational/scenes#on_enter
- message OnSceneEnter {
- // Handler name specified in onSceneEnter event.
- string handler = 1;
- }
- // Event triggered by destination scene returned from webhook:
- // https://developers.google.com/assistant/conversational/webhooks#transition_scenes
- message WebhookInitiatedTransition {
- // ID of the scene the transition is leading to.
- string next_scene_id = 1;
- }
- // Information about a request dispatched to the Action webhook:
- // https://developers.google.com/assistant/conversational/webhooks#payloads
- message WebhookRequest {
- // Payload of the webhook request.
- string request_json = 1;
- }
- // Information about a response received from the Action webhook:
- // https://developers.google.com/assistant/conversational/webhooks#payloads
- message WebhookResponse {
- // Payload of the webhook response.
- string response_json = 1;
- }
- // Information about matched slot(s):
- // https://developers.google.com/assistant/conversational/scenes#slot_filling
- message SlotMatch {
- // Parameters extracted by NLU from user input.
- map<string, google.actions.sdk.v2.conversation.IntentParameterValue> nlu_parameters = 2;
- }
- // Information about currently requested slot:
- // https://developers.google.com/assistant/conversational/scenes#slot_filling
- message SlotRequested {
- // Name of the requested slot.
- string slot = 1;
- // Slot prompt.
- google.actions.sdk.v2.conversation.Prompt prompt = 3;
- }
- // Event which happens after webhook validation was finished for slot(s):
- // https://developers.google.com/assistant/conversational/scenes#slot_filling
- message SlotValidated {
- }
- // Event which happens when form is fully filled:
- // https://developers.google.com/assistant/conversational/scenes#slot_filling
- message FormFilled {
- }
- // Event which happens when system needs user input:
- // https://developers.google.com/assistant/conversational/scenes#input
- message WaitingForUserInput {
- }
- // Event which informs that conversation with agent was ended.
- message EndConversation {
- }
|