@rexxhayanasi/elaina-baileys 1.2.1-rc.2 → 1.2.1-rc.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Utils/messages.js +61 -56
- package/package.json +1 -2
package/lib/Utils/messages.js
CHANGED
|
@@ -107,80 +107,85 @@ const prepareWAMessageMedia = async (message, options) => {
|
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
const isNewsletter = !!options.jid && (0, WABinary_1.isJidNewsletter)(options.jid);
|
|
110
|
+
const isNewsletter = !!options.jid && (0, WABinary_1.isJidNewsletter)(options.jid);
|
|
111
111
|
|
|
112
|
-
if (isNewsletter) {
|
|
113
|
-
|
|
112
|
+
if (isNewsletter) {
|
|
113
|
+
logger === null || logger === void 0 ? void 0 : logger.info({ key: cacheableKey }, 'Preparing raw media for newsletter');
|
|
114
114
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
115
|
+
const { filePath, fileSha256, fileLength } = await (0, messages_media_1.getRawMediaUploadData)(
|
|
116
|
+
uploadData.media,
|
|
117
|
+
options.mediaTypeOverride || mediaType,
|
|
118
|
+
logger
|
|
119
|
+
);
|
|
120
120
|
|
|
121
|
-
|
|
121
|
+
const fileSha256B64 = fileSha256.toString('base64');
|
|
122
122
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
123
|
+
try {
|
|
124
|
+
if (mediaType === 'video' || mediaType === 'image') {
|
|
125
|
+
const { thumbnail, originalImageDimensions } = await (0, messages_media_1.generateThumbnail)(filePath, mediaType, options);
|
|
126
|
+
if (!uploadData.jpegThumbnail) uploadData.jpegThumbnail = thumbnail;
|
|
127
127
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
128
|
+
if (!uploadData.width && originalImageDimensions) {
|
|
129
|
+
uploadData.width = originalImageDimensions.width;
|
|
130
|
+
uploadData.height = originalImageDimensions.height;
|
|
131
|
+
}
|
|
131
132
|
}
|
|
132
|
-
}
|
|
133
133
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
134
|
+
if (mediaType === 'audio' || mediaType === 'video') {
|
|
135
|
+
if (typeof uploadData.seconds === 'undefined') {
|
|
136
|
+
uploadData.seconds = await (0, messages_media_1.getAudioDuration)(filePath);
|
|
137
|
+
}
|
|
137
138
|
}
|
|
138
|
-
}
|
|
139
139
|
|
|
140
|
-
|
|
141
|
-
|
|
140
|
+
if (mediaType === 'audio' && uploadData.ptt === true) {
|
|
141
|
+
uploadData.waveform = await (0, messages_media_1.getAudioWaveform)(filePath, logger);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
} catch (err) {
|
|
145
|
+
logger === null || logger === void 0 ? void 0 : logger.warn({ trace: err.stack }, 'Metadata generation failed');
|
|
142
146
|
}
|
|
143
|
-
} catch (err) {
|
|
144
|
-
logger === null || logger === void 0 ? void 0 : logger.warn({ trace: err.stack }, 'Failed to generate metadata for newsletter media');
|
|
145
|
-
}
|
|
146
147
|
|
|
147
|
-
|
|
148
|
+
const streamToUpload = (0, fs_1.createReadStream)(filePath);
|
|
148
149
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
150
|
+
const uploaded = await options.upload(streamToUpload, {
|
|
151
|
+
fileEncSha256B64: fileSha256B64,
|
|
152
|
+
mediaType: mediaType,
|
|
153
|
+
timeoutMs: options.mediaUploadTimeoutMs
|
|
154
|
+
});
|
|
154
155
|
|
|
155
|
-
|
|
156
|
+
await fs_1.promises.unlink(filePath);
|
|
156
157
|
|
|
157
|
-
|
|
158
|
-
[`${mediaType}Message`]: MessageTypeProto[mediaType].fromObject({
|
|
159
|
-
url: mediaUrl,
|
|
160
|
-
directPath,
|
|
161
|
-
fileSha256,
|
|
162
|
-
fileLength,
|
|
163
|
-
...uploadData,
|
|
164
|
-
media: undefined
|
|
165
|
-
})
|
|
166
|
-
});
|
|
158
|
+
const finalUrl = uploaded.mediaUrl || uploaded.url || `https://mmg.whatsapp.net${uploaded.directPath}`;
|
|
167
159
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
160
|
+
const obj = Types_1.WAProto.Message.fromObject({
|
|
161
|
+
[`${mediaType}Message`]: MessageTypeProto[mediaType].fromObject({
|
|
162
|
+
url: finalUrl,
|
|
163
|
+
directPath: uploaded.directPath,
|
|
164
|
+
mediaKey: undefined,
|
|
165
|
+
fileEncSha256: undefined,
|
|
166
|
+
fileSha256,
|
|
167
|
+
fileLength,
|
|
168
|
+
staticUrl: uploaded.handle ? finalUrl : undefined,
|
|
169
|
+
...uploadData,
|
|
170
|
+
media: undefined
|
|
171
|
+
})
|
|
172
|
+
});
|
|
172
173
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
if (uploadData.ptv) {
|
|
175
|
+
obj.ptvMessage = obj.videoMessage;
|
|
176
|
+
delete obj.videoMessage;
|
|
177
|
+
}
|
|
176
178
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
}
|
|
179
|
+
if (obj.stickerMessage) {
|
|
180
|
+
obj.stickerMessage.stickerSentTs = Date.now();
|
|
181
|
+
}
|
|
181
182
|
|
|
182
|
-
|
|
183
|
-
|
|
183
|
+
if (cacheableKey) {
|
|
184
|
+
options.mediaCache.set(cacheableKey, Types_1.WAProto.Message.encode(obj).finish());
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
return obj;
|
|
188
|
+
}
|
|
184
189
|
const requiresDurationComputation = mediaType === 'audio' && typeof uploadData.seconds === 'undefined';
|
|
185
190
|
const requiresThumbnailComputation = (mediaType === 'image' || mediaType === 'video') &&
|
|
186
191
|
(typeof uploadData['jpegThumbnail'] === 'undefined');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rexxhayanasi/elaina-baileys",
|
|
3
|
-
"version": "1.2.1-rc.
|
|
3
|
+
"version": "1.2.1-rc.3",
|
|
4
4
|
"description": "Custom Baileys WhatsApp API",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"baileys",
|
|
@@ -53,7 +53,6 @@
|
|
|
53
53
|
"audio-decode": "^2.1.3",
|
|
54
54
|
"axios": "^1.6.0",
|
|
55
55
|
"chalk": "^4.1.2",
|
|
56
|
-
"fflate": "^0.8.2",
|
|
57
56
|
"gradient-string": "^2.0.2",
|
|
58
57
|
"cache-manager": "^5.7.6",
|
|
59
58
|
"cheerio": "^1.0.0-rc.12",
|