mirror of
https://github.com/kotatogram/kotatogram-desktop
synced 2025-09-05 00:55:12 +00:00
Update API scheme.
This commit is contained in:
@@ -40,13 +40,12 @@ constexpr auto kWaitForUpdatesTimeout = 3 * crl::time(1000);
|
||||
|
||||
} // namespace
|
||||
|
||||
|
||||
const std::string &GroupCallParticipant::cameraEndpoint() const {
|
||||
return videoParams ? videoParams->camera.endpoint : EmptyEndpoint();
|
||||
return GetCameraEndpoint(videoParams);
|
||||
}
|
||||
|
||||
const std::string &GroupCallParticipant::screenEndpoint() const {
|
||||
return videoParams ? videoParams->screen.endpoint : EmptyEndpoint();
|
||||
return GetScreenEndpoint(videoParams);
|
||||
}
|
||||
|
||||
GroupCall::GroupCall(
|
||||
@@ -232,11 +231,9 @@ const GroupCallParticipant *GroupCall::participantByEndpoint(
|
||||
return nullptr;
|
||||
}
|
||||
for (const auto &participant : _participants) {
|
||||
if (const auto params = participant.videoParams.get()) {
|
||||
if (params->camera.endpoint == endpoint
|
||||
|| params->screen.endpoint == endpoint) {
|
||||
return &participant;
|
||||
}
|
||||
if (participant.cameraEndpoint() == endpoint
|
||||
|| participant.screenEndpoint() == endpoint) {
|
||||
return &participant;
|
||||
}
|
||||
}
|
||||
return nullptr;
|
||||
@@ -587,18 +584,20 @@ void GroupCall::applyParticipantsSlice(
|
||||
&& (!was || was->onlyMinLoaded);
|
||||
const auto raisedHandRating
|
||||
= data.vraise_hand_rating().value_or_empty();
|
||||
const auto localUpdate = (sliceSource
|
||||
== ApplySliceSource::UpdateConstructed);
|
||||
const auto existingVideoParams = (i != end(_participants))
|
||||
? i->videoParams
|
||||
: nullptr;
|
||||
auto videoParams = localUpdate
|
||||
? existingVideoParams
|
||||
: Calls::ParseVideoParams(
|
||||
data.vvideo(),
|
||||
data.vpresentation(),
|
||||
existingVideoParams);
|
||||
const auto value = Participant{
|
||||
.peer = participantPeer,
|
||||
.videoParams = Calls::ParseVideoParams(
|
||||
(data.vvideo()
|
||||
? data.vvideo()->c_dataJSON().vdata().v
|
||||
: QByteArray()),
|
||||
(data.vpresentation()
|
||||
? data.vpresentation()->c_dataJSON().vdata().v
|
||||
: QByteArray()),
|
||||
(i != end(_participants)
|
||||
? i->videoParams
|
||||
: nullptr)),
|
||||
.videoParams = std::move(videoParams),
|
||||
.date = data.vdate().v,
|
||||
.lastActive = lastActive,
|
||||
.raisedHandRating = raisedHandRating,
|
||||
|
Reference in New Issue
Block a user