2

迁移到新的对话 API 后,

当尝试获取具有频道 ID 的频道时,我收到以下错误:

<TCHResult: 0x6000039e60e0> - code: 102; text: Conversation with given sid not found.

以下是我遵循的步骤:

首先,使用正确的 jwt 令牌初始化聊天客户端:

TwilioConversationsClient.conversationsClient(withToken: token, properties: nil, delegate: self) { (result, chatClient) in
 self.client = chatClient
 self.client?.delegate = self
}

其次,从后端获取频道ID,并尝试获取该ID的频道。我确保频道 ID 有效,并且在迁移前存在聊天前对话。

self.client?.conversation(withSidOrUniqueName: channelId, completion: { (result, conversation) in
   // Error here, conversation is nil
})

当我在获取频道之前打印客户详细信息时,我得到了这个:

client Optional(<<TCHUser: 0x6000038fe700>: identity: '100360', friendlyName: 'xxxxx', attributes: '<TCHJsonAttributes: 0x600003bcbe50>'>) Optional(2) Optional(2)

用户详细信息及其同步状态和连接状态均有效。

但我仍然没有得到频道。不知道我错过了什么。

4

1 回答 1

0

在调用客户端之前,您应该等待同步事件。

.completed从 – conversationsClient:synchronizationStatusUpdated收到同步状态后,客户端将完全正常工作:

于 2021-05-04T14:36:58.643 回答