Google聊天机器人向房间中的特定用户发送消息

时间:2018-06-22 13:47:38

标签: php hangouts-api hangouts-chat

我有一个工作正常的Google聊天机器人,可以使用以下代码将消息发送到特定的room聊天机器人:

$client = new Google_Client();
$client->setAuthConfig('../service-account.json');
$client->addScope('https://www.googleapis.com/auth/chat.bot');

$service = new Google_Service_HangoutsChat($client);

$message = new Google_Service_HangoutsChat_Message();

$message->setText('@Leon Vismer Testing a message.');
$message->setAnnotations([$annotation]);

$service->spaces_messages->create('spaces/SPACE_REFERENCE', $message);

但是我想做的是使用提及将消息定向到room内部的特定用户。我尝试使用注释,但这似乎不起作用。我在房间内收到一条新消息的通知,但是@mention对特定用户不是正确的注释。

我尝试使用:

$user = new Google_Service_HangoutsChat_User([
    'name' => 'users/NUMBER_TO_THE_USER',
    'displayName' => 'Leon Vismer',
    'type' => 'HUMAN',
]);

$annotation = new Google_Service_HangoutsChat_Annotation([
    'type' => 'USER_MENTION',
    'startIndex' => 1,
    'length' => strlen('@Leon Vismer'),
    'userMention' => new Google_Service_HangoutsChat_UserMentionMetadata([
        'user' => $user,
        'type' => 'MENTION',
    ])
]);

聊天机器人能否以某种方式向特定用户发起对话?

0 个答案:

没有答案