-
Notifications
You must be signed in to change notification settings - Fork 37
Description
Dear SuperChats Support Team,
I am a licensed SuperChats user developing a WhatsApp automation platform, and I've encountered a critical issue with video message decryption in version 3.8.0 that is blocking our production deployment.
Issue Summary
When attempting to decrypt video messages using superchats.decrypt(), the method consistently returns the error:
Error: The message not is media
This issue is specific to video messages only. Image and sticker decryption work perfectly using the same method, indicating a regression in video message type detection.
Environment Details
SuperChats Version: 3.8.0
Node.js Version: 16.20.0
Operating System: Ubuntu 22.04 LTS
License Type: Premium (Active subscription)
Technical Details
Video Message Structure
{
content: {
videoMessage: {
url: "https://mmg.whatsapp.net/v/t62.7161-24/[...].enc?ccb=[...]",
mimetype: "video/mp4",
fileSha256: "PQMGEU5nxAX[...]", // base64, 44 chars
fileLength: "1617593",
seconds: 25,
mediaKey: "yXJQV8u1GCH[...]", // base64, 44 chars
mediaKeyTimestamp: "1735858951",
height: 1080,
width: 1920,
fileEncSha256: "KKNc6JCay[...]",
directPath: "/v/t62.7161-24/[...].enc?ccb=[...]",
jpegThumbnail: Buffer,
streamingSidecar: Buffer // 280 bytes
}
},
type: "media",
messageType: "videoMessage"
}
Attempted Solutions
Various message formats:
// All attempts result in the same error
await superchats.decrypt(message);
await superchats.decrypt(message.content);
await superchats.decrypt(message.content.videoMessage);
await superchats.decrypt({
...message,
type: 'media',
isMedia: true,
mimetype: message.content.videoMessage.mimetype
});
Timing considerations:
// Added 2-second delay as per documentation
await new Promise(resolve => setTimeout(resolve, 2000));
const result = await superchats.decrypt(targetMessage);
// Still fails with same error
Method availability check:
superchats.decryptByIdFile() - Method not found in v3.8.0
client.decryptByIdFile() - Method not available on client instance
Comparison with Working Media Types
Working (Stickers):
// This works perfectly
const stickerMessage = {
content: { stickerMessage: {...} },
type: "sticker"
};
await superchats.decrypt(stickerMessage); // ✓ Success
Working (Images):
// This also works
const imageMessage = {
content: { imageMessage: {...} },
type: "image"
};
await superchats.decrypt(imageMessage); // ✓ Success
Not Working (Videos):
// Always fails
const videoMessage = {
content: { videoMessage: {...} },
type: "media",
messageType: "videoMessage"
};
await superchats.decrypt(videoMessage); // ✗ Error: The message not is media
Impact
This bug is preventing us from:
Processing video messages in our customer support automation
Archiving media content for compliance requirements
Providing video preview functionality in our dashboard
Questions
Is this a known issue in v3.8.0?
Is there a specific message format required for video decryption that differs from other media types?
Are there alternative methods for video decryption in the current version?
Is a patch release planned to address this issue?
Can you provide a workaround while a permanent fix is developed?
Additional Information
I'm happy to provide:
Complete error stack traces
Sample video messages for testing
Debug logs with verbose output
Access to a test environment if needed
This is a critical issue for our production deployment. We would greatly appreciate urgent assistance or a workaround to resolve this video decryption problem.
Thank you for your prompt attention to this matter.
Best regards, [Your Name] [Your Company] [License ID/Email]
P.S. I've verified that all required fields (mediaKey, url, fileSha256, etc.) are present in the video messages, and the same decryption approach works perfectly for images and stickers, confirming this is specific to video message type validation.
P.P.S hi my claude say it to me, i do not know is it true or not. I'm hope for solution
P.P.P.S why does no way to create a ticket?