microsoft / live-share-sdk

A framework for building collaborative Microsoft Teams and M365 experiences.
Other
94 stars 29 forks source link

Added enableBackgroundUpdates option for each LiveObjectSynchronizer #747

Closed huntj88 closed 6 months ago

huntj88 commented 7 months ago

Added enableBackgroundUpdates option for each LiveObjectSynchronizer instance. This flag is set to false on LiveMediaSession.

Replaced joined event in LiveMediaSession with LiveObjectSynchronizer connect event. This cuts down on an additional signal sent by every client when first joining the session.

image

validation: LiveMediaSession object Id: 515a1cdd-afdc-4bd3-8c4f-1f01641c7754

LiveMediaSession initial data is part of connect signal.

[
  "submitSignal",
  "74c72476-bd2d-4b9a-888d-4cb8494bc424",
  [
    [
      "{\"clientSignalSequenceNumber\":2,\"contents\":{\"type\":\"connect\",\"content\":{\"clientId\":\"74c72476-bd2d-4b9a-888d-4cb8494bc424\",\"data\":{\"63f73608-6889-4896-ba85-310662f8b210\":{\"data\":{\"status\":\"WAITING\"},\"timestamp\":0},\"515a1cdd-afdc-4bd3-8c4f-1f01641c7754\":{\"timestamp\":0}},\"timestamp\":0,\"name\":\"connect\"}}}"
    ]
  ]
]

LiveMediaSession is not part of update signals.

[
  "submitSignal",
  "74c72476-bd2d-4b9a-888d-4cb8494bc424",
  [
    [
      "{\"clientSignalSequenceNumber\":8,\"contents\":{\"type\":\"update\",\"content\":{\"clientId\":\"74c72476-bd2d-4b9a-888d-4cb8494bc424\",\"data\":{\"63f73608-6889-4896-ba85-310662f8b210\":{\"data\":{\"status\":\"WAITING\"},\"timestamp\":0}},\"timestamp\":1707260718431,\"name\":\"update\"}}}"
    ]
  ]
]
pradeepananth commented 7 months ago

Could you please add any validation screenshots to the description ?