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

fix(meetings): ensure non-undefined value for peripheral information property #3281

Merged
merged 2 commits into from Jan 9, 2024

Conversation

mccarthytyler
Copy link
Contributor

This pull request addresses

The MQE peripherals values are sometimes missing the information property.

by making the following changes

ensuring that the information property is not undefined.

Change Type

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update
  • Tooling change
  • Internal code refactor

I certified that

  • I have read and followed contributing guidelines
  • I discussed changes with code owners prior to submitting this pull request
  • I have not skipped any automated checks
  • All existing and new tests passed
  • I have updated the documentation accordingly

Make sure to have followed the contributing guidelines before submitting.

@mccarthytyler mccarthytyler requested a review from a team as a code owner December 21, 2023 20:46
Copy link

This pull request is automatically being deployed by Amplify Hosting (learn more).

Access this pull request here: https://pr-3281.d3m3l2kee0btzx.amplifyapp.com

newMqa.intervalMetadata.peripherals.push({information: _UNKNOWN_, name: MEDIA_DEVICES.SPEAKER});
if (this.statsResults['audio-send']) {
newMqa.intervalMetadata.peripherals.push({
information: this.statsResults['audio-send']?.trackLabel,
information: this.statsResults['audio-send'].trackLabel || _UNKNOWN_,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will need a jira to figure out why the trackLabel does not exist as this shouldn't happen, right?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like this label comes from wcme and has a chance to be undefined if there is no published stream on a transceiver:
https://sqbu-github.cisco.com/CPaaS/web-client-media-engine/blob/main/web-client-media-engine/src/transceiver-stats.ts#L72

@@ -413,6 +416,15 @@ describe('plugin-meetings', () => {
assert.strictEqual(mqeData.audioTransmit[0].common.transportType, 'TLS');
assert.strictEqual(mqeData.videoReceive[0].common.transportType, 'TLS');
});

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will need a test to see what happens when the track label does not exist

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added.

@mccarthytyler mccarthytyler force-pushed the fix/mqe-peripherals branch 2 times, most recently from b826586 to 17f778a Compare January 8, 2024 21:01
@arun3528 arun3528 changed the title fix: ensure non-undefined value for peripheral information property fix(meetings): ensure non-undefined value for peripheral information property Jan 9, 2024
@mccarthytyler mccarthytyler merged commit 09ace65 into webex:beta Jan 9, 2024
2 checks passed
@mccarthytyler mccarthytyler deleted the fix/mqe-peripherals branch January 9, 2024 19:03
mkesavan13 added a commit to meta-dipanshu-sharma/webex-js-sdk that referenced this pull request Jan 11, 2024
* feat(meeting-info-fail): destroy meeting on meeting info fail if flag is true (webex#3200)

Co-authored-by: ndelmar <ndelmar@cisco.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.262 [skip ci]

* fix: added metrics to addMedia success/failure metrics (webex#3220)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.263 [skip ci]

* fix(plugin-meetings): screen share when shared by same user different client (webex#3177)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.264 [skip ci]

* fix(internal-plugin-metrics): bump event dictionary version (webex#3216)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.265 [skip ci]

* feat(plugin-metrics): classify network errors (webex#3224)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.266 [skip ci]

* feat(plugin-metrics): classify unauthorized errors (webex#3229)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.267 [skip ci]

* fix(public): setcorrelation id is made public to be used in cantina (webex#3230)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.268 [skip ci]

* feat(plugin-metrics): use network category for relevant errors (webex#3231)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.269 [skip ci]

* fix: added logging for getCurrentConnectionType() error cases (webex#3233)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.270 [skip ci]

* fix(plugin-meetings): add latency metrics for addMedia (webex#3234)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.271 [skip ci]

* feat(ca): add identifiers confId, mid (webex#3226)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.272 [skip ci]

* fix: log call parameters when mercury _emit fails (webex#3228)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.273 [skip ci]

* feat(ca): add fallback to preLoginId for userId (webex#3221)

Co-authored-by: Catalin <ctorge@cisco.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.274 [skip ci]

* chore(internal-media-core): version bump (webex#3237)

* docs(api): update docs [skip ci]

* fix(plugin-meetings): update internal media core to 2.0.6 (webex#3241)

Co-authored-by: Bryce Tham <btham@cisco.com>

* docs(api): update docs [skip ci]

* fix: downscopeing issues (webex#3211)

make sure SDK never request new user token from the server with invalid scope(s) and log every attempt correctly

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.275 [skip ci]

* fix(breakouts): user gets removed from meeting after end of session (webex#3239)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.276 [skip ci]

* fix(plugin-meetings): audio still working when addMedia called with audioEnabled: false (webex#3247)

Co-authored-by: ndelmar <ndelmar@cisco.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.277 [skip ci]

* fix(plugin-meetings): add tls transport type (webex#3243)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.278 [skip ci]

* feat(media): add ice failure groupings for CA (webex#3240)

Co-authored-by: Catalin <ctorge@cisco.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.279 [skip ci]

* fix(integration): fix waitForPublished() in SDK integration tests (webex#3242)

Co-authored-by: Priya Kesari <pkesari@cisco.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.280 [skip ci]

* feat(meeting): stats report on media failure (webex#3245)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.281 [skip ci]

* fix(plugin-meetings): refactor addMedia and add separate timeout for sdp exchange (webex#3244)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.282 [skip ci]

* fix(samples): avoid init failure for tokens without additional features (webex#3257)

* fix(metrics) :  Call diagnostics validator (webex#3259)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.283 [skip ci]

* fix(metrics): catalog-delay (webex#3235)

Co-authored-by: peter-robert-cole <peter7cole@gmail.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.284 [skip ci]

* feat(logs): add log metadata (webex#3260)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.285 [skip ci]

* fix: local linking with internal-media-core (webex#3265)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.286 [skip ci]

* feat(plugin-metrics): payload overrides (webex#3270)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.287 [skip ci]

* feat(webinar): add webinar related props (webex#3253)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.288 [skip ci]

* fix(calling): exporting interfaces, types from index.ts file (webex#3275)

Co-authored-by: Priya Kesari <pkesari@cisco.com>

* fix(call): error-handling-for-empty-track-while-answer-dial (webex#3277)

Co-authored-by: Shreyas Sharma <shreysh2@cisco.com>

* fix: use candidate pairs to identify correct local candidate (webex#3258)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.289 [skip ci]

* feat(members): add reclaimHostRole functionality (webex#3272)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.290 [skip ci]

* fix(calling): remove logging of personal info (webex#3279)

* fix(metrics): update to confIdStr (webex#3280)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.291 [skip ci]

* feat(calling): add updateMedia in call (webex#3284)

* feat(plugin-meetings): retry media connection on turn tls (webex#3261)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.292 [skip ci]

* fix(plugin-meetings): force turn discovery on reconnection (webex#3285)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.293 [skip ci]

* Fix mercury log (webex#3236)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.294 [skip ci]

* fix: added support for Roap optimized flow for offer/answer/ok (webex#3271)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.295 [skip ci]

* fix(calling): extend eventing class on ILine interface  (webex#3286)

Co-authored-by: Priya Kesari <pkesari@cisco.com>

* fix(calling): export LocalMicrophoneStream (webex#3290)

Co-authored-by: Priya Kesari <pkesari@cisco.com>

* fix(plugin-logger): redact mtid (webex#3287)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.296 [skip ci]

* feat(plugin-metrics): add error handling to assign role function (webex#3289)

Co-authored-by: ndelmar <ndelmar@cisco.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.297 [skip ci]

* feat(plugin-meetings): fix .only test (webex#3294)

Co-authored-by: ndelmar <ndelmar@cisco.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.298 [skip ci]

* fix(samples): reorder and group the ui with similar features (webex#3262)

Co-authored-by: Rajesh Kumar <rajeshtezu90@gmail.com>

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.299 [skip ci]

* fix(plugin-meetings): don't send turn latency if it fails (webex#3296)

* fix(plugin-meetings): add retriedWithTurnServer to add media success metric (webex#3295)

* fix(plugin-meetings): don't wait for timeout when sending roap offer fails (webex#3293)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.300 [skip ci]

* fix: update internal-media-core to 2.2.1 (webex#3298)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.301 [skip ci]

* feat(http-core): capitalize Authorization header (webex#3300)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.302 [skip ci]

* feat(fraud): add localIP to join request (webex#3282)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.303 [skip ci]

* fix(meetings): ensure non-undefined value for peripheral information property (webex#3281)

* docs(api): update docs [skip ci]

* chore(release): v3.0.0-beta.304 [skip ci]

* test(metrics): skipped failing tests with todo

* fix(samples): merge commit resolution

---------

Co-authored-by: Natalia del Mar <56999622+nataliadelmar@users.noreply.github.com>
Co-authored-by: ndelmar <ndelmar@cisco.com>
Co-authored-by: Webex Publisher <webex-jenkins.gen@cisco.com>
Co-authored-by: Marcin <marcin.bazyl@gmail.com>
Co-authored-by: shivani1211 <shivaniyadav1211@gmail.com>
Co-authored-by: Lisa Smith <82507773+lismith2-cisco@users.noreply.github.com>
Co-authored-by: Coread <coread@cisco.com>
Co-authored-by: Martin Roos <82158095+martroos@users.noreply.github.com>
Co-authored-by: shnaaz <82164376+shnaaz@users.noreply.github.com>
Co-authored-by: Jordan Rowan <86778628+jor-row@users.noreply.github.com>
Co-authored-by: chrisadubois <chdubois@cisco.com>
Co-authored-by: László Vadász <maxinteger@gmail.com>
Co-authored-by: Catalin Torge <torgeadelin@gmail.com>
Co-authored-by: Catalin <ctorge@cisco.com>
Co-authored-by: Bryce Tham <brycetham@users.noreply.github.com>
Co-authored-by: Bryce Tham <btham@cisco.com>
Co-authored-by: Charles Burkett <chburket@cisco.com>
Co-authored-by: Tyler McCarthy <74213828+mccarthytyler@users.noreply.github.com>
Co-authored-by: Kesari3008 <65543166+Kesari3008@users.noreply.github.com>
Co-authored-by: Priya Kesari <pkesari@cisco.com>
Co-authored-by: Sreekanth Narayanan <131740035+sreenara@users.noreply.github.com>
Co-authored-by: Timothy Scheuering <InteractiveTimmy@users.noreply.github.com>
Co-authored-by: peter-robert-cole <peter7cole@gmail.com>
Co-authored-by: JudyZhu <120536178+JudyZhuHz@users.noreply.github.com>
Co-authored-by: Shreyas Sharma <72344404+Shreyas281299@users.noreply.github.com>
Co-authored-by: Shreyas Sharma <shreysh2@cisco.com>
Co-authored-by: Rajesh Kumar <131742425+rarajes2@users.noreply.github.com>
Co-authored-by: Rajesh Kumar <rajeshtezu90@gmail.com>
Co-authored-by: Bin Xu <71026292+bxu2@users.noreply.github.com>
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.

None yet

3 participants