Chiamate in Swarm
Obiettivi
Questo sito ha lo scopo di descrivere come la chiamata funziona con i gruppi. Questo metodo consentirà ai clienti di fornire una chiamata per più partecipanti con una storia di testo condiviso. Il protocollo deve essere flessibile, mantenere la compatibilità con lo stack SIP, adn deve lavorare in un ambiente distribuito. Questo ambiente distribuito porta anche alcune sfide, come le possibili condizioni di corsa (dove più parti possono iniziare una chiamata allo stesso tempo).
Definizioni
un Rendezvous mescolerà tutte le chiamate autorizzate in entrata in una conferenza.
Per questa funzione saranno utilizzati due nuovi URI:
`swarm:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
rdv:accountUri/dispositivoId/conversazioneId/confId
Swarm’s profile is the profile of the swarm stored in a vCard (
profile.vcf
, see Conversation’s profile synchronization and Sincronizzazione del profilo)rdvUri
è l’URI predefinito per un swarm, impostato nel profilo del swarm*
Nota: questi due URI consentono al cliente di effettuare una chiamata per aderire a un Rendezvous o di avviare una chiamata a uno sciame, con conseguente logica descritta nella sezione successiva.
Chiamare un gruppo
Flusso proposto:
a: Se è impostato
rdvUri
:Chiamalo così.
Se non riesce, va a b:
b: se esiste una chiamata attiva corrente:
Chiamalo così.
Se non riesce, vai a c:
Altrimenti, ospita un nuovo «Rendezvous» e unisciti a esso.
Chiedi anche agli utenti se vogliono essere l’host per le prossime chiamate.
! [Diagramma: inserire una chiamata in un swarm]
For each calls, two commits are added by the host of the call in the swarm. A first one to announce that a new call is starting and give information about who is hosting and the conference id. And a second to announce that the call is finished (so other peers can compute how many calls are currently active) and to get the duration of the call to show.
In arrivo richieste di sciame
Quando si riceve una nuova chiamata in entrata, l’URI DEVE essere analizzato. Se la chiamata in entrata è per un Rendezvous che è attualmente ospitato dal dispositivo e il chiamer è autorizzato a unirsi, la chiamata DEVE essere risolta e aggiunta al corrente Rendezvous
Definire un ospite per un colpo
Per definire un URI predefinito, il membro che vuole essere l’host dovrebbe aggiornare il profilo della conversazione, e questo sarà sincronizzato e convalidato da pari. Tuttavia, l’host DEVE essere in grado di accettare o non essere l’host e un membro con abbastanza autorizzazioni DEVE essere in grado di chiedere a un dispositivo di essere l’host. Questo processo non è deciso per ora.
For now, only the administrator can add one of its device as the default host.
Futuro
Join notifications?
I membri dello sciame che non sono in una chiamata DEVEREBBEREbbero sapere chi è nelle chiamate attive.
Il ponte SIP?
Poiché le conferenze sono ancora chiamate SIP miste, un ponte SIP è ancora possibile. Nel profilo di Swarm dovrebbe essere possibile aggiungere un’entrata SIP, come alcuni sistemi VoIP popolari)