Panggilan di Swarm

Tujuan

Halaman ini bertujuan untuk menggambarkan bagaimana panggilan akan bekerja dengan kelompok. Metode ini akan memungkinkan klien untuk menyediakan panggilan untuk beberapa peserta dengan riwayat teks yang dibagikan. Protokol harus fleksibel, menjaga kompatibilitas dengan tumpukan SIP, adn harus bekerja di lingkungan yang didistribusikan. Lingkungan yang didistribusikan ini juga membawa beberapa tantangan, seperti kondisi ras yang mungkin (di mana beberapa pihak dapat memulai panggilan pada saat yang sama). Akhirnya, karena Swarm dapat dengan anggota hanya menggunakan ponsel, atau oleh perusahaan dengan server khusus untuk mencampur video, itu juga harus dapat bekerja dengan pengalaman terbaik yang mungkin pada lingkungan heterogen.

Definisi

  • Sebuah Rendezvous akan mencampur semua panggilan masuk yang sah dalam sebuah konferensi.

  • Dua URI baru akan digunakan untuk fitur ini:

    • `swarm:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    • rdv:accountUri/deviceId/conversationId/confId

  • Swarm's profile is the profile of the swarm stored in a vCard (profile.vcf, see Conversation's profile synchronization and Sinkronisasi profil)

    • rdvUri adalah URI default untuk Swarm, ditetapkan di Swarm's profile

Catatan: dua URI ini memungkinkan klien untuk membuat panggilan untuk bergabung dengan Rendezvous atau untuk memulai panggilan ke swarm, menghasilkan logika yang dijelaskan dalam bagian berikutnya.

Tempatkan panggilan di Swarm

Aliran yang diusulkan:

  • a: Jika rdvUri ditetapkan:

    • Sebut saja.

      • Jika gagal, pergi ke b:

  • b: jika ada panggilan aktif saat ini:

    • Sebut saja.

      • Jika gagal, pergi ke c:

  • Jika tidak, tuan rumah Rendezvous baru dan bergabung dengannya.

    • Juga, tanyakan kepada pengguna apakah mereka ingin menjadi tuan rumah untuk panggilan berikutnya.

! [Diagram: Menempatkan panggilan di Swarm](gambar/menempatkan panggilan-di-swarm-diagram.png)

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.

Panggilan masuk untuk swarm

Ketika menerima panggilan masuk baru, URI MUST di parsing. Jika panggilan masuk adalah untuk Rendezvous yang saat ini dihoskan oleh perangkat dan penelpon diberi wewenang untuk bergabung, panggilan MUST dijawab dan ditambahkan ke Rendezvous saat ini

Menentukan tuan rumah untuk Swarm

Untuk mendefinisikan URI default, anggota yang ingin menjadi host harus memperbarui profil percakapan, dan ini akan disinkronkan dan divalidasi oleh rekan-rekan. Namun, host MUST dapat menerima atau tidak menjadi host dan anggota dengan izin yang cukup MUST dapat meminta perangkat untuk menjadi host. Proses ini belum ditentukan untuk saat ini.

For now, only the administrator can add one of its device as the default host.

Masa Depan

Bergabung dengan pemberitahuan?

Anggota gerombolan yang tidak dalam panggilan harus dapat tahu siapa yang dalam panggilan aktif.

Jembatan SIP?

Karena konferensi masih merupakan panggilan SIP campuran, jembatan SIP masih mungkin.

Set another member's device as a host