我正在玩 Smooch SDK。我的问题是关于 JWT 如何在 Smooch iOS 中工作?
目前我有 1 个应用程序,如果我想根据用户 id 使用 Smooch,(例如,1 个应用程序有 50 个用户与之聊天),我们需要生成 50 个 JWT 还是只生成 1 个 JWT?
[Smooch login:self.smoochUserId jwt:@"WHAT IS THIS"];
谢谢
我正在玩 Smooch SDK。我的问题是关于 JWT 如何在 Smooch iOS 中工作?
目前我有 1 个应用程序,如果我想根据用户 id 使用 Smooch,(例如,1 个应用程序有 50 个用户与之聊天),我们需要生成 50 个 JWT 还是只生成 1 个 JWT?
[Smooch login:self.smoochUserId jwt:@"WHAT IS THIS"];
谢谢
基本上在旧版本中Smooch
没有像用户不能从多个设备访问相同对话的功能。
即,如果一个用户登录一个设备,而当第二个用户登录同一设备时,则
为了克服这个问题Smooch
,引入了您上面提到的 JWT(JSON Web 令牌)的新方法。您可以在此处阅读更多相关信息。
do we need to generate 50 JWT or 1 JWT only?
您需要根据每个用户的 userId(来自您的数据库)为每个用户生成 JWT服务器端。
如果您决定这样做,则需要使用登录的用户 ID 创建该 JWT 令牌并将该令牌分配给Smooch
via
[Smooch login:@"user-id" jwt:@"jwt" completionHandler:^(NSError * _Nullable error, NSDictionary * _Nullable userInfo) {
// Your code after login is complete
}];
这有点难做到。还有另一种方法可以做到这一点。
从我提交的链接 1 中找到示例 node.js 代码并将其提供给您的后端服务器。并要求他们为每个用户创建,以便您可以使用用户模型获取该 JWT 令牌(您将在成功登录后获得)。直接添加到Smooch
.
注意:如果您不关心用户现有的聊天详细信息,您可以使用Smooch
而无需像这样添加 jwt 令牌
[Smooch initWithSettings:[SKTSettings settingsWithAppId:@"Your App token(Get it from Smooch dashboard)"] completionHandler:^(NSError * _Nullable error, NSDictionary * _Nullable userInfo) {}
[[SKTUser currentUser] addProperties:@{@"Company":[[NSUserDefaults standardUserDefaults] valueForKey:@"company"],@"UserId":[[NSUserDefaults standardUserDefaults] valueForKey:@"empid"]}];
[Smooch show];