![](/img/trans.png)
[英]What is the difference between @aws-sdk/client-ses and @aws-sdk/client-sesv2?
[英]Receive massages with @aws-sdk/client-chime-sdk-messaging
我正在使用@aws-sdk/client-chime-sdk-messaging
來請求獲取/發送/刪除頻道消息
import { ChimeSDKMessagingClient, ListChannelMessagesCommand } from "@aws-sdk/client-chime-sdk-messaging";
const credentials = {
accessKeyId: "accessKeyId",
secretAccessKey: "secretAccessKey",
sessionToken: "sessionToken"
};
const ChannelArn = "arn:aws:chime:us-east-1:ChannelArn";
const userArn = "arn:aws:chime:us-east-1:userArn";
const chimeClient = new ChimeSDKMessagingClient({
region: "us-east-1",
credentials
});
const params = {
ChannelArn,
MaxResults: 50,
NextToken: null,
ChimeBearer: userArn
};
const command = new ListChannelMessagesCommand(params);
try {
const data = await chimeClient.send(command);
console.log("listChannelMessages DATA ->", data);
} catch (error) {
console.error("listChannelMessages ERROR ->", error);
}
問題:如何接收消息,或者訂閱事件監聽器來處理收到的消息。
我使用amazon-chime-sdk-js
通過aws-sdk/clients/chime
和aws-sdk
而不是@aws-sdk/client-chime-sdk-messaging
來完成這部分工作,它是這樣工作的:
const sessionConfig = new MessagingSessionConfiguration(
memberArm,
null,
endpoint,
chime,
AWS
);
this._session = new DefaultMessagingSession(sessionConfig, this._logger);
this._session.addObserver(this.messageObserver);
this._session.start();
我正在嘗試減少 aws-sdk 庫的大小,我認為對於新的 was-sdk-js-v3 客戶端,它的工作方式應該與以前的版本不同。
我用於聊天連接的連接示例來自amazon-chime-sdk-js
同時,github 上提供的示例包含 V3 的更新庫。
因此,您可以更新您的代碼,您必須使用它,如此處所示 ( https://github.com/aws/amazon-chime-sdk-js#messaging-session ):
import { ChimeSDKMessagingClient, GetMessagingSessionEndpointCommand } from '@aws-sdk/client-chime-sdk-messaging';
import {
ConsoleLogger,
DefaultMessagingSession,
LogLevel,
MessagingSessionConfiguration,
} from 'amazon-chime-sdk-js';
const logger = new ConsoleLogger('SDK', LogLevel.INFO);
// You will need AWS credentials configured before calling AWS or Amazon Chime APIs.
const chime = new ChimeSDKMessagingClient({ region: 'us-east-1'});
const endpoint = await chime.send(new GetMessagingSessionEndpointCommand());
const userArn = /* The userArn */;
const sessionId = /* The sessionId */;
const configuration = new MessagingSessionConfiguration(userArn, sessionId, endpoint.Endpoint.Url, chime);
const messagingSession = new DefaultMessagingSession(configuration, logger);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.