Πώς να πάρει τις εικόνες / τα συνημμένα σταλεί από το χρήστη από το Facebook Messenger bot μέσω διαλόγου ροής (API.AI);

ψήφοι
1

Έχω Chabot powered by διαλόγου ροής (API.AI), η οποία απαιτεί από το χρήστη να στείλει εικόνες.

Ξέρω ότι όταν ο χρήστης κάνει κλικ στο κουμπί Έναρξη στο messenger (κατά την έναρξη μιας συνομιλίας με το bot) μια πρόθεση στο Dialog ροής (API.AI) με ΚΑΛΩΣ ΗΡΘΑΤΕ / FACEBOOK_WELCOME εκδήλωση θα πάρει ενεργοποιείται.

Όταν ο χρήστης στέλνει απλό μήνυμα κειμένου σε προθέσεων διαλόγου ροής (API.AI) με το εν λόγω κείμενο Χρήστης λέει θα πάρει ενεργοποιείται.

αμφιβολία μου υπάρχει πρόθεση στο Dialog ροής (API.AI) που παίρνει ενεργοποιείται όταν ένας χρήστης στέλνει μια εικόνα ως συνημμένο στο bot ή οποιαδήποτε μεθοδολογία για την επίτευξη αυτού του είδους της λειτουργικότητας εκεί.

Παρακαλώ να με βοηθήσει με αυτό

Ευχαριστώ εκ των προτέρων

Δημοσιεύθηκε 22/10/2017 στις 17:54
πηγή χρήστη
Σε άλλες γλώσσες...                            


4 απαντήσεις

ψήφοι
2

εισάγετε περιγραφή της εικόνας εδώΧρησιμοποιήστε FACEBOOK_MEDIA στο τμήμα περίπτωση οποιασδήποτε πρόθεσης σε DialogFlow (API.AI). Τώρα κάθε φορά που χρήστης ανεβάζει μια εικόνα για το bot, η πρόθεση που περιέχει FACEBOOK_MEDIA στο τμήμα του εκδήλωση θα πάρει ενεργοποιείται και θα πάρετε ένα φορτίο που περιέχει την εικόνα URL για να σας WebHook.

Απαντήθηκε 25/10/2017 στις 15:01
πηγή χρήστη

ψήφοι
3

Παρακάτω είναι η απάντηση παίρνω όταν φορτώσετε μια εικόνα ως συνημμένο στο facebook messenger. Θα χρησιμοποιηθεί dialogflow.com και ολοκληρωμένο πρόγραμμα χειρισμού webhook μου στο nodejs χρησιμοποιώντας τη λειτουργία AWS Lambda, API Πύλη και AWS CloudWatch Logs. Μπορείτε επίσης να χρησιμεύσει webhook αίτημα και να εκτυπώσετε τα αρχεία καταγραφής. Γράφοντας console.log () βοήθησε πραγματικά να εκτυπώσετε το αντικείμενο που αποστέλλονται από facbook αγγελιοφόρο να webhook μας.

exports.handler = (event, context, callback) => {
  console.log(event);
  console.log(event.originalRequest.data.message.attachments[0].payload.url);
};

Θα πάρετε το αντικείμενο εκδήλωση url εκτυπώνονται στα αρχεία καταγραφής cloudwatch: Εδώ, σε περίπτωση ένστασης η διεύθυνση URL είναι: https://scontent-ort2-2.xx.fbcdn.net/v/t34.18173-12/30776728_1969968496378460_1504397895_n.png?_nc_cat = 0 & _nc_ad = ΖΜ & _nc_cid = 0 & ΟΗ = 4aad83994a5501d1c50f7e2e6c7d50ea & oe = 5ADBEF72

{
    "originalRequest": {
        "source": "facebook",
        "data": {
            "sender": {
                "id": "2037600292946778"
            },
            "recipient": {
                "id": "592499574453638"
            },
            "message": {
                "attachments": [
                    {
                        "payload": {
                            "url": "https://scontent-ort2-2.xx.fbcdn.net/v/t34.18173-12/30776728_1969968496378460_1504397895_n.png?_nc_cat=0&_nc_ad=z-m&_nc_cid=0&oh=4aad83994a5501d1c50f7e2e6c7d50ea&oe=5ADBEF72"
                        },
                        "type": "image"
                    }
                ],
                "mid": "mid.$cAAJAFU4_rqppFAhJFli4sL-nvI2y",
                "seq": 274
            },
            "timestamp": 1524222785882
        }
    },
    "id": "323b2069-1fb3-4643-9cab-a36562286069",
    "timestamp": "2018-04-20T11:13:06.117Z",
    "lang": "en",
    "result": {
        "source": "agent",
        "resolvedQuery": "FACEBOOK_MEDIA",
        "speech": "",
        "action": "",
        "actionIncomplete": false,
        "parameters": {},
        "contexts": [
            {
                "name": "facebook_media",
                "parameters": {},
                "lifespan": 0
            },
            {
                "name": "generic",
                "parameters": {
                    "facebook_sender_id": "2037600292946778"
                },
                "lifespan": 4
            }
        ],
        "metadata": {
            "intentId": "52d18e01-1ff2-4e35-af42-bc2de65fa38b",
            "webhookUsed": "true",
            "webhookForSlotFillingUsed": "false",
            "intentName": "attachment intent"
        },
        "fulfillment": {
            "speech": "Received an image",
            "messages": [
                {
                    "type": 0,
                    "speech": "Received an image"
                }
            ]
        },
        "score": 1
    },
    "status": {
        "code": 200,
        "errorType": "success",
        "webhookTimedOut": false
    },
    "sessionId": "d815740b-4f6d-432b-991d-c1125ceb2665"
}
Απαντήθηκε 20/04/2018 στις 14:27
πηγή χρήστη

ψήφοι
0

Όταν χρησιμοποιείτε WebhookClient στο DialogFlow, μπορείτε να πάρετε url της εικόνας σαν αυτό:

const agent = new WebhookClient({ request, response });
const imageUrl = agent.request_.body.originalDetectIntentRequest.payload.data.message.attachments[0].payload.url;
Απαντήθηκε 03/06/2018 στις 20:25
πηγή χρήστη

ψήφοι
0

Η λύση μου:

exports.imageFb = function imageFb (request, response){
    console.log(request.body.originalDetectIntentRequest.payload.data.message.attachments[0].payload.url);
}           
Απαντήθηκε 08/06/2018 στις 22:17
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more