openclaw message
Perintah keluar tunggal untuk mengirim pesan dan aksi saluran
(Discord/Google Chat/iMessage/Matrix/Mattermost (plugin)/Microsoft Teams/Signal/Slack/Telegram/WhatsApp).
Penggunaan
--channelwajib jika lebih dari satu saluran dikonfigurasi.- Jika tepat satu saluran dikonfigurasi, saluran itu menjadi default.
- Nilai:
discord|googlechat|imessage|matrix|mattermost|msteams|signal|slack|telegram|whatsapp(Mattermost memerlukan plugin)
--target):
- WhatsApp: E.164 atau JID grup
- Telegram: id chat atau
@username - Discord:
channel:<id>atauuser:<id>(atau mention<@id>; id numerik mentah diperlakukan sebagai saluran) - Google Chat:
spaces/<spaceId>atauusers/<userId> - Slack:
channel:<id>atauuser:<id>(id saluran mentah diterima) - Mattermost (plugin):
channel:<id>,user:<id>, atau@username(id polos diperlakukan sebagai saluran) - Signal:
+E.164,group:<id>,signal:+E.164,signal:group:<id>, atauusername:<name>/u:<name> - iMessage: handle,
chat_id:<id>,chat_guid:<guid>, atauchat_identifier:<id> - Matrix:
@user:server,!room:server, atau#alias:server - Microsoft Teams: id percakapan (
19:...@thread.tacv2) atauconversation:<id>atauuser:<aad-object-id>
- Untuk provider yang didukung (Discord/Slack/dll), nama saluran seperti
Helpatau#helpdiselesaikan melalui cache direktori. - Saat cache miss, OpenClaw akan mencoba pencarian direktori langsung jika provider mendukungnya.
Flag umum
--channel <name>--account <id>--target <dest>(saluran target atau pengguna untuk kirim/poll/baca/dll)--targets <name>(ulangi; hanya siaran)--json--dry-run--verbose
Perilaku SecretRef
openclaw messagemenyelesaikan SecretRef saluran yang didukung sebelum menjalankan aksi yang dipilih.- Penyelesaian dibatasi ke target aksi aktif bila memungkinkan:
- cakupan saluran saat
--channeldiatur (atau disimpulkan dari target berawalan sepertidiscord:...) - cakupan akun saat
--accountdiatur (global saluran + permukaan akun yang dipilih) - saat
--accountdihilangkan, OpenClaw tidak memaksakan cakupan SecretRef akundefault
- cakupan saluran saat
- SecretRef yang tidak terselesaikan pada saluran yang tidak terkait tidak memblokir aksi message yang ditargetkan.
- Jika SecretRef saluran/akun yang dipilih tidak terselesaikan, perintah gagal tertutup untuk aksi tersebut.
Aksi
Inti
-
send- Saluran: WhatsApp/Telegram/Discord/Google Chat/Slack/Mattermost (plugin)/Signal/iMessage/Matrix/Microsoft Teams
- Wajib:
--target, ditambah--messageatau--media - Opsional:
--media,--interactive,--buttons,--components,--card,--reply-to,--thread-id,--gif-playback,--force-document,--silent - Payload interaktif bersama:
--interactivemengirim payload JSON interaktif native saluran jika didukung - Khusus Telegram:
--buttons(memerlukanchannels.telegram.capabilities.inlineButtonsagar mengizinkannya) - Khusus Telegram:
--force-document(kirim gambar dan GIF sebagai dokumen untuk menghindari kompresi Telegram) - Khusus Telegram:
--thread-id(id topik forum) - Khusus Slack:
--thread-id(timestamp thread;--reply-tomenggunakan field yang sama) - Khusus Discord: payload JSON
--components - Saluran Adaptive Card: payload JSON
--cardjika didukung - Telegram + Discord:
--silent - Khusus WhatsApp:
--gif-playback
-
poll- Saluran: WhatsApp/Telegram/Discord/Matrix/Microsoft Teams
- Wajib:
--target,--poll-question,--poll-option(ulangi) - Opsional:
--poll-multi - Khusus Discord:
--poll-duration-hours,--silent,--message - Khusus Telegram:
--poll-duration-seconds(5-600),--silent,--poll-anonymous/--poll-public,--thread-id
-
react- Saluran: Discord/Google Chat/Slack/Telegram/WhatsApp/Signal/Matrix
- Wajib:
--message-id,--target - Opsional:
--emoji,--remove,--participant,--from-me,--target-author,--target-author-uuid - Catatan:
--removememerlukan--emoji(hilangkan--emojiuntuk menghapus reaksi sendiri jika didukung; lihat /tools/reactions) - Khusus WhatsApp:
--participant,--from-me - Reaksi grup Signal:
--target-authoratau--target-author-uuidwajib
-
reactions- Saluran: Discord/Google Chat/Slack/Matrix
- Wajib:
--message-id,--target - Opsional:
--limit
-
read- Saluran: Discord/Slack/Matrix
- Wajib:
--target - Opsional:
--limit,--before,--after - Khusus Discord:
--around
-
edit- Saluran: Discord/Slack/Matrix
- Wajib:
--message-id,--message,--target
-
delete- Saluran: Discord/Slack/Telegram/Matrix
- Wajib:
--message-id,--target
-
pin/unpin- Saluran: Discord/Slack/Matrix
- Wajib:
--message-id,--target
-
pins(daftar)- Saluran: Discord/Slack/Matrix
- Wajib:
--target
-
permissions- Saluran: Discord/Matrix
- Wajib:
--target - Khusus Matrix: tersedia saat enkripsi Matrix diaktifkan dan aksi verifikasi diizinkan
-
search- Saluran: Discord
- Wajib:
--guild-id,--query - Opsional:
--channel-id,--channel-ids(ulangi),--author-id,--author-ids(ulangi),--limit
Thread
-
thread create- Saluran: Discord
- Wajib:
--thread-name,--target(id saluran) - Opsional:
--message-id,--message,--auto-archive-min
-
thread list- Saluran: Discord
- Wajib:
--guild-id - Opsional:
--channel-id,--include-archived,--before,--limit
-
thread reply- Saluran: Discord
- Wajib:
--target(id thread),--message - Opsional:
--media,--reply-to
Emoji
-
emoji list- Discord:
--guild-id - Slack: tidak ada flag tambahan
- Discord:
-
emoji upload- Saluran: Discord
- Wajib:
--guild-id,--emoji-name,--media - Opsional:
--role-ids(ulangi)
Stiker
-
sticker send- Saluran: Discord
- Wajib:
--target,--sticker-id(ulangi) - Opsional:
--message
-
sticker upload- Saluran: Discord
- Wajib:
--guild-id,--sticker-name,--sticker-desc,--sticker-tags,--media
Role / Saluran / Anggota / Suara
role info(Discord):--guild-idrole add/role remove(Discord):--guild-id,--user-id,--role-idchannel info(Discord):--targetchannel list(Discord):--guild-idmember info(Discord/Slack):--user-id(+--guild-iduntuk Discord)voice status(Discord):--guild-id,--user-id
Event
event list(Discord):--guild-idevent create(Discord):--guild-id,--event-name,--start-time- Opsional:
--end-time,--desc,--channel-id,--location,--event-type
- Opsional:
Moderasi (Discord)
timeout:--guild-id,--user-id(opsional--duration-minatau--until; hilangkan keduanya untuk menghapus timeout)kick:--guild-id,--user-id(+--reason)ban:--guild-id,--user-id(+--delete-days,--reason)timeoutjuga mendukung--reason
Siaran
broadcast- Saluran: saluran terkonfigurasi apa pun; gunakan
--channel alluntuk menargetkan semua provider - Wajib:
--targets <target...> - Opsional:
--message,--media,--dry-run
- Saluran: saluran terkonfigurasi apa pun; gunakan