You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I want to send 4 messages in order, but I want their order to be preserved.
This is also impossible.
I tried many methods, either it did not send in order or it was very slow.
1-)
const sendMessagesFast = async (messages, chatId) => {
// Mesajları hızlı bir şekilde sırayla gönderiyoruz
for (let index = 0; index < messages.length; index++) {
const message = messages[index];
let processedMessage = processMessage(message, chatId);
try {
// Her mesajı sırayla gönderiyoruz
const sentMessage = await bot.sendMessage(chatId, processedMessage);
setUserProperty(chatId, "last_message_id", sentMessage.message_id);
console.log(`Mesaj ${index + 1} başarıyla gönderildi.`);
} catch (error) {
console.error(`Mesaj ${index + 1} gönderilirken hata oluştu: ${error}`);
}
}
console.timeEnd("message-send-time");
};
468.42ms
const sendMessagesFast = async (messages, chatId) => {
console.time("message-send-time");
// Mesajları paralel olarak göndermek için, her mesajı Promise.all ile başlatıyoruz.
const sendPromises = messages.map(async (message, index) => {
let processedMessage = processMessage(message, chatId);
try {
// Her mesajı paralel olarak gönderebiliriz
const sentMessage = await bot.sendMessage(chatId, processedMessage);
setUserProperty(chatId, "last_message_id", sentMessage.message_id);
console.log(`Mesaj ${index + 1} başarıyla gönderildi.`);
} catch (error) {
console.error(`Mesaj ${index + 1} gönderilirken hata oluştu: ${error}`);
}
});
// Tüm mesajları paralel olarak göndermek için Promise.all kullanıyoruz.
await Promise.all(sendPromises);
console.timeEnd("message-send-time");
};
2ms but not in order
const sendMessagesFastWithOrder = (messages, chatId) => {
console.time("message-send-time");
// Mesajları sırayla ve hızlı şekilde göndermek için bir fonksiyon yazıyoruz.
let index = 0;
function sendNextMessage() {
if (index < messages.length) {
let processedMessage = processMessage(messages[index], chatId);
bot.sendMessage(chatId, processedMessage)
.then((sentMessage) => {
setUserProperty(chatId, "last_message_id", sentMessage.message_id);
console.log(`Mesaj ${index + 1} başarıyla gönderildi.`);
index++;
// Bir sonraki mesajı hemen gönderecek şekilde çağırıyoruz.
sendNextMessage();
})
.catch((error) => {
console.error(`Mesaj ${index + 1} gönderilirken hata oluştu: ${error}`);
index++;
sendNextMessage(); // hata olsa bile sırayı korumalıyız
});
} else {
console.timeEnd("message-send-time");
}
}
// İlk mesajı göndermek için başlatıyoruz.
sendNextMessage();
};
556ms
The text was updated successfully, but these errors were encountered:
I want to send 4 messages in order, but I want their order to be preserved.
This is also impossible.
I tried many methods, either it did not send in order or it was very slow.
1-)
522.625ms
468.42ms
2ms but not in order
556ms
The text was updated successfully, but these errors were encountered: