Skip to content

Add support for streaming through entities #5517

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

Open
wants to merge 35 commits into
base: main
Choose a base branch
from

Conversation

kylerohnmsft
Copy link

@kylerohnmsft kylerohnmsft commented Jul 21, 2025

Fixes #5514

Changelog Entry

  • Added livestreaming support for livestreaming data in entities in PR #5517 by @kylerohn

note: actual changes made by kylerohnmsft, but linking personal account to show contribution after internship ends

Description

Microsoft platforms such as the Agents SDKs are now putting streaming information in the entities field rather than the channelData field. This means that BotFramework-WebChat must be able to handle reading streaming data from either location, prioritizing reading from entities.

Design

Nothing fundamental about the code flow was changed. getActivityLivestreamingMetadata() was edited such that entities is checked for streaming data before channelData. If the streaming data is found in entities, it uses that data to encode the livestreaming metadata. Otherwise, it moves on to channelData and the code executes as it did before. Changes were made to abstract some of the Schema structure such that overall code maintenance should be easier moving forward.

Specific Changes

  • Check entities field of activity for streaming data
  • Abstraction of schemas used to validate streaming data schemas
  • Added unit tests to validate functionality of metadata collection from entities

-

  • I have added tests and executed them locally
  • I have updated CHANGELOG.md
  • I have updated documentation

Review Checklist

This section is for contributors to review your work.

  • Accessibility reviewed (tab order, content readability, alt text, color contrast)
  • Browser and platform compatibilities reviewed
  • CSS styles reviewed (minimal rules, no z-index)
  • Documents reviewed (docs, samples, live demo)
  • Internationalization reviewed (strings, unit formatting)
  • package.json and package-lock.json reviewed
  • Security reviewed (no data URIs, check for nonce leak)
  • Tests reviewed (coverage, legitimacy)

@kylerohnmsft kylerohnmsft marked this pull request as ready for review July 21, 2025 20:00
@OEvgeny
Copy link
Collaborator

OEvgeny commented Aug 4, 2025

This needs design feedback from @compulim before it goes further.

@kylerohnmsft kylerohnmsft reopened this Aug 4, 2025
@kylerohnmsft kylerohnmsft requested a review from compulim August 4, 2025 21:06
@kylerohnmsft
Copy link
Author

@compulim PR validation checks are failing intermittently, can you rerun?

@compulim
Copy link
Contributor

compulim commented Aug 5, 2025

@compulim PR validation checks are failing intermittently, can you rerun?

image

I think it legitimately fail. Unit tests rarely flaky.

@kylerohnmsft
Copy link
Author

kylerohnmsft commented Aug 5, 2025

@compulim PR validation checks are failing intermittently, can you rerun?

image I think it legitimately fail. Unit tests rarely flaky.

I was talking about a previous one. This was me, I forgot to update unit tests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Livestreaming support through 'entities' activity
4 participants