Add connect exports/requests + translator type, and a media-source synthetic flag - #142
Merged
JonathanLennox merged 3 commits intoJun 11, 2026
Merged
Conversation
…onnect Extend the colibri2 <connect> element with optional <exports> and <requests> containers, each holding <export>/<request> items that reference a source by its 'name' attribute (the source-name idiom used by Capability/SourcePacketExtension). Also add a "translator" connect type alongside recorder/transcriber. Wire both through the XML provider and the Jackson-based JSON serializer/deserializer (exports/requests as JSON string arrays). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add an optional 'synthetic' attribute to the colibri2 <media-source> element, marking sources generated by the bridge rather than sent by an endpoint. The attribute is only emitted when true (defaulting to false), and is wired through the builder and the JSON serializer/deserializer. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
bgrozev
approved these changes
Jun 11, 2026
| fun removePing() = getPing()?.let { removeChildExtension(it) } | ||
|
|
||
| fun getExports(): List<String> = | ||
| getChildExtensionsOfType(Exports::class.java).firstOrNull()?.getNames() ?: emptyList() |
Member
There was a problem hiding this comment.
Can simplify using getChildExtension. Do you care about list vs set semantics here? Probably not
Addresses review feedback on jitsi#142. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two related additions to the colibri2 extensions.
<connect>: exports/requests and translator type<exports>/<requests>containers on<connect>, each holding<export>/<request>items that reference a source by itsnameattribute (the source-name idiom used byCapability/SourcePacketExtension):translatorconnect type alongsiderecorder/transcriber.<media-source>: synthetic flagsyntheticboolean attribute on<media-source>, marking sources generated by the bridge rather than sent by an endpoint. Only emitted when true (defaults to false).All of the above is wired through the XML providers and the Jackson-based JSON serializer/deserializer, with XML and bidirectional JSON round-trip test coverage.
Note
Rebased onto
masternow that #139 (the json-simple → Jackson migration) has merged. Supersedes #141, which was auto-closed when #139's branch was deleted.🤖 Generated with Claude Code