错误:调用者在节点中没有谷歌聊天机器人的权限

     2023-03-07     37

关键词:

【中文标题】错误:调用者在节点中没有谷歌聊天机器人的权限【英文标题】:Error: The caller does not have permission for google chat bot in node 【发布时间】:2021-01-24 05:13:50 【问题描述】:

尝试向 Google 聊天室发送消息时,我不断收到错误消息“呼叫者没有权限”。我已将机器人添加到房间,并且可以列出房间(请参阅 console.log),因此我知道我的凭据已加载且有效。此外,我尝试发送到的房间位于我的 console.log 中返回的房间列表中。不知道是什么问题。

import  Auth, chat_v1  from "googleapis";

const postMessage = async (message: string) => 
  const roomId = '<myroom>';

  let jwtClient = new Auth.GoogleAuth(
    keyFile: './googlekeys.json',
    scopes: ['https://www.googleapis.com/auth/chat.bot']
  );
  const chat = new chat_v1.Chat( auth: jwtClient );
  const rooms = await chat.spaces.list();
  rooms.data.spaces?.map((s) => 
    console.log(s);
  );
  await chat.spaces.messages.create(
    parent: `spaces/$roomId`,
    requestBody: 
      text: message,
    
  );

我的 googlekeys.json 文件格式:


  "type": "service_account",
  "project_id": "<project_id>",
  "private_key_id": "<private_key_id>",
  "private_key": "-----BEGIN PRIVATE KEY-----\<key>\n-----END PRIVATE KEY-----\n",
  "client_email": "<client_email>",
  "client_id": "<client_id>",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/starting-account-<account>"

【问题讨论】:

几个问题,以便进一步调查:您的googlekeys.json 看起来如何(经过清理的版本,没有令牌)?在使用 async/await 时,我强烈建议您使用 try-catch 块。 @JoseVasquez 我已更新问题以包含我的 googlekey.json 文件。同意 try-catch,就是尝试捕捉整个函数,但最好将其移入其中。 您能否确认您的 bot configuration > Bot 状态未禁用? @JoseVasquez 设置为“实时 - 可供用户使用” 这可以由this configuration 给出为了确保这不是您的错误原因,您能否检查您的 admin console > 应用程序 > G Suite > 设置Google Chat 和传统版 Hangouts > Chat Bots 是否关闭了允许用户安装聊天机器人选项? 【参考方案1】:

我有同样的问题。我有一个机器人无法发布到的房间。这个房间里有我和另一个人。当我将另一个人从房间里移走时,机器人就开始工作了。

我们都是 Google 群组 it@ourdomain.com 的成员。在环聊聊天 API 配置页面 (https://console.cloud.google.com/apis/api/chat.googleapis.com/hangouts-chat) 的权限部分中,我已将“您域中的特定人员和组”设置为:

me@ourdomain.com, it@ourdomain.com

我对此进行了更改以将组成员资格扩展到个人成员:

me@ourdomain.com,f@ourdomain.com,a@ourdomain.com,j@ourdomain.com

这解决了它。我猜 Google 不会在此设置中扩展群组,即使它说您可以进入群组。

【讨论】:

调用 GMAIL API 时出现间歇性错误 - “调用者没有权限”

】调用GMAILAPI时出现间歇性错误-“调用者没有权限”【英文标题】:intermittenterrorwhilecallingGMAILAPI-"Thecallerdoesnothavepermission"【发布时间】:2020-10-2407:56:58【问题描述】:间歇性出现此错误请求https://www.googleapis.com/discovery/v1/... 查看详情

错误: (gcloud.beta.functions.deploy) ... message=[调用者没有权限]

】错误:(gcloud.beta.functions.deploy)...message=[调用者没有权限]【英文标题】:ERROR:(gcloud.beta.functions.deploy)...message=[Thecallerdoesnothavepermission]【发布时间】:2019-01-2422:12:59【问题描述】:我正在尝试从这个repo部署代码:https://github.com/anis... 查看详情

“调用者没有权限”尝试使用 Firebase Admin SDK 创建自定义令牌

...irebaseAdminSDK【发布时间】:2020-12-0217:42:22【问题描述】:错误调用admin.auth().createCustomToken()时出现以下错误:Error:Thecallerd 查看详情

代码:403 消息:调用者没有权限

】代码:403消息:调用者没有权限【英文标题】:Code:403Message:Thecallerdoesnothavepermission【发布时间】:2017-09-2511:59:51【问题描述】:我正在使用GoogleClas-s-roomAPI将我的业务系统集成到GoogleClas-s-room。我可以使用服务帐户创建和列出... 查看详情

带有redis的节点js没有返回给调用者

】带有redis的节点js没有返回给调用者【英文标题】:Nodejswithredisnotreturningtocaller【发布时间】:2016-12-1307:17:42【问题描述】:我是Node世界的新手,但有一些回调和Promises的信息。所以只需编写一个小代码来从Redis获取数据并将其... 查看详情

为啥循环摘要在 gprof 的调用图输出中没有任何调用者?

】为啥循环摘要在gprof的调用图输出中没有任何调用者?【英文标题】:Whydon\'tcyclesummarieshaveanycallersingprof\'scall-graphoutput?为什么循环摘要在gprof的调用图输出中没有任何调用者?【发布时间】:2009-05-0806:01:14【问题描述】:我使... 查看详情

机器人回答后删除调用者消息

】机器人回答后删除调用者消息【英文标题】:Deleteinvocatormessageafterbot\'sanswer【发布时间】:2019-11-1909:27:35【问题描述】:我最近开始创建一个不和谐的机器人来玩,我试图删除调用者消息,但徒劳无功。我搜索“提示”并找到... 查看详情

使用服务器密钥时,Google Sheets API 返回“调用者没有权限”

】使用服务器密钥时,GoogleSheetsAPI返回“调用者没有权限”【英文标题】:GoogleSheetsAPIreturns"Thecallerdoesnothavepermission"whenusingserverkey【发布时间】:2016-12-2107:38:50【问题描述】:我在APIManager中生成了一个服务器密钥,并尝... 查看详情

Firebase - 应用分发无法获取应用信息:[403] 调用者没有权限 [重复]

】Firebase-应用分发无法获取应用信息:[403]调用者没有权限[重复]【英文标题】:Firebase-AppDistributionfailedtofetchappinformation:[403]Thecallerdoesnothavepermission[duplicate]【发布时间】:2020-10-0417:29:14【问题描述】:我正在使用gradle开发FirebaseA... 查看详情

使用 SQLyog 导出 MySQL 所有数据库会产生调用者/定义者权限错误

】使用SQLyog导出MySQL所有数据库会产生调用者/定义者权限错误【英文标题】:ExportMySQLalldatabaseswithSQLyogproducesinvoker/definerrightserror【发布时间】:2016-04-1519:15:25【问题描述】:我们有一个使用SQLyog导出所有数据库(包括mysql)的作... 查看详情

如何从 Google OAuth 2.0 Playground 运行 Google App Script 功能 |调用者没有权限

】如何从GoogleOAuth2.0Playground运行GoogleAppScript功能|调用者没有权限【英文标题】:HowtorunGoogleAppScriptfunctionfromGoogleOAuth2.0Playground|Thecallerdoesnothavepermission【发布时间】:2019-03-3107:21:12【问题描述】:我创建了一个新脚本,用于在我... 查看详情

无法从 Terraform 创建 App Engine 应用程序:调用者没有权限,被禁止

】无法从Terraform创建AppEngine应用程序:调用者没有权限,被禁止【英文标题】:UnabletocreateAppEngineAppfromTerraform:Thecallerdoesnothavepermission,forbidden【发布时间】:2022-01-1511:05:19【问题描述】:我有以下Terraform:data"google_client_config""curr... 查看详情

C# 中有没有办法在不使调用者也异步的情况下调用异步方法? [复制]

】C#中有没有办法在不使调用者也异步的情况下调用异步方法?[复制]【英文标题】:IsthereawayinC#tomakeacalltoanasyncmethodwithoutmakingthecalleralsoasync?[duplicate]【发布时间】:2016-11-2300:03:49【问题描述】:为了更清楚,我引用了一个以前... 查看详情

调用者如何从子 goroutine 的恐慌中恢复

】调用者如何从子goroutine的恐慌中恢复【英文标题】:Howdoesacallerfunctiontorecoverfromchildgoroutine\'spanics【发布时间】:2018-05-2805:57:24【问题描述】:我曾经认为如果调用者在恐慌之前完成,goroutine中的恐慌会杀死程序(延迟恢复没... 查看详情

模拟调用者阻止连接到数据库(不是明显的权限问题)

】模拟调用者阻止连接到数据库(不是明显的权限问题)【英文标题】:Impersonatingcallerpreventsconnectiontodatabase(notanobviouspermissionsissue)【发布时间】:2012-09-2711:59:00【问题描述】:我有一个托管在IIS中的Web服务,该服务在一个域帐... 查看详情

hsf原理细述

...列表的获取。伴随着web容器的启动,服务提供者和服务调用者向地址服务器获取配置服务器和Diamond服务器的ip列表信息,过程见上图的1、2步骤。(2).服务的注册发布。服务提供者获取配置服务器列表后,将服务的相关信息(接... 查看详情

注销错误 Cloud Firestore。调用者无权执行指定操作

】注销错误CloudFirestore。调用者无权执行指定操作【英文标题】:SignouterrorCloudFirestore.Thecallerdoesnothavepermissiontoexecutethespecifiedoperation【发布时间】:2021-03-0310:48:35【问题描述】:我有一个Flutter应用程序,我已成功登录用户并且没... 查看详情

在查找“aiohttp.web”的模块规范时发出 azure 测试聊天机器人“错误(ModuleNotFoundError:没有名为“aiohttp”的模块)

】在查找“aiohttp.web”的模块规范时发出azure测试聊天机器人“错误(ModuleNotFoundError:没有名为“aiohttp”的模块)【英文标题】:Issueazuretestchatbot"Errorwhilefindingmodulespecificationfor\'aiohttp.web\'(ModuleNotFoundError:Nomodulenamed\'aiohttp\')... 查看详情