pub trait Session: Send + Sync {
// Required methods
fn id(&self) -> &str;
fn app_name(&self) -> &str;
fn user_id(&self) -> &str;
fn state(&self) -> &dyn State;
fn events(&self) -> &dyn Events;
fn last_update_time(&self) -> DateTime<Utc>;
// Provided methods
fn try_app_name(&self) -> Result<AppName, AdkError> { ... }
fn try_user_id(&self) -> Result<UserId, AdkError> { ... }
fn try_session_id(&self) -> Result<SessionId, AdkError> { ... }
fn try_identity(&self) -> Result<AdkIdentity, AdkError> { ... }
}sessions only.Expand description
Trait representing a conversation session with state and event history.
Required Methods§
Sourcefn last_update_time(&self) -> DateTime<Utc>
fn last_update_time(&self) -> DateTime<Utc>
Returns the timestamp of the last update to this session.
Provided Methods§
Sourcefn try_app_name(&self) -> Result<AppName, AdkError>
fn try_app_name(&self) -> Result<AppName, AdkError>
Returns the application name as a typed AppName.
Parses the value returned by app_name(). Returns an
error if the raw string fails validation (empty, null bytes, or exceeds
the maximum length).
§Errors
Returns AdkError::config when the
underlying string is not a valid identifier.
Sourcefn try_user_id(&self) -> Result<UserId, AdkError>
fn try_user_id(&self) -> Result<UserId, AdkError>
Returns the user identifier as a typed UserId.
Parses the value returned by user_id(). Returns an
error if the raw string fails validation.
§Errors
Returns AdkError::config when the
underlying string is not a valid identifier.
Sourcefn try_session_id(&self) -> Result<SessionId, AdkError>
fn try_session_id(&self) -> Result<SessionId, AdkError>
Returns the session identifier as a typed SessionId.
Parses the value returned by id(). Returns an error if
the raw string fails validation.
§Errors
Returns AdkError::config when the
underlying string is not a valid identifier.
Sourcefn try_identity(&self) -> Result<AdkIdentity, AdkError>
fn try_identity(&self) -> Result<AdkIdentity, AdkError>
Returns the stable session-scoped AdkIdentity triple.
Combines try_app_name(),
try_user_id(), and
try_session_id() into a single composite
identity value.
§Errors
Returns an error if any of the three constituent identifiers fail validation.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".