Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kinesis Video WebRTC Streams in SDK v3 #6534

Closed
4 of 5 tasks
ScottDellinger opened this issue Sep 30, 2024 · 1 comment
Closed
4 of 5 tasks

Kinesis Video WebRTC Streams in SDK v3 #6534

ScottDellinger opened this issue Sep 30, 2024 · 1 comment
Labels
needs-triage This issue or PR still needs to be triaged. v2-v3-inconsistency Behavior has changed from v2 to v3, or feature is missing altogether

Comments

@ScottDellinger
Copy link

Pre-Migration Checklist

Which JavaScript Runtime is this issue in?

Browser

AWS Lambda Usage

  • Yes, my application is running on AWS Lambda.
  • No, my application is not running on AWS Lambda.

Describe the Migration Issue

The documentation on the Kinesis Web Video (especially the WebRTC storage, but also the signaling client changes from v2 to v3) is very difficult to understand and seems incomplete.

The first sentence of the JoinStorageSessionCommand says this:

"Before using this API, you must call the GetSignalingChannelEndpoint API to request the WEBRTC endpoint. You then specify the endpoint and region in your JoinStorageSession API request."

No problem. I've obtained the WEBRTC endpoint easily from the GetSignalingChannelEndpoint. No where in the documentation does it show how to include the endpoint with the request. The JoinStorageSessionCommand only takes "channelArn" as input. I see "endpoint" in the KinesisVideoWebRTCStorageClient, but have been unsuccessful on figuring out how to provide it to the client.

This sample syntax does not give any indication on how to get this to work:

import { KinesisVideoWebRTCStorageClient, JoinStorageSessionCommand } from "@aws-sdk/client-kinesis-video-webrtc-storage"; // ES Modules import
// const { KinesisVideoWebRTCStorageClient, JoinStorageSessionCommand } = require("@aws-sdk/client-kinesis-video-webrtc-storage"); // CommonJS import
const client = new KinesisVideoWebRTCStorageClient(config);
const input = { // JoinStorageSessionInput
channelArn: "STRING_VALUE", // required
};
const command = new JoinStorageSessionCommand(input);
const response = await client.send(command);

I cannot figure out how to proceed. The v2 version would use callbacks on the signalingclient (for example: signalingClient.on('open',...), but that does not appear to work anymore.

Code Comparison

No response

Observed Differences/Errors

The lack of callbacks on the signaling channel in v3 and no mention I can find in the documentaton on how to handle the peerConnection to stream video into Kinesis Video where it is ingested and stored makes it nearly impossible to migrate from v2 to v3. What am I missing?

Additional Context

No response

@ScottDellinger ScottDellinger added needs-triage This issue or PR still needs to be triaged. v2-v3-inconsistency Behavior has changed from v2 to v3, or feature is missing altogether labels Sep 30, 2024
@ScottDellinger ScottDellinger changed the title MIGRATION ISSUE: [Your Title Here] Kinesis Video WebRTC Streams in SDK v3 Sep 30, 2024
Copy link

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs and link to relevant comments in this thread.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 16, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
needs-triage This issue or PR still needs to be triaged. v2-v3-inconsistency Behavior has changed from v2 to v3, or feature is missing altogether
Projects
None yet
Development

No branches or pull requests

1 participant