Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Detect the speaker of Google Home or Amazon's Alexa

I would like to detect who is interacting with my agent.

For example I read that Alexa should be able to detect different users. The Google Home advertisement also let me think that it should detect who is talking. So how can I see who is talking?

In slack it seems to be easier since it is well known who is writing. However I cannot see who I get the current user.

like image 222
rekire Avatar asked Nov 27 '25 21:11

rekire


1 Answers

I found out how to detect the user in slack: If you implement that hook you will get this example json:

{
    "id": "f7912345-e21c-450f-a8ca-d01e38012345",
    "timestamp": "2016-12-20T06:53:51.071Z",
    "result": {
        "source": "agent",
        "resolvedQuery": "echo hallo welt",
        "speech": "",
        "action": "",
        "actionIncomplete": false,
        "parameters": {
            "myInput": "hallo welt"
        },
        "contexts": [{
            "name": "generic",
            "parameters": {
                "slack_user_id": "U0AT12345",
                "myInput": "hallo welt",
                "slack_channel": "D3DR12345",
                "myInput.original": "hallo welt"
            },
            "lifespan": 4
        }],
        "metadata": {
            "intentId": "06212345-06a0-40fe-bbeb-9189db412345",
            "webhookUsed": "true",
            "webhookForSlotFillingUsed": "false",
            "intentName": "Response"
        },
        "fulfillment": {
            "speech": "",
            "messages": [{
                "type": 0,
                "speech": ""
            }]
        },
        "score": 0.75
    },
    "status": {
        "code": 200,
        "errorType": "success"
    },
    "sessionId": "10612345-c681-11e6-af08-875120912345",
    "originalRequest": {
        "source": "slack_testbot",
        "data": {
            "channel": "D3DR12345",
            "match": ["echo hallo welt"],
            "text": "echo hallo welt",
            "team": "T04H12345",
            "type": "message",
            "event": "direct_message",
            "user": "U0AT12345",
            "ts": "1482216830.000005"
        }
    }
}

So in case of slack you can access result->contexts[0]->paramaters->slack_user_id.

like image 158
rekire Avatar answered Nov 30 '25 19:11

rekire