question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Call with WebRTC support

See original GitHub issue

THE CURRENT DESCRIPTION IS WIP

Introduction

WebRTC implementation supports voice and video calls in direct rooms which have only 2 joined members.

Requirements

  • 1. Show voice and video call icons as menu actions in RoomDetailFragment only if the room is direct and has 2 joined members.

  • 2. Start a foreground service for both incoming and outgoing calls.

  • 3. Show heads-up notification for incoming calls with userId of the caller as title, call type as description, “Answer” and “Reject” buttons as actions.

  • 4. Show heads-up notification for outgoing calls with userId of the callee as title and “Calling…” as description.

  • 5. Change the title of the notifications as “Ongoing Call” as soon as the connection established.

  • 6. Notification (or CallActivity) should be visible even on the lock screen.

  • 7. Show CallActivity when the outgoing call started and incoming call answered.

  • 8. Ongoing call has to continue even if CallActivity is destroyed by the user.

  • 9. Show CallActivity with the representation of the current call state when the user clicks the notification.

  • 10. Voice Call: Show hangup, mute, speaker buttons and the avatar of the participant on CallActivity.

  • 11. Video Call: Show hangup, mute, switch camera, turn off camera buttons and camera streams of both other participant and the current user on CallActivity.

  • 12. Automatically send hangup (busy) to the second incoming call if there is an ongoing call.

  • 13. Play sounds for ringing, ring back and hangup events.

  • 14. Send local ice candidate events to the room.

  • 15. Refresh turn server periodically.

  • 16. RiotX should not ring when performing an initial sync. It should handle still valid incoming call (regarding age and lifetime) properly though

  • 17. RiotX should behaves correctly if the incoming call is answered on another device.

  • 18. RiotX should ask for permission BEFORE starting on outgoing call (it’s a bug currently). For incoming call, if the user denies the permission request, it should reject the call.

  • 19. m.call.candidates events should be hidden by default in the timeline

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:100
  • Comments:30 (15 by maintainers)

github_iconTop GitHub Comments

42reactions
RuralYakcommented, Jan 17, 2020

This is a showstopper for switching from Riot-android

12reactions
sruggiercommented, May 23, 2020

I don’t speak for this project, but as a general point of etiquette, I’d suggest you use the thumbs up reaction to vote for the issue instead of leaving comments, which spam every other person who is interested in following an issue. Developers can sort issues based on which ones had the most reactions, so it’s a much more useful and friendly way to show your support.

If you’re demanding specific features that aren’t already implemented in Riot, it would be better to file those as separate issues. I think having feature parity sooner is more important than implementing new stuff on top while we all wait. Also, remember that if you haven’t paid anyone to hack on this project, all you can do is politely make suggestions, you’re not entitled to outright demand anything except a full refund of your payment, or lack thereof. 😉

Read more comments on GitHub >

github_iconTop Results From Across the Web

Signaling and video calling - WebRTC API - MDN Web Docs
WebRTC allows real-time, peer-to-peer, media exchange between two devices. ... Let's update the chat client to support video calling.
Read more >
WebRTC
The WebRTC project is open-source and supported by Apple, Google, Microsoft and Mozilla, ... to more advanced video-calling applications and screen sharing.
Read more >
Making a Call Using WebRTC - RingCentral Developers
WebRTC is an acronym which stands for web real time communications. WebRTC is a free, open project supported by Google, Apple, Mozilla, Opera, ......
Read more >
Embed voice and video calls in your application - Twilio
Support phone calls between users on browsers, mobile client endpoints, SIP endpoints, or any PSTN telephone number. With simple API calls, Twilio WebRTC...
Read more >
WebRTC to SIP Calling - OnSIP
Learn how to make a WebRTC to SIP call from a webphone app, or try it out for yourself in the OnSIP app....
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found