MessageContextGlobalSystem
public struct MessageContextGlobalSystem : Codable, Equatable
Built-in system properties that apply to all skills used by the assistant.
-
The language code for localization in the user input. The specified locale overrides the default for the assistant, and is used for interpreting entity values in user input such as date values. For example,
See more04/03/2018
might be interpreted either as April 3 or March 4, depending on the locale. This property is included only if the new system entities are enabled for the skill.Declaration
Swift
public enum Locale : String
-
The user time zone. The assistant uses the time zone to correctly resolve relative time references.
Declaration
Swift
public var timezone: String?
-
A string value that identifies the user who is interacting with the assistant. The client must provide a unique identifier for each individual end user who accesses the application. For user-based plans, this user ID is used to identify unique users for billing purposes. This string cannot contain carriage return, newline, or tab characters. If no value is specified in the input, user_id is automatically set to the value of context.global.session_id. Note: This property is the same as the user_id property at the root of the message body. If user_id is specified in both locations in a message request, the value specified at the root is used.
Declaration
Swift
public var userID: String?
-
A counter that is automatically incremented with each turn of the conversation. A value of 1 indicates that this is the the first turn of a new conversation, which can affect the behavior of some skills (for example, triggering the start node of a dialog).
Declaration
Swift
public var turnCount: Int?
-
The language code for localization in the user input. The specified locale overrides the default for the assistant, and is used for interpreting entity values in user input such as date values. For example,
04/03/2018
might be interpreted either as April 3 or March 4, depending on the locale. This property is included only if the new system entities are enabled for the skill.Declaration
Swift
public var locale: String?
-
The base time for interpreting any relative time mentions in the user input. The specified time overrides the current server time, and is used to calculate times mentioned in relative terms such as
now
ortomorrow
. This can be useful for simulating past or future times for testing purposes, or when analyzing documents such as news articles. This value must be a UTC time value formatted according to ISO 8601 (for example,2021-06-26T12:00:00Z
for noon UTC on 26 June 2021). This property is included only if the new system entities are enabled for the skill.Declaration
Swift
public var referenceTime: String?
-
The time at which the session started. With the stateful
message
method, the start time is always present, and is set by the service based on the time the session was created. With the statelessmessage
method, the start time is set by the service in the response to the first message, and should be returned as part of the context with each subsequent message in the session. This value is a UTC time value formatted according to ISO 8601 (for example,2021-06-26T12:00:00Z
for noon UTC on 26 June 2021).Declaration
Swift
public var sessionStartTime: String?
-
An encoded string that represents the configuration state of the assistant at the beginning of the conversation. If you are using the stateless
message
method, save this value and then send it in the context of the subsequent message request to avoid disruptions if there are configuration changes during the conversation (such as a change to a skill the assistant uses).Declaration
Swift
public var state: String?
-
Initialize a
MessageContextGlobalSystem
with member variables.Declaration
Swift
public init( timezone: String? = nil, userID: String? = nil, turnCount: Int? = nil, locale: String? = nil, referenceTime: String? = nil, sessionStartTime: String? = nil, state: String? = nil )
Parameters
timezone
The user time zone. The assistant uses the time zone to correctly resolve relative time references.
userID
A string value that identifies the user who is interacting with the assistant. The client must provide a unique identifier for each individual end user who accesses the application. For user-based plans, this user ID is used to identify unique users for billing purposes. This string cannot contain carriage return, newline, or tab characters. If no value is specified in the input, user_id is automatically set to the value of context.global.session_id. Note: This property is the same as the user_id property at the root of the message body. If user_id is specified in both locations in a message request, the value specified at the root is used.
turnCount
A counter that is automatically incremented with each turn of the conversation. A value of 1 indicates that this is the the first turn of a new conversation, which can affect the behavior of some skills (for example, triggering the start node of a dialog).
locale
The language code for localization in the user input. The specified locale overrides the default for the assistant, and is used for interpreting entity values in user input such as date values. For example,
04/03/2018
might be interpreted either as April 3 or March 4, depending on the locale. This property is included only if the new system entities are enabled for the skill.referenceTime
The base time for interpreting any relative time mentions in the user input. The specified time overrides the current server time, and is used to calculate times mentioned in relative terms such as
now
ortomorrow
. This can be useful for simulating past or future times for testing purposes, or when analyzing documents such as news articles. This value must be a UTC time value formatted according to ISO 8601 (for example,2021-06-26T12:00:00Z
for noon UTC on 26 June 2021). This property is included only if the new system entities are enabled for the skill.sessionStartTime
The time at which the session started. With the stateful
message
method, the start time is always present, and is set by the service based on the time the session was created. With the statelessmessage
method, the start time is set by the service in the response to the first message, and should be returned as part of the context with each subsequent message in the session. This value is a UTC time value formatted according to ISO 8601 (for example,2021-06-26T12:00:00Z
for noon UTC on 26 June 2021).state
An encoded string that represents the configuration state of the assistant at the beginning of the conversation. If you are using the stateless
message
method, save this value and then send it in the context of the subsequent message request to avoid disruptions if there are configuration changes during the conversation (such as a change to a skill the assistant uses).Return Value
An initialized
MessageContextGlobalSystem
.