in src/spark_automerge_wrapper.js [158:180]
function generateSyncMessages(state, syncStates, peerId) {
const syncMsgs = []
// Due to RTP message size limit, need to split sync message if it is too big
const maxSyncMsgLength = 800
Object.entries(syncStates).forEach(([targetPeerId, syncState]) => {
const [nextSyncState, syncMessage] = Automerge.generateSyncMessage(
state,
syncState || initSyncState(),
maxSyncMsgLength
)
syncStates[targetPeerId] = nextSyncState
if (syncMessage) {
const metaData = {
s: peerId, t: targetPeerId
}
syncMsgs.push(encodeMessage(metaData, syncMessage))
}
})
return syncMsgs
}