import type { ChannelAccountSnapshot } from "openclaw/plugin-sdk/channel-contract"; import {
createConnectedChannelStatusPatch,
createTransportActivityStatusPatch,
} from "openclaw/plugin-sdk/gateway-runtime"; import { formatMatrixErrorMessage } from "../errors.js"; import {
isMatrixDisconnectedSyncState,
isMatrixReadySyncState,
type MatrixSyncState,
} from "../sync-state.js";
type MatrixMonitorStatusSink = (patch: ChannelAccountSnapshot) => void;
function cloneLastDisconnect(
value: ChannelAccountSnapshot["lastDisconnect"],
): ChannelAccountSnapshot["lastDisconnect"] { if (!value || typeof value === "string") { return value ?? null;
} return { ...value };
}
function formatSyncError(error: unknown): string | null { if (!error) { returnnull;
} if (error instanceof Error) { return error.message || error.name || "unknown";
} return formatMatrixErrorMessage(error);
}
export type MatrixMonitorStatusController = ReturnType<typeof createMatrixMonitorStatusController>;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.