mirror of
https://github.com/cheveguerra/whatsapp-web.js.git
synced 2026-04-20 12:39:20 +00:00
fix: upload media
As of WhatsApp Web v2.2035.12, the structure of the return value for `uploadMedia()` now returns an object that contains the previously returned data in its `mediaEntry` property. fix #318
This commit is contained in:
@@ -128,7 +128,7 @@ exports.LoadUtils = () => {
|
|||||||
isGif: mediaData.isGif
|
isGif: mediaData.isGif
|
||||||
});
|
});
|
||||||
|
|
||||||
if(forceVoice && mediaData.type === 'audio') {
|
if (forceVoice && mediaData.type === 'audio') {
|
||||||
mediaData.type = 'ptt';
|
mediaData.type = 'ptt';
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -140,21 +140,27 @@ exports.LoadUtils = () => {
|
|||||||
mediaObject.consolidate(mediaData.toJSON());
|
mediaObject.consolidate(mediaData.toJSON());
|
||||||
mediaData.mediaBlob.autorelease();
|
mediaData.mediaBlob.autorelease();
|
||||||
|
|
||||||
const uploadedMedia = await window.Store.MediaUpload.uploadMedia({ mimetype: mediaData.mimetype, mediaObject, mediaType });
|
const uploadedMedia = await window.Store.MediaUpload.uploadMedia({
|
||||||
if (!uploadedMedia) {
|
mimetype: mediaData.mimetype,
|
||||||
|
mediaObject,
|
||||||
|
mediaType
|
||||||
|
});
|
||||||
|
|
||||||
|
const mediaEntry = uploadedMedia.mediaEntry;
|
||||||
|
if (!mediaEntry) {
|
||||||
throw new Error('upload failed: media entry was not created');
|
throw new Error('upload failed: media entry was not created');
|
||||||
}
|
}
|
||||||
|
|
||||||
mediaData.set({
|
mediaData.set({
|
||||||
clientUrl: uploadedMedia.mmsUrl,
|
clientUrl: mediaEntry.mmsUrl,
|
||||||
directPath: uploadedMedia.directPath,
|
directPath: mediaEntry.directPath,
|
||||||
mediaKey: uploadedMedia.mediaKey,
|
mediaKey: mediaEntry.mediaKey,
|
||||||
mediaKeyTimestamp: uploadedMedia.mediaKeyTimestamp,
|
mediaKeyTimestamp: mediaEntry.mediaKeyTimestamp,
|
||||||
filehash: mediaObject.filehash,
|
filehash: mediaObject.filehash,
|
||||||
uploadhash: uploadedMedia.uploadHash,
|
uploadhash: mediaEntry.uploadHash,
|
||||||
size: mediaObject.size,
|
size: mediaObject.size,
|
||||||
streamingSidecar: uploadedMedia.sidecar,
|
streamingSidecar: mediaEntry.sidecar,
|
||||||
firstFrameSidecar: uploadedMedia.firstFrameSidecar
|
firstFrameSidecar: mediaEntry.firstFrameSidecar
|
||||||
});
|
});
|
||||||
|
|
||||||
return mediaData;
|
return mediaData;
|
||||||
@@ -284,7 +290,7 @@ exports.LoadUtils = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
window.WWebJS.sendChatstate = async (state, chatId) => {
|
window.WWebJS.sendChatstate = async (state, chatId) => {
|
||||||
switch(state) {
|
switch (state) {
|
||||||
case 'typing':
|
case 'typing':
|
||||||
await window.Store.Wap.sendChatstateComposing(chatId);
|
await window.Store.Wap.sendChatstateComposing(chatId);
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user