ပုံရိပ် & မီဒီယာ ပံ့ပိုးမှု — 2025-12-05¶
WhatsApp channel က Baileys Web ကို အသုံးပြုပြီး အလုပ်လုပ်ပါတယ်။ ဤစာရွက်စာတမ်းသည် send, gateway နှင့် agent replies များအတွက် လက်ရှိ media ကိုင်တွယ်မှု စည်းမျဉ်းများကို ဖော်ပြထားပါသည်။
ရည်မှန်းချက်များ¶
openclaw message send --mediaဖြင့် စာတန်း (caption) ရွေးချယ်နိုင်စွာ ထည့်သွင်းပြီး မီဒီယာ ပို့ရန်။- ဝဘ် inbox မှ အလိုအလျောက် အဖြေများတွင် စာသားနှင့်အတူ မီဒီယာ ပါဝင်ခွင့်ပြုရန်။
- အမျိုးအစားအလိုက် ကန့်သတ်ချက်များကို သင့်တော်ပြီး ခန့်မှန်းနိုင်အောင် ထိန်းထားရန်။
CLI မျက်နှာပြင်¶
openclaw message send --media <path-or-url> [--message <caption>]--mediaကို ရွေးချယ်နိုင်သည်; မီဒီယာသာ ပို့သည့်အခါ စာတန်းကို အလွတ်ထားနိုင်သည်။--dry-runသည် ဖြေရှင်းပြီးသား payload ကို ပရင့်ထုတ်ပြီး--jsonသည်{ channel, to, messageId, mediaUrl, caption }ကို ထုတ်ပေးသည်။
WhatsApp Web ချန်နယ် အပြုအမူ¶
- Input: local ဖိုင်လမ်းကြောင်း သို့မဟုတ် HTTP(S) URL။
- လုပ်ငန်းစဉ်: Buffer ထဲသို့ တင်ယူပြီး မီဒီယာ အမျိုးအစားကို ခွဲခြားကာ မှန်ကန်သော payload ကို တည်ဆောက်သည် —
- ပုံရိပ်များ: JPEG သို့ ပြန်လည် အရွယ်အစားချိန်ညှိ & ပြန်လည် ဖိသိပ်ခြင်း (အရှည်ဆုံးဘက် 2048px) ဖြင့်
agents.defaults.mediaMaxMb(မူလ 5 MB) ကို ဦးတည်ပြီး 6 MB အထိ ကန့်သတ်သည်။ - အသံ/အသံမှတ်တမ်း/ဗီဒီယို: 16 MB အထိ မပြောင်းလဲဘဲ ဖြတ်သန်းပို့သည်; အသံကို voice note အဖြစ် ပို့သည် (
ptt: true)။ - စာရွက်စာတမ်းများ: အခြားအရာအားလုံးကို 100 MB အထိ ခွင့်ပြု하며 ရနိုင်ပါက ဖိုင်အမည်ကို ထိန်းသိမ်းထားသည်။
- WhatsApp GIF စတိုင် ပြန်ဖွင့်မှု: မိုဘိုင်း client များတွင် inline loop ဖြစ်စေရန်
gifPlayback: true(CLI:--gif-playback) ပါသော MP4 ကို ပို့သည်။ - MIME ခွဲခြားမှုသည် magic bytes ကို ဦးစားပေးပြီး ထို့နောက် header များ၊ ထို့နောက် ဖိုင်အမျိုးအစား အဆုံးသတ်ကို အသုံးပြုသည်။
- Caption ကို
--messageသို့မဟုတ်reply.textမှ ယူသည်; caption အလွတ်ထားခြင်းကို ခွင့်ပြုသည်။ - Logging: verbose မဟုတ်ပါက
↩️/✅ကို ပြသပြီး verbose ဖြစ်ပါက အရွယ်အစားနှင့် မူလ လမ်းကြောင်း/URL ကို ထည့်သွင်းပြသသည်။
Auto-Reply ပိုက်လိုင်း¶
getReplyFromConfigသည်{ text?, mediaUrl?, mediaUrls? }ကို ပြန်ပေးပါသည်။- မီဒီယာ ပါရှိသည့်အခါ ဝဘ် ပို့သူသည်
openclaw message sendနှင့် တူညီသော ပိုက်လိုင်းကို အသုံးပြု၍ local လမ်းကြောင်းများ သို့မဟုတ် URL များကို ဖြေရှင်းသည်။ - မီဒီယာ အချက်အလက် အများအပြား ပါရှိပါက အစဉ်လိုက် တစ်ခုချင်းစီ ပို့သည်။
အဝင် မီဒီယာမှ Commands (Pi)¶
- အဝင် ဝဘ် မက်ဆေ့ချ်များတွင် မီဒီယာ ပါရှိပါက OpenClaw သည် temp ဖိုင်တစ်ခုသို့ ဒေါင်းလုဒ်လုပ်ပြီး templating variables များကို ဖော်ထုတ်ပေးသည် —
{{MediaUrl}}သည် အဝင် မီဒီယာအတွက် pseudo-URL ဖြစ်သည်။{{MediaPath}}သည် command ကို လည်ပတ်မီ ရေးသားထားသော local temp လမ်းကြောင်း ဖြစ်သည်။- per-session Docker sandbox ကို ဖွင့်ထားပါက အဝင် မီဒီယာကို sandbox workspace ထဲသို့ ကူးယူပြီး
MediaPath/MediaUrlကိုmedia/inbound/<filename>ကဲ့သို့သော relative လမ်းကြောင်းအဖြစ် ပြန်ရေးသားသည်။ - မီဒီယာ နားလည်မှု (
tools.media.*သို့မဟုတ် မျှဝေထားသောtools.media.modelsဖြင့် ပြင်ဆင်ထားပါက) သည် templating မတိုင်မီ လည်ပတ်ပြီးBodyထဲသို့[Image],[Audio], နှင့်[Video]block များကို ထည့်သွင်းနိုင်သည်။ - အသံအတွက်
{{Transcript}}ကို သတ်မှတ်ပြီး slash command များ ဆက်လက် အလုပ်လုပ်နိုင်စေရန် transcript ကို command parsing အတွက် အသုံးပြုသည်။ - ဗီဒီယိုနှင့် ပုံရိပ် ဖော်ပြချက်များသည် command parsing အတွက် caption စာသားကို ထိန်းသိမ်းထားသည်။
- default အနေဖြင့် ကိုက်ညီသည့် ပထမဆုံး image/audio/video attachment ကိုသာ process လုပ်ပါသည်; attachment များစွာကို process လုပ်ရန်
tools.media.<cap>.attachmentsကို သတ်မှတ်ပါ။
ကန့်သတ်ချက်များ & အမှားများ¶
အပြင်ပို့ ကန့်သတ်ချက်များ (WhatsApp web send)
- ပုံရိပ်များ: ပြန်လည် ဖိသိပ်ပြီးနောက် ~6 MB ကန့်သတ်။
- အသံ/voice/ဗီဒီယို: 16 MB ကန့်သတ်; စာရွက်စာတမ်းများ: 100 MB ကန့်သတ်။
- အရွယ်အစား ကြီးလွန်းခြင်း သို့မဟုတ် ဖတ်မရသော မီဒီယာ → log များတွင် ထင်ရှားသော အမှားပြပြီး အဖြေကို ကျော်သွားသည်။
မီဒီယာ နားလည်မှု ကန့်သတ်ချက်များ (transcription/description)
- ပုံရိပ် မူလ: 10 MB (
tools.media.image.maxBytes)။ - အသံ မူလ: 20 MB (
tools.media.audio.maxBytes)။ - ဗီဒီယို မူလ: 50 MB (
tools.media.video.maxBytes)။ - အရွယ်အစား ကြီးလွန်းသော မီဒီယာများတွင် နားလည်မှုကို ကျော်သွားသော်လည်း မူလ body ဖြင့် အဖြေများကို ဆက်လက် ပို့သည်။
စမ်းသပ်မှုများအတွက် မှတ်ချက်များ¶
- ပုံ/အသံ/စာရွက်စာတမ်း ကိစ္စရပ်များအတွက် send + reply လုပ်ငန်းစဉ်များကို လွှမ်းခြုံစမ်းသပ်ပါ။
- ပုံရိပ်များအတွက် ပြန်လည် ဖိသိပ်မှု (အရွယ်အစား ကန့်သတ်) နှင့် အသံအတွက် voice-note flag ကို အတည်ပြုပါ။
- မီဒီယာ အများအပြား ပါဝင်သည့် အဖြေများကို အစဉ်လိုက် ပို့ကြောင်း သေချာစေပါ။