Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt

Use this file to discover all available pages before exploring further.

O acoplamento de canal é o encaminhamento de chamadas para uma sessão do OpenClaw. Ele mantém o mesmo contexto de conversa, mas altera onde as respostas futuras dessa sessão serão entregues.

Exemplo

Alice pode enviar mensagens para o OpenClaw pelo Telegram e Discord:
{
  session: {
    identityLinks: {
      alice: ["telegram:123", "discord:456"],
    },
  },
}
Se Alice enviar isto pelo Telegram:
/dock_discord
O OpenClaw mantém o contexto da sessão atual e altera a rota de resposta:
Antes do acoplamentoDepois de /dock_discord
As respostas vão para Telegram 123As respostas vão para Discord 456
A sessão não é recriada. O histórico da transcrição permanece anexado à mesma sessão.

Por que usar

Use o acoplamento quando uma tarefa começa em um app de chat, mas as próximas respostas devem chegar em outro lugar. Fluxo comum:
  1. Inicie uma tarefa de agente pelo Telegram.
  2. Vá para o Discord, onde você está coordenando o trabalho.
  3. Envie /dock_discord a partir da sessão do Telegram.
  4. Mantenha a mesma sessão do OpenClaw, mas receba respostas futuras no Discord.

Configuração obrigatória

O acoplamento exige session.identityLinks. O remetente de origem e o par de destino devem estar no mesmo grupo de identidade:
{
  session: {
    identityLinks: {
      alice: ["telegram:123", "discord:456", "slack:U123"],
    },
  },
}
Os valores são IDs de pares prefixados pelo canal:
ValorSignificado
telegram:123ID de remetente do Telegram 123
discord:456ID de par direto do Discord 456
slack:U123ID de usuário do Slack U123
A chave canônica (alice acima) é apenas o nome do grupo de identidade compartilhado. Os comandos de acoplamento usam os valores prefixados pelo canal para provar que o remetente de origem e o par de destino são a mesma pessoa.

Comandos

Os comandos de acoplamento são gerados a partir de plugins de canal carregados que oferecem suporte a comandos nativos. Comandos empacotados atuais:
Canal de destinoComandoAlias
Discord/dock-discord/dock_discord
Mattermost/dock-mattermost/dock_mattermost
Slack/dock-slack/dock_slack
Telegram/dock-telegram/dock_telegram
Os aliases com sublinhado são úteis em superfícies de comando nativas, como o Telegram.

O que muda

O acoplamento atualiza os campos de entrega da sessão ativa:
Campo da sessãoExemplo após /dock_discord
lastChanneldiscord
lastTo456
lastAccountIda conta do canal de destino, ou default
Esses campos são persistidos no armazenamento de sessões e usados pela entrega de respostas posterior dessa sessão.

O que não muda

O acoplamento não:
  • cria contas de canal
  • conecta um novo bot do Discord, Telegram, Slack ou Mattermost
  • concede acesso a um usuário
  • ignora listas de permissão de canais ou políticas de DM
  • move o histórico da transcrição para outra sessão
  • faz usuários não relacionados compartilharem uma sessão
Ele apenas altera a rota de entrega da sessão atual.

Solução de problemas

O comando diz que o remetente não está vinculado. Adicione o remetente atual e o par de destino ao mesmo grupo session.identityLinks. Por exemplo, se o remetente do Telegram 123 deve ser acoplado ao par do Discord 456, inclua telegram:123 e discord:456. O comando diz que não existe uma sessão ativa. Faça o acoplamento a partir de uma sessão de chat direto existente. O comando precisa de uma entrada de sessão ativa para poder persistir a nova rota. As respostas ainda vão para o canal antigo. Verifique se o comando respondeu com uma mensagem de sucesso e confirme se o ID do par de destino corresponde ao ID usado por esse canal. O acoplamento altera apenas a rota da sessão ativa; outra sessão ainda pode rotear para outro lugar. Preciso voltar. Envie o comando correspondente ao canal original, como /dock_telegram ou /dock-telegram, a partir de um remetente vinculado.