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(Call): Fix flash talk indicator #825

Merged
merged 18 commits into from
Nov 14, 2024
Merged

Conversation

lgmarchi
Copy link
Collaborator

@lgmarchi lgmarchi commented Nov 8, 2024

What this PR does 📖

This pull request introduces several enhancements and bug fixes to the src/lib/media/Voice.ts file, including the addition of voice activity detection, improvements to relay server testing, and updates to audio handling. Additionally, there are updates to the package.json and vite.config.js files to support these changes.

Voice Activity Detection:

  • Added the voice-activity-detection library to detect when a user is speaking and update the media state accordingly. [1] [2]

Relay Server Testing:

  • Introduced a method to test the connectivity of relay servers and update the list of available relays dynamically. [1] [2]

Audio Handling:

  • Simplified audio constraints by removing specific audio settings such as echo cancellation and noise suppression.
  • Added handling for receiving tracks from peers and logging the events.

Configuration Updates:

  • Updated package.json to include the voice-activity-detection library.
  • Modified vite.config.js to include voice-activity-detection in optimized dependencies.

Which issue(s) this PR fixes 🔨

Special notes for reviewers 🗒️

Additional comments 🎤

@lgmarchi lgmarchi added the 📄 Draft PR is not ready yet label Nov 8, 2024
@lgmarchi lgmarchi self-assigned this Nov 8, 2024
@github-actions github-actions bot added the Missing dev review Two dev reviews are required on PR label Nov 8, 2024
Copy link

github-actions bot commented Nov 8, 2024

Download the app installers for this pull request:

Copy link

github-actions bot commented Nov 8, 2024

Automated tests execution is complete! You can find the Playwright test report here and the Allure Test Report here

@github-actions github-actions bot added the Failed Automated Test Failed Automated Tests CI label Nov 8, 2024
@lgmarchi lgmarchi marked this pull request as ready for review November 8, 2024 21:08
@lgmarchi lgmarchi removed the 📄 Draft PR is not ready yet label Nov 8, 2024
@phillsatellite
Copy link
Contributor

phillsatellite commented Nov 8, 2024

Hey Lucas! So during testing Sara, Luis and I have found that friending is not working on this pr. Due to this its not possible to test the talking indicator

We tried old accounts and new accounts, and made sure to do npm i

User A sends UserB a friend request
User B accepts request
User A appears on User B side but User B does not appear on User A side

We tried moving to different page, refreshing browser and nothing gets User B to appear on User A side

I also tried 2 new accounts before testing this and 2 new accounts before verifying on dev that friending still worked so clean builds before attempting both

Your branch:

Screen_Recording_2024-11-08_at_5.50.39_PM.mov

image

Dev branch:
image

@phillsatellite phillsatellite added the QA Requested Changes Changes need to be addressed, something is not working as expected. label Nov 8, 2024
Copy link
Member

@stavares843 stavares843 left a comment

Choose a reason for hiding this comment

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

phil added a comment above

@luisecm
Copy link
Contributor

luisecm commented Nov 9, 2024

Hey Lucas! So during testing Sara, Luis and I have found that friending is not working on this pr. Due to this its not possible to test the talking indicator

We tried old accounts and new accounts, and made sure to do npm i

User A sends UserB a friend request User B accepts request User A appears on User B side but User B does not appear on User A side

We tried moving to different page, refreshing browser and nothing gets User B to appear on User A side

I also tried 2 new accounts before testing this and 2 new accounts before verifying on dev that friending still worked so clean builds before attempting both

Your branch:

Screen_Recording_2024-11-08_at_5.50.39_PM.mov

image

Dev branch: image

Hello @lgmarchi just wanted to add that the automated tests are failing against this branch for the same reason mentioned above by Phil. I have not seen this error presented in the latest runs of automation tests against dev or any other prs

@lgmarchi
Copy link
Collaborator Author

Hey Lucas! So during testing Sara, Luis and I have found that friending is not working on this pr. Due to this its not possible to test the talking indicator

We tried old accounts and new accounts, and made sure to do npm i

User A sends UserB a friend request User B accepts request User A appears on User B side but User B does not appear on User A side

We tried moving to different page, refreshing browser and nothing gets User B to appear on User A side

I also tried 2 new accounts before testing this and 2 new accounts before verifying on dev that friending still worked so clean builds before attempting both

Your branch:

Screen_Recording_2024-11-08_at_5.50.39_PM.mov
image

Dev branch: image

I pushed a commit to solve it.

@github-actions github-actions bot removed the Failed Automated Test Failed Automated Tests CI label Nov 11, 2024
exclude: ["warp-wasm"],
},

Copy link
Member

Choose a reason for hiding this comment

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

do we need the empty line here?

@@ -604,15 +637,64 @@ export class VoiceRTC {
return accepted
}

/**
Copy link
Member

Choose a reason for hiding this comment

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

the code comments seems a bit extensive

@phillsatellite
Copy link
Contributor

phillsatellite commented Nov 12, 2024

So the talking indicator is working a lot better but we ran into some other issues when testing (Attempted with new accounts before testing pr, then verified on dev with the same accounts + new ones)

Issue:
It seems like after the first call is made and connected, any call after that don't seem to go through. I tried replicating this issue on dev but the dev branch works fine

Steps to reproduce:

  • UserA calls User B - then after call is connected either person hangs up
  • UserB calls back UserA - call does not go through
  • UserA now tries to call UserB again and call does not go through

Logs:
UserA
UserA

UserB
UserB

Screen recordings:
This branch

Branch.mov

Dev branch

DevBranch.mov

@luisecm luisecm added QA Requested Changes Changes need to be addressed, something is not working as expected. and removed QA Requested Changes Changes need to be addressed, something is not working as expected. 🛑 do not merge labels Nov 12, 2024
@luisecm
Copy link
Contributor

luisecm commented Nov 12, 2024

I see that friend requests are working again within latest commit

@luisecm luisecm added the QA Requested Changes Changes need to be addressed, something is not working as expected. label Nov 12, 2024
@lgmarchi
Copy link
Collaborator Author

So the talking indicator is working a lot better but we ran into some other issues when testing (Attempted with new accounts before testing pr, then verified on dev with the same accounts + new ones)

Issue: It seems like after the first call is made and connected, any call after that don't seem to go through. I tried replicating this issue on dev but the dev branch works fine

Steps to reproduce:

  • UserA calls User B - then after call is connected either person hangs up
  • UserB calls back UserA - call does not go through
  • UserA now tries to call UserB again and call does not go through

Logs: UserA UserA

UserB UserB

Screen recordings: This branch

Branch.mov
Dev branch

DevBranch.mov

I pushed a commit that should solve that.

@lgmarchi lgmarchi added ⌨️ Ready for Test PR is ready for test and removed QA Requested Changes Changes need to be addressed, something is not working as expected. labels Nov 13, 2024
@stavares843 stavares843 added being tested and removed ⌨️ Ready for Test PR is ready for test labels Nov 13, 2024
Copy link
Member

@stavares843 stavares843 left a comment

Choose a reason for hiding this comment

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

so like @phillsatellite and i tested and i was talking to phil audio was pretty high but on my user there was zero indicator on my user

image

there was on phil side though and on phil side when he spoke he mentioned he had a talking indicator on his user

@lgmarchi
Copy link
Collaborator Author

so like @phillsatellite and i tested and i was talking to phil audio was pretty high but on my user there was zero indicator on my user

image

there was on phil side though and on phil side when he spoke he mentioned he had a talking indicator on his user

So the problem is, when you are talking, no indicator appears to you for your user?

@stavares843
Copy link
Member

that is correct

@lgmarchi
Copy link
Collaborator Author

that is correct

Which browser? And is it private?

@stavares843
Copy link
Member

chrome, macOS

private browser yes

@lgmarchi
Copy link
Collaborator Author

lgmarchi commented Nov 13, 2024

chrome, macOS

private browser yes

Try on normal browser, I am not sure on private it should works nice.

I did 3 tests now with @tooshel , worked all of them, including private browser too.

More thoughts about it? Want to test with other users?

@phillsatellite phillsatellite added the QA Approved PR has been tested by QA Team label Nov 14, 2024
@stavares843
Copy link
Member

we approved for now, maybe we can improve in the future

@stavares843 stavares843 merged commit d3ffd3d into dev Nov 14, 2024
23 checks passed
@stavares843 stavares843 deleted the fix-flash-talk-indicator branch November 14, 2024 12:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Missing dev review Two dev reviews are required on PR QA Approved PR has been tested by QA Team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

bug(calling): Voice indicator just blinks
5 participants