Google Cloud Dialogflow v2 API - Class Participant (4.12.0)

public sealed class Participant : IMessage<Participant>, IEquatable<Participant>, IDeepCloneable<Participant>, IBufferMessage, IMessage

Reference documentation and code samples for the Google Cloud Dialogflow v2 API class Participant.

Represents a conversation participant (human agent, virtual agent, end-user).

Inheritance

object > Participant

Namespace

Google.Cloud.Dialogflow.V2

Assembly

Google.Cloud.Dialogflow.V2.dll

Constructors

Participant()

public Participant()

Participant(Participant)

public Participant(Participant other)
Parameter
NameDescription
otherParticipant

Properties

DocumentsMetadataFilters

public MapField<string, string> DocumentsMetadataFilters { get; }

Optional. Key-value filters on the metadata of documents returned by article suggestion. If specified, article suggestion only returns suggested documents that match all filters in their [Document.metadata][google.cloud.dialogflow.v2.Document.metadata]. Multiple values for a metadata key should be concatenated by comma. For example, filters to match all documents that have 'US' or 'CA' in their market metadata values and 'agent' in their user metadata values will be

documents_metadata_filters {
  key: "market"
  value: "US,CA"
}
documents_metadata_filters {
  key: "user"
  value: "agent"
}
Property Value
TypeDescription
MapFieldstringstring

Name

public string Name { get; set; }

Optional. The unique identifier of this participant. Format: projects/<Project ID>/locations/<Location ID>/conversations/<Conversation ID>/participants/<Participant ID>.

Property Value
TypeDescription
string

ObfuscatedExternalUserId

public string ObfuscatedExternalUserId { get; set; }

Optional. Obfuscated user id that should be associated with the created participant.

You can specify a user id as follows:

  1. If you set this field in [CreateParticipantRequest][google.cloud.dialogflow.v2.CreateParticipantRequest.participant] or [UpdateParticipantRequest][google.cloud.dialogflow.v2.UpdateParticipantRequest.participant], Dialogflow adds the obfuscated user id with the participant.

  2. If you set this field in [AnalyzeContent][google.cloud.dialogflow.v2.AnalyzeContentRequest.obfuscated_external_user_id] or [StreamingAnalyzeContent][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.obfuscated_external_user_id], Dialogflow will update [Participant.obfuscated_external_user_id][google.cloud.dialogflow.v2.Participant.obfuscated_external_user_id].

Dialogflow returns an error if you try to add a user id for a non-[END_USER][google.cloud.dialogflow.v2.Participant.Role.END_USER] participant.

Dialogflow uses this user id for billing and measurement purposes. For example, Dialogflow determines whether a user in one conversation returned in a later conversation.

Note:

  • Please never pass raw user ids to Dialogflow. Always obfuscate your user id first.
  • Dialogflow only accepts a UTF-8 encoded string, e.g., a hex digest of a hash function like SHA-512.
  • The length of the user id must be <= 256 characters.
Property Value
TypeDescription
string

ParticipantName

public ParticipantName ParticipantName { get; set; }

ParticipantName-typed view over the Name resource name property.

Property Value
TypeDescription
ParticipantName

Role

public Participant.Types.Role Role { get; set; }

Immutable. The role this participant plays in the conversation. This field must be set during participant creation and is then immutable.

Property Value
TypeDescription
ParticipantTypesRole

SipRecordingMediaLabel

public string SipRecordingMediaLabel { get; set; }

Optional. Label applied to streams representing this participant in SIPREC XML metadata and SDP. This is used to assign transcriptions from that media stream to this participant. This field can be updated.

Property Value
TypeDescription
string