Hoe kan ik afbeeldingen / attachments door gebruiker verzonden vanuit Facebook boodschapper bot door middel van Dialog Flow (API.AI) krijgen?

stemmen
1

Ik heb Chabot aangedreven door Dialog Flow (API.AI) die de gebruiker nodig heeft om afbeeldingen te verzenden.

Ik weet dat wanneer de gebruiker klikt op de knop Aan de slag in messenger (tijdens het starten van een gesprek met de bot) een intentie in Dialog Flow (API.AI) met WELKOM / FACEBOOK_WELCOME evenement krijgt geactiveerd.

Wanneer de gebruiker een intentie in Dialog Flow (API.AI) stuurt eenvoudig SMS-bericht met de tekst in gebruiker zegt krijgt geactiveerd.

Mijn twijfel is er een intentie Dialog Flow (API.AI) die wordt geactiveerd wanneer een gebruiker een afbeelding verzendt als bijlage aan het bot of is er een methode om dat soort functionaliteit te bereiken.

Please help me met deze

Bij voorbaat dank

De vraag is gesteld op 22/10/2017 om 17:54
bron van user
In andere talen...                            


4 antwoorden

stemmen
2

voer image beschrijving hierGebruik FACEBOOK_MEDIA in geval gedeelte van elke intentie DialogFlow (API.AI). Nu wanneer de gebruiker een afbeelding uploadt naar de bot, de intentie die bevat FACEBOOK_MEDIA zal in zijn geval deel krijgen geactiveerd en u krijgt een lading die het beeld bevat krijgen URL om u te webhook.

antwoordde op 25/10/2017 om 15:01
bron van user

stemmen
3

Hieronder is het antwoord dat ik krijg wanneer ik een afbeelding te uploaden als bijlage op facebook messenger. Ik gebruikte dialogflow.com en geïntegreerd mijn webhook handler in NodeJS behulp van AWS Lambda functie, API Gateway en AWS CloudWatch Logs. U kan ook dienen webhook aanvraag en printlogs. Schrijven console.log () echt geholpen om het object verzonden vanaf facbook boodschapper naar onze webhook af te drukken.

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

U zult event object url gedrukt in de CloudWatch logs te krijgen: Hier in het geval object de url is: https://scontent-ort2-2.xx.fbcdn.net/v/t34.18173-12/30776728_1969968496378460_1504397895_n.png?_nc_cat = 0 & _nc_ad = zm & _nc_cid = 0 & oh = 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"
}
antwoordde op 20/04/2018 om 14:27
bron van user

stemmen
0

Bij het gebruik van WebhookClient in DialogFlow, kun je een url als dit te krijgen:

const agent = new WebhookClient({ request, response });
const imageUrl = agent.request_.body.originalDetectIntentRequest.payload.data.message.attachments[0].payload.url;
antwoordde op 03/06/2018 om 20:25
bron van user

stemmen
0

Mijn oplossing:

exports.imageFb = function imageFb (request, response){
    console.log(request.body.originalDetectIntentRequest.payload.data.message.attachments[0].payload.url);
}           
antwoordde op 08/06/2018 om 22:17
bron van user

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