Top

iOS | Conference Call

Comentários

9 comentários

  • Vladimir VYSKOCIL

    Hello,

    There is a sample app demonstrating conference calls here https://github.com/Rainbow-CPaaS/Rainbow-iOS-SDK-Samples/tree/master/Rainbow-iOS-SDK-Sample-SFU

    Don't hesitate to ask if you have more questions not covered in the sample.

     

     

    0
    Ações de comentário Permalink
  • Patrik Spisak

    That was I looking for before I asked on this forum.

    There is only one notification and also there is no example how to initiate conference call while you have active RTCCall.

    I would like to know how to initiate conference call when have active RTCCall with some user. 

     

    Here is my attempt but this is not correct way obviously, because user which is currently in call just get notification to join conference, but when I tried on your app, user in call is automatically joining conference call .

    if let conference = conference {

                // Conference In Progress

                callParticipants(to: conference, contacts: contacts)

            } else {

                // Create new room and start conference with given contacts

                

                if let myContact = servicesManager.myUser.contact, let rtcCall = rtcCall, let contact = rtcCall.peer as? Contact {

                                    

                    // Name for room which will be created for purpose of conference call

                    let roomName = "Call from \(myContact.firstName.prefix(1)). \(myContact.lastName ?? "") / \(contact.firstName.prefix(1)). \(contact.lastName ?? "")"

                    

                    do {

                        // Create room for conference

                        let room = try servicesManager.roomsService.createAutoAcceptedRoom(roomName, withTopic: "")

                                            

                        var contactsToInvite = contacts

                        contactsToInvite.append(contact)




                        // Create conference and join

                        servicesManager.conferencesManagerService.startAndJoinConference(with: room, role: .moderator)

                                            

                        // Invite contacts to the room

                        for contact in contactsToInvite {

                            servicesManager.roomsService.invite(contact, in: room)

                        }

                        

                        DispatchQueue.main.async {

                            self.invitedContacts = contactsToInvite

                            self.conferenceRoom = room

                        }                    

                    } catch let error {

                        // Error to create a room for conference call

                        DispatchQueue.main.async {

                            self.errorTitle     = "Error"

                            self.errorMessage   = error.localizedDescription

                            self.isErrorVisible = true

                        }

                    }

                    

                } else {

                    // Should not fall to this part of the code

                    DispatchQueue.main.async {

                        self.errorTitle     = "Error"

                        self.errorMessage   = "Unable to start conference call."

                        self.isErrorVisible = true

                    }

                }

            }
    0
    Ações de comentário Permalink
  • Vladimir VYSKOCIL

    So you want to migrate a P2P WebRTC call to a conference by adding a third participant ?

    0
    Ações de comentário Permalink
  • Patrik Spisak

    Yes that is what Im trying to achieve.

    0
    Ações de comentário Permalink
  • Vladimir VYSKOCIL

    You should look at the method startAdhocConferenceFromCalls in ConferencesManagerService : https://sdk.openrainbow.io/ios/docs/lts/jazzy/Classes/ConferencesManagerService.html#/c:objc(cs)ConferencesManagerService(im)startAdhocConferenceFromCalls:block:

    But this API is not open yet for CPaaS development, it should be in a next SDK release and will also work for hybrid telephony not only on Rainbow Hub.

    0
    Ações de comentário Permalink
  • Patrik Spisak

    Thanks I will take a look. BTW your WebRTC  throw this error when you are trying to submit to AppStore. 

    0
    Ações de comentário Permalink
  • Vladimir VYSKOCIL

    Could you tell me what release of the SDK do you use ?
    We are also submitting the Rainbow app to the store including the WebRTC framework without issue, I'll ask if the version are the same.

    0
    Ações de comentário Permalink
  • Patrik Spisak

    I took latest one from https://github.com/Rainbow-CPaaS/Rainbow-iOS-WebRTC

    Probably this github repo is not up to date anymore? I manualy embed SDK from https://sdk.openrainbow.io/ios/sdk/SDK_2_7_1.zip and that version have no problem at all with AppStore. 

    0
    Ações de comentário Permalink
  • Vladimir VYSKOCIL

    Yes you should use the WebRTC framework provided by the Rainbow SDK distribution

    0
    Ações de comentário Permalink

Por favor, entrar para comentar.

Ainda não consegue encontrar o que você precisa?

  • Contate-nos

    Você tem alguma pergunta sobre o Rainbow? Deixe-nos uma mensagem para obter mais informações.

    Contato
  • Pergunte à Comunidade

    Você precisa de ajuda? Faça suas perguntas na Comunidade para obter respostas de outros usuários do Rainbow.

    Enviar mensagem