pub enum ActionOutcome {
Accepted {
session_id: Option<String>,
},
Busy,
SessionBusy,
NotCancellable,
Refused(Refusal),
Failed {
reference: String,
},
}Expand description
The controller’s answer to one phone action.
The answer means “accepted”, not “finished”: provisioning, resume and close
run for minutes, and a phone on a mobile network drops a request held open
that long. How the action then goes travels in snapshots — session state,
queued prompts, transcripts, and has_error.
Only the outcome crosses this boundary. The controller’s own failure text
names profile homes, project paths and SSH hosts, so it stays on the
controller. A caller therefore gets one of two things: a Refusal, whose
sentence was written for it at the place the failure was produced, or a
generic internal failure carrying a reference that also appears in the
daemon log.
Variants§
Accepted
Admitted and now running; watch the snapshot for what happens next.
A new action carries the published session id, which is the only way
its caller learns what it just created.
Busy
The controller already runs as many phone actions as it allows.
SessionBusy
This session already has an operation running.
NotCancellable
A cancel found no operation to cancel.
Refused(Refusal)
The action was refused for a reason the caller can act on, and the refusal says what it is.
Failed
The controller could not start the action, for a reason that stays
server-side. reference is logged with the failure, so the person who
owns the daemon can find the entry that explains it.
Implementations§
Source§impl ActionOutcome
impl ActionOutcome
Trait Implementations§
Source§impl Clone for ActionOutcome
impl Clone for ActionOutcome
Source§fn clone(&self) -> ActionOutcome
fn clone(&self) -> ActionOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ActionOutcome
impl Debug for ActionOutcome
impl Eq for ActionOutcome
Source§impl PartialEq for ActionOutcome
impl PartialEq for ActionOutcome
impl StructuralPartialEq for ActionOutcome
Auto Trait Implementations§
impl Freeze for ActionOutcome
impl RefUnwindSafe for ActionOutcome
impl Send for ActionOutcome
impl Sync for ActionOutcome
impl Unpin for ActionOutcome
impl UnsafeUnpin for ActionOutcome
impl UnwindSafe for ActionOutcome
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more