मैं एक साधारण Facebook मैसेंजर chatbot निर्माण के साथ चारों ओर खेल रहा हूँ और मैं मुसीबत अनुक्रम में संदेश भेजने आ रही है।
उपरोक्त उदाहरण में, यह क्रम में हैलो!, 1, 2, 3 मुद्रित किया जाना चाहिए था। मैं वर्तमान में पाया फेसबुक डॉक्स अनुसरण कर रहा हूँ यहाँ इस सरल पाठ संदेश के समारोह को लागू करने। मैं अपने एक्सप्रेस Node.js सर्वर नीचे दिए गए कोड को शामिल किया है:
परिभाषित sendTextMessage()समारोह:
var request = require(request);
function sendTextMessage(user, text) {
messageData = {
text: text
};
request({
url: https://graph.facebook.com/v2.6/me/messages,
qs: {access_token: PAGE_ACCESS_TOKEN},
method: POST,
json: {
recipient: {id: user},
message: messageData
}
}, function(error, response, body) {
if (error) {
console.log(Error sending message: , error);
} else if (response.body.error) {
console.log(Error: , response.body.error);
} else {
console.log(Message successfully send.)
}
});
}
जवाब भेजने का यह उपयोग करते हुए:
sendTextMessage(user, Hello!);
sendTextMessage(user, 1);
sendTextMessage(user, 2);
sendTextMessage(user, 3);
मैं भी एक साधारण कतार को लागू करने की कोशिश की है कि संदेशों कतारों और केवल एक के बाद एक समय में एक संदेश भेजता requestहै सफलता कॉलबैक। यह मैं संदेह है कि मैं मैसेंजर एपीआई के साथ सही ढंग से बातचीत नहीं कर रहा हूँ कर रही है।
किसी को भी इस मुद्दे का सामना करना पड़ा है? मैं संदेशों क्रम में भेजने के लिए कैसे मिल सकता है? धन्यवाद!
संपादित करें
क्योंकि मैं एक साधारण कतार लागू किया है लेकिन अभी भी मैं यहां अपने सरल कतार प्रणाली के लिए कोड शामिल कर रहा हूँ इस समस्या का सामना,।
var queue = [];
var queueProcessing = false;
function queueRequest(request) {
queue.push(request);
if (queueProcessing) {
return;
}
queueProcessing = true;
processQueue();
}
function processQueue() {
if (queue.length == 0) {
queueProcessing = false;
return;
}
var currentRequest = queue.shift();
request(currentRequest, function(error, response, body) {
if (error || response.body.error) {
console.log(Error sending messages!);
}
processQueue();
});
}
queueRequest(/* Message 1 */);
queueRequest(/* Message 2 */);
queueRequest(/* Message 3 */);
अद्यतन करें
यह बग फेसबुक की सूचना मिली थी, लेकिन यह लग रहा है जैसे वे इसे ठीक करने नहीं जा रहे हैं । कृपया फेसबुक की पोस्ट पर टिकट धागा पढ़ा यहाँ वे क्या कहते हो रहा है पर जानकारी के लिए। (इस पर फेसबुक का ध्यान प्राप्त करने के लिए लुईस के लिए धन्यवाद)














