Skip to content

ReceiveNotification#

Test

השיטה מכוונת לקבלת הודעה נכנסת אחת מתוך תור ההודעות.

שיטת ReceiveNotification ממתינה לקבלת הודעה למשך 5 שניות. קריאת השיטה מסתיימת בתגובה ריקה אם הושג פסק זמן. אם מגיעה הודעה לתור תוך 5 שניות, הקריאה לשיטה הושלמה, והשיטה מחזירה את ההודעה שהתקבלה.

לאחר קבלת ועיבוד הודעה נכנסת, עליך למחוק את ההודעה מהתור. זה מחייב אותך להפעיל את השיטה DeleteNotification. לאחר קריאה לשיטת DeleteNotification, ההודעה תיחשב שהתקבלה ועובדה ותימחק לצמיתות מהתור. לכן, הקריאה הבאה של שיטת ReceiveNotification תחזיר את ההודעה הבאה מהתור בסדר שבו ההודעות מגיעות לתור.

הודעות נכנסות נשמרות בתור למשך 24 שעות.

הודעות נשלחות מהתור פנימה FIFO לְהַזמִין

בַּקָשָׁה#

כדי לקבל את ההודעה הנכנסת הבאה מהתור, עליך לבצע בקשה בכתובת:

GET
{{apiUrl}}/waInstance{{idInstance}}/receiveNotification/{{apiTokenInstance}}
TEST

לפרמטרים של בקשת apiUrl, idInstance ו-apiTokenInstance, עיין בסעיף לפני שתתחיל.

פרמטרים של בקשת כתובת אתר#

פרמטר הקלד חובה תֵאוּר
receiveTimeout מספר שלם לא פסק זמן המתנה להודעה, לוקח ערך בין 5 ל-60 שניות (ברירת מחדל 5 שניות)

תגובה#

פרמטרי תגובה#

פרמטר הקלד תֵאוּר
receiptId מספר שלם מזהה קבלה למחיקת הודעה נכנסת בשיטת DeleteNotification
גוף חפץ הודעה נכנסת בהתאם לפורמט הודעות נכנסות

גוף לדוגמא תגובה#

{
    "receiptId": 1234567,
    "body": {
        "typeWebhook": "incomingMessageReceived",
        "instanceData": {
            "idInstance": 1234,
            "wid": "11001234567@c.us",
            "typeInstance": "whatsapp"
        },
        "timestamp": 1588091580,
        "idMessage": "F7AEC1B7086ECDC7E6E45923F5EDB825",
        "senderData": {
            "chatId": "79001234568@c.us",
            "sender": "79001234568@c.us",
            "senderName": "John",
            "senderContactName": "John Doe"
        },
        "messageData":{
            "typeMessage":"textMessage",
            "textMessageData":{
                "textMessage":"I use Green-API to send this message to you!"
            }
        }
    }
}

ReceiveNotification שגיאות#

לרשימה של שגיאות משותפות לכל השיטות, עיין בסעיף שגיאות נפוצות

קוד HTTP מזהה שגיאה תֵאוּר
400 Parameter idInstance לא מספר שלם פרמטר idInstance אינו צוין או מכיל תווים שאינם ספרות
400 Parameter apiTokenInstance לא מוגדר 'apiTokenInstance' לא צוין

דוגמאות לבקשות#

import requests

url = "{{apiUrl}}/waInstance{{idInstance}}/receiveNotification/{{apiTokenInstance}}"

payload = {}
headers= {}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/receiveNotification/{{apiTokenInstance}}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/receiveNotification/")
    .append({{apiTokenInstance}});

var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.GET, null, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/receiveNotification/")
    .append({{apiTokenInstance}});

var response = Unirest.get(requestUrl.toString())
    .header("Content-Type", "application/json")
    .asString();

System.out.println(response);
Sub ReceiveNotification()
    Dim url As String
    Dim http As Object
    Dim response As String

    ' The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
    url = "{{apiUrl}}/waInstance{{idInstance}}/receiveNotification/{{apiTokenInstance}}"

    Set http = CreateObject("MSXML2.XMLHTTP")

    http.Open "GET", url, False
    http.Send

    response = http.responseText

    Debug.Print response

    ' Outputting the answer to the desired cell
    ' Range("A1").Value = response

    Set http = Nothing
End Sub 

אתה יכול לראות את הדוגמה של קוד קבלת התראות ב-NodeJS בקובץ ReceiveNotifications