Toplantı katılımcıları, Google Meet eklenti etkinliğinde ortak çalışabilir. Ortak etkinlik başladığında toplantıdaki tüm katılımcılar etkinliğin devam ettiğine dair bildirim alır.
Bu bildirim, eklentinin kullanılabilirliğine ve yükleme durumuna göre uyarlanır:
Katılımcının eklenti yüklüyse: Etkinliğe katılabilir.
Katılımcı eklentiyi yüklememişse: Eklentiyi yüklemeye yönlendirilir.
Eklenti, katılımcının platformunda kullanılamıyorsa: Katılımcıya, etkinliğe mevcut cihazıyla katılamayacağı bildirilir.
Etkinliğe katılan kullanıcılar, eklenti içeriğinizle kendi iFrame'lerini yükler. Yeni katılımcıların ortak çalışma etkinliğini ana aşamada mı yoksa yan panelde mi açacağını özelleştirebilirsiniz.
Etkinliği başlatma
Etkinlik, startActivity()
yönteminin çağrılmasıyla başlatılır. Bu yöntem, ActivityStartingState
arayüzünü kullanır.
1. adım (isteğe bağlı): Eklenti, etkinliğin başlangıç durumunu ayarlar
ActivityStartingState
Katılımcı etkinliğe katılma davetini kabul ettiğinde kullanılan
eklentinin başlangıç durumuyla ilgili bilgileri içerir.
Eklenti, etkinlikten önce veya etkinlik sırasında setActivityStartingState()
yöntemini çağırarak ActivityStartingState
değerini ayarlayabilir veya güncelleyebilir. setActivityStartingState()
aramaları, ActivityStartingState
yalnızca startActivity()
aramasına ayarlanmışsa atlanabilir.
2. adım: Eklenti, etkinliği başlatır
Etkinlik, eklenti startActivity()
üzerinde MeetSidePanelClient
yöntemini çağırdığında başlar.
startActivity()
yöntemi, parametre olarak ActivityStartingState
nesnesini alır. Bu nedenle, setActivityStartingState()
çağrılmak yerine startActivity()
çağrılabilir.
Kullanıcı içerik seçimini tamamlayıp etkinliği başlatmaya hazır olduğunda, eklentinizde startActivity()
yöntemini aşağıdaki gibi çağırın:
sidePanelClient.startActivity({
mainStageUrl: "https://app.example.com/mainstage",
additionalData: JSON.stringify({
// State to send to participants.
})
});
startActivity()
yöntemi çağrıldığında Meet aşağıdaki işlemleri gerçekleştirir:
Diğer katılımcılar için: Meet, etkinliğin devam ettiğine dair bir bildirim gösterir.
Başlatıcı için:
ActivityStartingState
içinde ana sahne URL'si belirtilmişse Meet,ActivityStartingState
içindeki URL'yi kullanarak ana sahneyi açar.
3. adım: Etkinliğin başlangıç durumunu alın
Kullanıcı etkinliğe katıldığında, ActivityStartingState
değerine bağlı olarak eklentiniz ana aşamaya veya yan panele yüklenir.
additionalData
özelliğiyle, etkinliğe katılan kullanıcılarla ilk verileri (durum olarak da adlandırılır) paylaşabilirsiniz. MainStageClient
veya SidePanelClient
başlatıldıktan sonra additionalData
özelliğini almak için getActivityStartingState()
yöntemini çağırabilirsiniz.
const startingState = client.getActivityStartingState();
const additionalData = JSON.parse(startingState.additionalData);
4. adım (isteğe bağlı): Eklenti durumunu bir etkinlikte paylaşın
Etkinlik devam ederken kullanıcılar arasında durumu da paylaşabilirsiniz. Durumu iki şekilde paylaşabilirsiniz:
- Kendi senkronizasyon arka ucunuzu oluşturarak bu işi kendiniz halledebilirsiniz.
- Kullanıcılar arasında rastgele verileri paylaşmanın kolay ve hızlı bir yolu olan Co-Doing API'yi kullanın.
Örnek: GitHub'daki animasyon eklentisi
GitHub'daki "Animation" örnek eklentisi
bir eklentide ortak çalışmayı içerir. Bu kılavuzdaki 1. adım örneğe dahil değildir. Bunun yerine, eklenti başlatıcı yan panelde "Animasyonu Başlat" düğmesini tıkladığında startActivity()
yöntemi, başlangıç durumu kullanıcının seçtiği renkle doldurularak çağrılır (2. adım). Etkinlik başladıktan sonra ana sahne, getActivityStartingState()
yöntemini çağırarak başlangıç durumunu alır (3. adım). Bu örnek eklentide, etkinlik sırasında durum (seçilen renk) katılımcılar arasında paylaşılmadığı için 4. adım atlanır. Ancak tek tek kullanıcılar, bir renk seçerek kendi durumlarını değiştirebilir. Bu renk, çerçeveden çerçeveye mesajlaşma kullanılarak yan panel çerçevesinden ana sahne çerçevesine gönderilir.
Sınırlamalar
ActivityStartingState
içinde belirtilen URL'ler, eklenti manifestinde belirtilen kaynaklarla aynı kaynağa ait olmalıdır. Daha fazla bilgi için Eklenti güvenliği başlıklı makaleyi inceleyin.sidePanelUrl
özelliği,mainStageUrl
özelliği veadditionalData
özelliği karakter uzunlukları, SDK referans dokümanlarında yayınlandığı şekliyle ilgili boyut sınırlarına uygun olmalıdır.
İlgili konular
- Etkinlik başlangıç durumunu kullanma
- Meet eklentisi kullanma
- Birlikte Çalışma API'sini uygulama
- Eklenti güvenliği