Skip to main content

openclaw message

Jedno polecenie wychodzące do wysyłania wiadomości i wykonywania działań kanałów w Discord, Google Chat, iMessage, Matrix, Mattermost (plugin), Microsoft Teams, Signal, Slack, Telegram i WhatsApp.

Wybór kanału

  • --channel <name> jest wymagane, jeśli skonfigurowano więcej niż jeden kanał; jeśli skonfigurowano dokładnie jeden kanał, jest on kanałem domyślnym.
  • Wartości: discord|googlechat|imessage|matrix|mattermost|msteams|signal|slack|telegram|whatsapp (Mattermost wymaga pluginu).
  • Cele z prefiksem kanału (na przykład discord:channel:123) wskazują plugin będący właścicielem bez jawnego podawania --channel.

Formaty celu (-t, --target)

Wyszukiwanie nazw kanałów: w przypadku dostawców z katalogiem (Discord/Slack/itp.) nazwy takie jak Help lub #help są rozwiązywane za pomocą pamięci podręcznej katalogu, a w razie braku wpisu w pamięci podręcznej wykonywane jest wyszukiwanie w aktywnym katalogu, jeśli dostawca je obsługuje.

Wspólne flagi

Każde działanie akceptuje: --channel <name>, --account <id>, --json, --dry-run, --verbose. Działania wymagające miejsca docelowego akceptują również -t, --target <dest>.

Rozwiązywanie SecretRef

openclaw message rozwiązuje odwołania SecretRef kanałów przed wykonaniem działania, z możliwie najwęższym zakresem:
  • zakres kanału, gdy ustawiono --channel (lub wywnioskowano go z celu z prefiksem)
  • zakres konta, gdy ustawiono również --account
  • wszystkie skonfigurowane kanały, gdy nie ustawiono żadnej z tych opcji
Nierozwiązane odwołania SecretRef w niepowiązanych kanałach nigdy nie blokują działania skierowanego do konkretnego celu; nierozwiązane odwołanie SecretRef w wybranym kanale lub koncie powoduje bezpieczne przerwanie działania.

Działania

Podstawowe

Wysyłanie

  • --media <path-or-url>: dołącza obraz, plik audio, film lub dokument (ścieżkę lokalną albo URL).
  • --presentation <json>: współdzielony ładunek z blokami text, context, divider, chart, table, buttons i select, renderowany zgodnie z możliwościami kanału. Zobacz Prezentacja wiadomości.
  • --delivery <json>: ogólne preferencje dostarczania, na przykład {"pin": true}. --pin jest skrótem dla przypiętego dostarczenia, jeśli kanał je obsługuje.
  • --reply-to <id>, --thread-id <id> (temat forum Telegram; znacznik czasu wątku Slack, to samo pole co --reply-to).
  • --force-document (Telegram, WhatsApp): wysyła obrazy, pliki GIF i filmy jako dokumenty, aby uniknąć kompresji kanału.
  • --silent (Telegram, Discord): wysyła bez powiadomienia.
  • --gif-playback (tylko WhatsApp): traktuje materiał wideo jako odtwarzany plik GIF.
Slack renderuje obsługiwane bloki wykresów natywnie; pozostałe kanały otrzymują te same dane w postaci czytelnego tekstu:
Slack renderuje również natywnie jawne bloki tabel. Inne kanały otrzymują podpis i każdy wiersz jako deterministyczny tekst:
Przyciski Mini App w Telegramie używają webApp (web_app jest nadal obsługiwane podczas analizy starszego formatu JSON) i są renderowane wyłącznie w prywatnych czatach między użytkownikiem a botem:

Ankieta

  • --poll-option <choice>: powtórz od 2 do 12 razy.
  • --poll-multi: zezwala na wybór wielu opcji.
  • Discord: --poll-duration-hours, --silent, --message.
  • Telegram: --poll-duration-seconds <n> (5–600), --silent, --poll-anonymous / --poll-public, --thread-id.

Wątki

  • thread create: kanały Discord. Wymagane: --thread-name, --target (identyfikator kanału). Opcjonalne: --message-id, --message, --auto-archive-min.
  • thread list: kanały Discord. Wymagane: --guild-id. Opcjonalne: --channel-id, --include-archived, --before, --limit.
  • thread reply: kanały Discord. Wymagane: --target (identyfikator wątku), --message. Opcjonalne: --media, --reply-to.

Emoji

  • emoji list: Discord (--guild-id), Slack (bez dodatkowych flag).
  • emoji upload: Discord. Wymagane: --guild-id, --emoji-name, --media. Opcjonalne: --role-ids (można powtarzać).

Naklejki

  • sticker send: Discord. Wymagane: --target, --sticker-id (można powtarzać). Opcjonalne: --message.
  • sticker upload: Discord. Wymagane: --guild-id, --sticker-name, --sticker-desc, --sticker-tags, --media.

Role, kanały, komunikacja głosowa i wydarzenia (Discord)

  • role info: --guild-id.
  • role add / role remove: --guild-id, --user-id, --role-id.
  • channel info: --target.
  • channel list: --guild-id.
  • voice status: --guild-id, --user-id.
  • event list: --guild-id.
  • event create: wymagane --guild-id, --event-name, --start-time; opcjonalne --end-time, --desc, --channel-id, --location, --event-type, --image <url-or-path>.

Moderacja (Discord)

  • timeout: --guild-id, --user-id; opcjonalne --duration-min lub --until (pomiń oba, aby usunąć ograniczenie czasowe), --reason.
  • kick: --guild-id, --user-id, --reason.
  • ban: --guild-id, --user-id, --delete-days, --reason.

Rozsyłanie

Wysyła jeden ładunek do wielu celów. Opcja --targets przyjmuje listę rozdzieloną spacjami. Użyj --channel all, aby objąć każdy skonfigurowany moduł dostawcy.

Powiązane