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

feat(SIP Dial-out): frontend support #10733

Merged
merged 17 commits into from Oct 30, 2023

Conversation

Antreesy
Copy link
Contributor

@Antreesy Antreesy commented Oct 19, 2023

☑️ Resolves

🖌️ UI Checklist

🖼️ Screenshots / Screencasts

🏚️ Before 🏡 After
Admin settings --
Details tab --
image image
image image
New and edited components
DialPanel type 'dialing'
image image
SelectPhoneNumber error handling
image image
CallPhoneDialog created room
image image
NewGroupConversation phone bubble
image image
Participant in call
image image

🚧 Tasks

  • TODO:
    • check dial (connect user)
    • Get statuses from SIP Bridge (Calling, Connected)
    • Send messages to SIP Bridge
  • Follow-ups:
    • get default region code / dial code from SIP Bridge and use it in dialpanel
    • fix arrow navigation in NewConversation (for phones)
    • fix bubble scrolling in NewConversation (issue raised)
    • moderators can change names of participants with type "phones" and "guests"
    • DB can keep record of dialed phones and show them in search results
    • participants response includes numbers from user's profile, showing them in search results

🏁 Checklist

@Antreesy Antreesy force-pushed the feat/10410/sip-dial-out-frontend branch 2 times, most recently from c6f138b to 3a39e4e Compare October 21, 2023 20:26
@Antreesy Antreesy force-pushed the feat/10410/sip-dial-out-frontend branch from 3a39e4e to 7d08d80 Compare October 22, 2023 22:41
@Antreesy
Copy link
Contributor Author

Antreesy commented Oct 23, 2023

TODOs from the design review call:

  • shorten caption in CallPhoneDialog
  • remove flags, check region names to be correct
  • change input labels/placeholders for text fields
  • add system message for adding participant cc @nickvergessen
  • add call / hang up buttton (use "phone-hangup" icon)
  • make a shortcut for call to phones
  • copy phone number, dial something - restrict for moderators
  • change conversation icon in 1-1, change participant icon in AvatarWrapper
  • replace (*, 0, #) with (+, 0, backspace) icon "backspace-outline", tertiary no bg
  • sorting phone numbers before offline users
  • add number - horizontal alignment with participant component

@Antreesy Antreesy force-pushed the feat/10410/sip-dial-out-frontend branch from 7d08d80 to d68e2e4 Compare October 23, 2023 14:25
@Antreesy
Copy link
Contributor Author

@fancycode , can I coop with you regarding signaling messages, that SIP Bridge sending /expecting to receive?

  • in call, dialing numbers one by one
  • in call, hang up a selected phone / all phones
  • in call, receiving connection status (ringing, in call, e.t.c.)
  • anything else we can / need to use?

@fancycode
Copy link
Member

See #10410 (comment) for the status updates of calls (ringing, connected, etc.).

I'll ping you when I have defined the other messages.

@fancycode
Copy link
Member

As DTMF and hangup also apply to incoming phone calls, I defined a generic way to send these:
strukturag/nextcloud-spreed-signaling@d4763f8

Basically you have to get the session id of phone calls from the joined event (you can match this through the call id) and then send a control message to these sessions to hangup or send DTMF (or to mute them).

@Antreesy Antreesy force-pushed the feat/10410/sip-dial-out-frontend branch 3 times, most recently from 2de7bb8 to 23df8f1 Compare October 24, 2023 23:37
@nickvergessen
Copy link
Member

nickvergessen commented Oct 25, 2023

Quick test call worked:

  • Currently sip-dialin is required for the dialout to work
  • System messages for the phone participant say "Deleted user joined the call" (backend issue)

@Antreesy Antreesy force-pushed the feat/10410/sip-dial-out-frontend branch 2 times, most recently from f04d262 to 6a891c2 Compare October 26, 2023 00:29
@Antreesy Antreesy marked this pull request as ready for review October 26, 2023 00:30
@nickvergessen nickvergessen force-pushed the feat/10410/sip-dial-out-frontend branch from 5144cff to d67a555 Compare October 26, 2023 09:08
@DorraJaouad DorraJaouad force-pushed the feat/10410/sip-dial-out-frontend branch from 5f8db12 to f60ea7c Compare October 27, 2023 10:49
@DorraJaouad DorraJaouad force-pushed the feat/10410/sip-dial-out-frontend branch from f60ea7c to 211596e Compare October 27, 2023 12:48
@@ -107,14 +107,26 @@
</template>
{{ t('spreed', 'Join open conversations') }}
</NcActionButton>

<NcActionButton v-if="canModerateSipDialOut"
Copy link
Member

Choose a reason for hiding this comment

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

btw this is enough for Desktop client 18 talking to Talk 17 ? Or do we need more capability checking?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

getCapabilities()?.spreed?.config.call['sip-dialout-enabled'] should be enough?

Copy link
Member

Choose a reason for hiding this comment

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

if enough question marks are used, I guess yes

@DorraJaouad DorraJaouad force-pushed the feat/10410/sip-dial-out-frontend branch from b112919 to 2072401 Compare October 27, 2023 14:57
Antreesy and others added 14 commits October 30, 2023 14:22
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
…rsations

Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Joas Schilling <coding@schilljs.com>
Like when joining/leaving a call

Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
@nickvergessen nickvergessen force-pushed the feat/10410/sip-dial-out-frontend branch from 477980f to 9000d59 Compare October 30, 2023 13:23
@nickvergessen
Copy link
Member

did the fixups, ready to merge?

Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Joas Schilling <coding@schilljs.com>
@nickvergessen nickvergessen force-pushed the feat/10410/sip-dial-out-frontend branch from 9000d59 to 03f90a5 Compare October 30, 2023 14:41
Copy link
Member

@nickvergessen nickvergessen left a comment

Choose a reason for hiding this comment

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

Works mostly

Signed-off-by: DorraJaouad <dorra.jaoued7@gmail.com>
@DorraJaouad DorraJaouad force-pushed the feat/10410/sip-dial-out-frontend branch from 03f90a5 to da70642 Compare October 30, 2023 15:00
@nickvergessen nickvergessen merged commit ec8eb42 into master Oct 30, 2023
48 checks passed
@nickvergessen nickvergessen deleted the feat/10410/sip-dial-out-frontend branch October 30, 2023 15:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Frontend "SIP dial-out"
4 participants