Rocket.Chat - 如何获取 roomId

Rocket.Chat - How get roomId

我是 Rocket.Chat 的新手。我需要向频道发送消息。我已经获得授权。当我阅读有关发送消息的文档时,我找到了 roomId 参数,但我不知道如何获取此 ID。我尝试在 Rocket.Chat 的管理面板中找到但没有成功。另外,如果谁知道,如何访问 Rocket.Chat 数据库

谢谢

要访问数据库,您可以使用 Robo 3t (how to use it with meteor How to connect mongodb clients to local Meteor MongoDB).

或者您可以使用 rest api to get the channel info https://rocket.chat/docs/developer-guides/rest-api/channels/info

我假设您正在使用 API 发送消息,如果是,那么您将是创建频道(房间)的人。

创建新频道时,响应包含有关新创建频道的详细信息,其中包括生成的 _id

在这种情况下,每当您创建一个新频道时,将其存储在您的数据存储中的某个位置,然后使用该频道的名称恢复它,这将为您节省每次需要获取 Roekct API 的旅程roomId.

首先,调用 API create-visitor to create a visitor and in response, you will get a token, use in next API open-room 打开一个房间,作为回应,您将获得 room-id。

{
    "msg": "method",
    "method": "createDirectMessage",
    "id": "42",
    "params": ["username-goes-here"]
}

使用 createDirectMessage api,您必须传递要为其创建空间的那些用户的用户名。如果您不发送任何用户,将创建一个只有您的房间。

此 api 将 return 创建的房间的 roomId。下面是上面api.

的回复
{
    "msg": "result",
    "id": "42",
    "result": {
        "rid": "room-id-would-be-here"
    }
}

每次您使用相同的用户列表点击 createDirectMessage api 时,将 return 编辑相同的 roomId。