[BUG]sendStatus (image) accepted successfully but media unavailable/corrupted on receiver side — sendMedia to group with same file works fine
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 52/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- typescript
调研方向
Start at the /message/sendStatus/{instance} entry point and trace its image-processing path, then compare it with /message/sendMedia/{instance}, which works for the same file. Reproduce with the supplied base64 image and status payload; done means the image renders correctly on other devices while retaining the expected successful response.
由索引模型根据 Issue 内容生成。
描述
📋 Bug Description
Descrição do problema
Ao enviar imagens via /message/sendStatus/{instance} (type: image), a API aceita a
requisição com sucesso (200, remoteJid: status@broadcast, mimetype: image/jpeg,
mediaKey/url válidos), mas ao visualizar o Status em outro dispositivo, aparece o erro:
"A imagem não está disponível porque há um erro no arquivo de imagem."
O mesmo arquivo, enviado via /message/sendMedia/{instance} para um grupo, é entregue
e renderiza normalmente. Isso indica que o problema está no processamento interno
específico do sendStatus, não no arquivo em si.
Possivelmente relacionado a #2056 e #1524, mas com evidência adicional de que o
sendMedia para grupo com o mesmo arquivo funciona corretamente — o que restringe o
problema ao processamento interno do sendStatus.
Ambiente
- Evolution API versão: [preencher — confere no seu .env/painel]
- Integração: Baileys
- Self-hosted, Windows
Passos para reproduzir
- POST /message/sendStatus/{instance} com body:
{"type":"image","content":"data:image/jpeg;base64,...","caption":"...","allContacts":true} - Resposta retorna sucesso (200), com key.remoteJid = status@broadcast
- Status aparece na lista de Status do contato, mas ao abrir mostra "imagem não
disponível" — testado em múltiplos dispositivos diferentes visualizando
Já testado e descartado como causa
- Formato do arquivo (testado com JPEG e WebP, ambos falham)
- Fonte da imagem (Amazon, Shopee, Mercado Livre — falha em todas, de forma inconsistente
entre elas, não isolado a uma fonte específica) - Tamanho do arquivo (falha em imagens pequenas e grandes, ~90KB testado)
- Envio via base64 com backgroundColor adicional (não resolveu)
- Confirmado que o mesmo arquivo, mesmo caption, funciona normalmente via sendMedia
para grupo — descarta problema no arquivo de origem
Resposta de sucesso recebida (exemplo, dados sensíveis removidos)
{
"key": {
"remoteJid": "status@broadcast",
"fromMe": true,
"id": "3EB049C98D7225D99C83E1"
},
"message": {
"imageMessage": {
"url": "https://mmg.whatsapp.net/...",
"mimetype": "image/jpeg",
"caption": "..."
}
},
"messageType": "imageMessage",
"status": "PENDING"
}
Comportamento esperado
A imagem enviada via sendStatus deveria ser renderizada corretamente para quem
visualiza o Status, da mesma forma que já acontece com sendMedia para grupos.
🔄 Steps to Reproduce
- POST /message/sendStatus/{instance} with body:
{"type":"image","content":"data:image/jpeg;base64,...","caption":"...","allContacts":true} - Response returns success (200), with key.remoteJid = status@broadcast
- Status appears in the contact's status list, but opening it shows "image not available" — tested across multiple different devices viewing it
- Same image file, same caption, sent via /message/sendMedia/{instance} to a group works normally
✅ Expected Behavior
The image sent via sendStatus should render correctly for whoever views the Status, the same way it already works with sendMedia for groups.
❌ Actual Behavior
The API accepts the request successfully (200, remoteJid: status@broadcast, mimetype: image/jpeg, valid mediaKey/url), but when viewing the Status on another device, this error appears: "A imagem não está disponível porque há um erro no arquivo de imagem" (image not available due to a file error). This indicates the issue is in sendStatus's internal processing, not the file itself.
Possibly related to #2056 and #1524, but with additional evidence that sendMedia to a group with the same exact file works correctly — narrowing the issue specifically to sendStatus.
Already tested and ruled out as the cause:
- File format (tested with JPEG and WebP, both fail)
- Image source (Amazon, Shopee, Mercado Livre — fails across all, inconsistently, not isolated to one source)
- File size (fails on both small and large images, ~90KB tested)
- Sending base64 with an additional backgroundColor field (did not fix it)
- Confirmed the same file + caption works normally via sendMedia to a group — rules out a broken source file
🌍 Environment
- OS: Windows (self-hosted, local)
- Evolution API version: 2.4.0
- Integration: Baileys
📋 Logs
Success response example (sensitive data removed):
{
"key": {
"remoteJid": "status@broadcast",
"fromMe": true,
"id": "3EB049C98D7225D99C83E1"
},
"message": {
"imageMessage": {
"url": "https://mmg.whatsapp.net/...",
"mimetype": "image/jpeg",
"caption": "..."
}
},
"messageType": "imageMessage",
"status": "PENDING"
}
📝 Additional Context
No response
- 主要语言
- TypeScript
- 星标
- 9.7k
- 派生
- 7.3k
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
evolution-foundation/evolution-api 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 78/100
evolution-foundation/evolution-api#2723 ·
维护者通常 1 天内回复
-
难度 1/5 1-3 小时 新手友好度 88/100
evolution-foundation/evolution-api#2704 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 68/100
evolution-foundation/evolution-api#2702 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 88/100
evolution-foundation/evolution-api#2700 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
evolution-foundation/evolution-api#2675 ·
维护者通常 1 天内回复
查看 evolution-foundation/evolution-api 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 68/100
microsoft/vscode-livepreview#876 ·
维护者通常 1 天内回复
-
needs-triage
难度 1/5 1 小时以内 新手友好度 90/100
JustJarethB/invoicer#54 ·
-
ICP 1.2.0 shows a scheduled task's interval in milliseconds under the label "Interval (In seconds)"未关闭Needs Triage Type/Bug
难度 2/5 1-3 小时 新手友好度 68/100
wso2/product-integrator#2585 ·
维护者通常 1 天内回复
-
check:passed streams:add
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
design
难度 2/5 1-3 小时 新手友好度 72/100
MTES-MCT/monitor-field#119 ·
维护者通常 1 天内回复