Documentation
¶
Index ¶
- Constants
- type Config
- type GhostMetadata
- type MessageMetadata
- type OpenClawClient
- func (oc *OpenClawClient) Connect(ctx context.Context)
- func (oc *OpenClawClient) CreateChatWithGhost(ctx context.Context, ghost *bridgev2.Ghost) (*bridgev2.CreateChatResponse, error)
- func (oc *OpenClawClient) Disconnect()
- func (oc *OpenClawClient) DownloadAndEncodeMedia(ctx context.Context, mediaURL string, file *event.EncryptedFileInfo, maxMB int) (string, string, error)
- func (oc *OpenClawClient) EmitStreamPart(ctx context.Context, portal *bridgev2.Portal, ...)
- func (oc *OpenClawClient) FetchMessages(ctx context.Context, params bridgev2.FetchMessagesParams) (*bridgev2.FetchMessagesResponse, error)
- func (oc *OpenClawClient) GetApprovalHandler() agentremote.ApprovalReactionHandler
- func (oc *OpenClawClient) GetBackfillMaxBatchCount(_ context.Context, _ *bridgev2.Portal, _ *database.BackfillTask) int
- func (oc *OpenClawClient) GetCapabilities(ctx context.Context, portal *bridgev2.Portal) *event.RoomFeatures
- func (oc *OpenClawClient) GetChatInfo(ctx context.Context, portal *bridgev2.Portal) (*bridgev2.ChatInfo, error)
- func (oc *OpenClawClient) GetContactList(ctx context.Context) ([]*bridgev2.ResolveIdentifierResponse, error)
- func (oc *OpenClawClient) GetUserInfo(ctx context.Context, ghost *bridgev2.Ghost) (*bridgev2.UserInfo, error)
- func (oc *OpenClawClient) GetUserLogin() *bridgev2.UserLogin
- func (oc *OpenClawClient) HandleMatrixDeleteChat(ctx context.Context, msg *bridgev2.MatrixDeleteChat) error
- func (oc *OpenClawClient) HandleMatrixMessage(ctx context.Context, msg *bridgev2.MatrixMessage) (*bridgev2.MatrixMessageResponse, error)
- func (oc *OpenClawClient) Log() *zerolog.Logger
- func (oc *OpenClawClient) LogoutRemote(_ context.Context)
- func (oc *OpenClawClient) ResolveIdentifier(ctx context.Context, identifier string, createChat bool) (*bridgev2.ResolveIdentifierResponse, error)
- func (oc *OpenClawClient) SearchUsers(ctx context.Context, query string) ([]*bridgev2.ResolveIdentifierResponse, error)
- func (oc *OpenClawClient) SetUserLogin(login *bridgev2.UserLogin)
- type OpenClawConfig
- type OpenClawConnector
- type OpenClawDiscoveryConfig
- type OpenClawLogin
- func (ol *OpenClawLogin) Cancel()
- func (ol *OpenClawLogin) Start(_ context.Context) (*bridgev2.LoginStep, error)
- func (ol *OpenClawLogin) SubmitUserInput(ctx context.Context, input map[string]string) (*bridgev2.LoginStep, error)
- func (ol *OpenClawLogin) Wait(ctx context.Context) (*bridgev2.LoginStep, error)
- type PortalMetadata
- type UserLoginMetadata
Constants ¶
View Source
const ProviderOpenClaw = "openclaw"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
Bridge bridgeconfig.BridgeConfig `yaml:"bridge"`
OpenClaw OpenClawConfig `yaml:"openclaw"`
}
type GhostMetadata ¶
type GhostMetadata struct {
OpenClawAgentID string `json:"openclaw_agent_id,omitempty"`
OpenClawAgentName string `json:"openclaw_agent_name,omitempty"`
OpenClawAgentAvatarURL string `json:"openclaw_agent_avatar_url,omitempty"`
OpenClawAgentEmoji string `json:"openclaw_agent_emoji,omitempty"`
OpenClawAgentRole string `json:"openclaw_agent_role,omitempty"`
LastSeenAt int64 `json:"last_seen_at,omitempty"`
}
type MessageMetadata ¶
type MessageMetadata struct {
agentremote.BaseMessageMetadata
SessionID string `json:"session_id,omitempty"`
SessionKey string `json:"session_key,omitempty"`
RunID string `json:"run_id,omitempty"`
ErrorText string `json:"error_text,omitempty"`
TotalTokens int64 `json:"total_tokens,omitempty"`
Attachments []map[string]any `json:"attachments,omitempty"`
FirstTokenAtMs int64 `json:"first_token_at_ms,omitempty"`
}
func (*MessageMetadata) CopyFrom ¶
func (mm *MessageMetadata) CopyFrom(other any)
type OpenClawClient ¶
type OpenClawClient struct {
agentremote.ClientBase
UserLogin *bridgev2.UserLogin
// contains filtered or unexported fields
}
func (*OpenClawClient) Connect ¶
func (oc *OpenClawClient) Connect(ctx context.Context)
func (*OpenClawClient) CreateChatWithGhost ¶
func (oc *OpenClawClient) CreateChatWithGhost(ctx context.Context, ghost *bridgev2.Ghost) (*bridgev2.CreateChatResponse, error)
func (*OpenClawClient) Disconnect ¶
func (oc *OpenClawClient) Disconnect()
func (*OpenClawClient) DownloadAndEncodeMedia ¶
func (oc *OpenClawClient) DownloadAndEncodeMedia(ctx context.Context, mediaURL string, file *event.EncryptedFileInfo, maxMB int) (string, string, error)
func (*OpenClawClient) EmitStreamPart ¶
func (*OpenClawClient) FetchMessages ¶
func (oc *OpenClawClient) FetchMessages(ctx context.Context, params bridgev2.FetchMessagesParams) (*bridgev2.FetchMessagesResponse, error)
func (*OpenClawClient) GetApprovalHandler ¶
func (oc *OpenClawClient) GetApprovalHandler() agentremote.ApprovalReactionHandler
func (*OpenClawClient) GetBackfillMaxBatchCount ¶
func (oc *OpenClawClient) GetBackfillMaxBatchCount(_ context.Context, _ *bridgev2.Portal, _ *database.BackfillTask) int
func (*OpenClawClient) GetCapabilities ¶
func (oc *OpenClawClient) GetCapabilities(ctx context.Context, portal *bridgev2.Portal) *event.RoomFeatures
func (*OpenClawClient) GetChatInfo ¶
func (*OpenClawClient) GetContactList ¶
func (oc *OpenClawClient) GetContactList(ctx context.Context) ([]*bridgev2.ResolveIdentifierResponse, error)
func (*OpenClawClient) GetUserInfo ¶
func (*OpenClawClient) GetUserLogin ¶
func (oc *OpenClawClient) GetUserLogin() *bridgev2.UserLogin
func (*OpenClawClient) HandleMatrixDeleteChat ¶
func (oc *OpenClawClient) HandleMatrixDeleteChat(ctx context.Context, msg *bridgev2.MatrixDeleteChat) error
func (*OpenClawClient) HandleMatrixMessage ¶
func (oc *OpenClawClient) HandleMatrixMessage(ctx context.Context, msg *bridgev2.MatrixMessage) (*bridgev2.MatrixMessageResponse, error)
func (*OpenClawClient) Log ¶
func (oc *OpenClawClient) Log() *zerolog.Logger
func (*OpenClawClient) LogoutRemote ¶
func (oc *OpenClawClient) LogoutRemote(_ context.Context)
func (*OpenClawClient) ResolveIdentifier ¶
func (oc *OpenClawClient) ResolveIdentifier(ctx context.Context, identifier string, createChat bool) (*bridgev2.ResolveIdentifierResponse, error)
func (*OpenClawClient) SearchUsers ¶
func (oc *OpenClawClient) SearchUsers(ctx context.Context, query string) ([]*bridgev2.ResolveIdentifierResponse, error)
func (*OpenClawClient) SetUserLogin ¶
func (oc *OpenClawClient) SetUserLogin(login *bridgev2.UserLogin)
type OpenClawConfig ¶
type OpenClawConfig struct {
Enabled *bool `yaml:"enabled"`
Discovery OpenClawDiscoveryConfig `yaml:"discovery"`
}
type OpenClawConnector ¶
type OpenClawConnector struct {
*agentremote.ConnectorBase
Config Config
// contains filtered or unexported fields
}
func NewConnector ¶
func NewConnector() *OpenClawConnector
type OpenClawDiscoveryConfig ¶
type OpenClawLogin ¶
type OpenClawLogin struct {
agentremote.BaseLoginProcess
User *bridgev2.User
Connector *OpenClawConnector
// contains filtered or unexported fields
}
func (*OpenClawLogin) Cancel ¶
func (ol *OpenClawLogin) Cancel()
func (*OpenClawLogin) SubmitUserInput ¶
type PortalMetadata ¶
type PortalMetadata struct {
IsOpenClawRoom bool `json:"is_openclaw_room,omitempty"`
OpenClawGatewayID string `json:"openclaw_gateway_id,omitempty"`
OpenClawSessionID string `json:"openclaw_session_id,omitempty"`
OpenClawSessionKey string `json:"openclaw_session_key,omitempty"`
OpenClawSpawnedBy string `json:"openclaw_spawned_by,omitempty"`
OpenClawDMTargetAgentID string `json:"openclaw_dm_target_agent_id,omitempty"`
OpenClawDMTargetAgentName string `json:"openclaw_dm_target_agent_name,omitempty"`
OpenClawDMCreatedFromContact bool `json:"openclaw_dm_created_from_contact,omitempty"`
OpenClawSessionKind string `json:"openclaw_session_kind,omitempty"`
OpenClawSessionLabel string `json:"openclaw_session_label,omitempty"`
OpenClawDisplayName string `json:"openclaw_display_name,omitempty"`
OpenClawDerivedTitle string `json:"openclaw_derived_title,omitempty"`
OpenClawLastMessagePreview string `json:"openclaw_last_message_preview,omitempty"`
OpenClawChannel string `json:"openclaw_channel,omitempty"`
OpenClawSubject string `json:"openclaw_subject,omitempty"`
OpenClawGroupChannel string `json:"openclaw_group_channel,omitempty"`
OpenClawSpace string `json:"openclaw_space,omitempty"`
OpenClawChatType string `json:"openclaw_chat_type,omitempty"`
OpenClawOrigin string `json:"openclaw_origin,omitempty"`
OpenClawAgentID string `json:"openclaw_agent_id,omitempty"`
OpenClawSystemSent bool `json:"openclaw_system_sent,omitempty"`
OpenClawAbortedLastRun bool `json:"openclaw_aborted_last_run,omitempty"`
ThinkingLevel string `json:"thinking_level,omitempty"`
FastMode bool `json:"fast_mode,omitempty"`
VerboseLevel string `json:"verbose_level,omitempty"`
ReasoningLevel string `json:"reasoning_level,omitempty"`
ElevatedLevel string `json:"elevated_level,omitempty"`
SendPolicy string `json:"send_policy,omitempty"`
InputTokens int64 `json:"input_tokens,omitempty"`
OutputTokens int64 `json:"output_tokens,omitempty"`
TotalTokens int64 `json:"total_tokens,omitempty"`
TotalTokensFresh bool `json:"total_tokens_fresh,omitempty"`
EstimatedCostUSD float64 `json:"estimated_cost_usd,omitempty"`
Status string `json:"status,omitempty"`
StartedAt int64 `json:"started_at,omitempty"`
EndedAt int64 `json:"ended_at,omitempty"`
RuntimeMs int64 `json:"runtime_ms,omitempty"`
ParentSessionKey string `json:"parent_session_key,omitempty"`
ChildSessions []string `json:"child_sessions,omitempty"`
ResponseUsage string `json:"response_usage,omitempty"`
ModelProvider string `json:"model_provider,omitempty"`
Model string `json:"model,omitempty"`
ContextTokens int64 `json:"context_tokens,omitempty"`
DeliveryContext map[string]any `json:"delivery_context,omitempty"`
LastChannel string `json:"last_channel,omitempty"`
LastTo string `json:"last_to,omitempty"`
LastAccountID string `json:"last_account_id,omitempty"`
SessionUpdatedAt int64 `json:"session_updated_at,omitempty"`
OpenClawPreviewSnippet string `json:"openclaw_preview_snippet,omitempty"`
OpenClawDefaultAgentID string `json:"openclaw_default_agent_id,omitempty"`
OpenClawToolProfile string `json:"openclaw_tool_profile,omitempty"`
OpenClawToolCount int `json:"openclaw_tool_count,omitempty"`
OpenClawKnownModelCount int `json:"openclaw_known_model_count,omitempty"`
OpenClawLastPreviewAt int64 `json:"openclaw_last_preview_at,omitempty"`
HistoryMode string `json:"history_mode,omitempty"`
RecentHistoryLimit int `json:"recent_history_limit,omitempty"`
LastHistorySyncAt int64 `json:"last_history_sync_at,omitempty"`
LastTranscriptFingerprint string `json:"last_transcript_fingerprint,omitempty"`
LastLiveSeq int64 `json:"last_live_seq,omitempty"`
BackgroundBackfillStartedAt int64 `json:"background_backfill_started_at,omitempty"`
BackgroundBackfillCompletedAt int64 `json:"background_backfill_completed_at,omitempty"`
BackgroundBackfillCursor string `json:"background_backfill_cursor,omitempty"`
BackgroundBackfillStatus string `json:"background_backfill_status,omitempty"`
BackgroundBackfillError string `json:"background_backfill_error,omitempty"`
}
type UserLoginMetadata ¶
type UserLoginMetadata struct {
Provider string `json:"provider,omitempty"`
GatewayURL string `json:"gateway_url,omitempty"`
GatewayToken string `json:"gateway_token,omitempty"`
GatewayPassword string `json:"gateway_password,omitempty"`
GatewayLabel string `json:"gateway_label,omitempty"`
DeviceToken string `json:"device_token,omitempty"`
SessionsSynced bool `json:"sessions_synced,omitempty"`
LastSyncAt int64 `json:"last_sync_at,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.