pub enum DaemonCommand {
Status,
Reload,
ChannelSet {
channel: String,
account: String,
enabled: bool,
workspace: Option<String>,
remote_tools: Option<RemoteTools>,
senders: Option<Senders>,
},
ChannelLogout {
channel: String,
account: String,
},
Delegations {
all: bool,
},
DelegationKill {
handle: Option<String>,
orphans: bool,
},
RestartWhenIdle {
version: Option<String>,
commit: Option<String>,
parent: Option<String>,
max_wait_seconds: Option<u64>,
},
ConfirmAsk {
question: String,
parent: Option<String>,
timeout_seconds: Option<u64>,
},
ConfirmStatus {
id: String,
},
}Expand description
What a daemon.control message asks the daemon to do.
Variants§
Status
Report DaemonStatus.
Reload
Reread channel settings and reconcile the components now.
ChannelSet
Enable or disable one channel account, optionally changing its workspace, remote tool grant, and whose messages it answers.
Fields
remote_tools: Option<RemoteTools>Omitted keeps the saved setting.
ChannelLogout
Stop one channel account and remove its credentials and state.
Fields
Delegations
List running delegations; all includes orphans awaiting cleanup.
DelegationKill
Stop one delegation by handle, or every orphaned one.
Fields
RestartWhenIdle
Restart into the release installed at the daemon’s own path once the
requesting delegation has finished and its report is stored and no
owner message is being answered, or at max_wait_seconds anyway.
Fields
ConfirmAsk
Ask the owner a yes/no question in chat: in the chat that started the
work parent names, or else the notify target. The reply’s confirm
names the question; confirm_status then follows it.
Fields
timeout_seconds: Option<u64>How long no answer waits before it counts as no
(DEFAULT_CONFIRM_SECONDS, at most MAX_CONFIRM_SECONDS).
ConfirmStatus
Report where the question id stands. Asking also keeps it alive: a
question nobody asks about for a minute is withdrawn.