Skip to content

Conversation

@MGaetan89
Copy link
Contributor

@MGaetan89 MGaetan89 commented Aug 27, 2024

Pull request

Description

This PR exposes a new field in PillarboxExoPlayer to allow the integrator to customize what to do with QoS events.

Changes made

  • Add PillarboxExoPlayer.qosMessageHandler to allow integrator to decide what to do with QoS events. For now, it logs the events in Logcat in release or sends them to httpbin.org in debug.
  • Create a new PillarboxHttpClient in pillarbox-player.
  • Deprecate the existing DefaultHttpClient class in pillarbox-core-business in favor of PillarboxHttpClient.
  • Add an enum for the event name in QoSMessage.
  • Add the QoSMessagedata interface for the data in QoSMessage.
  • Provide three implementations of QoSMessageHandler: NoOpQoSMessageHandler, LogcatQoSMessageHandler and RemoteQoSMessageHandler.

Checklist

  • Your branch has been rebased onto the main branch.
  • APIs have been properly documented (if relevant).
  • The documentation has been updated (if relevant).
  • New unit tests have been written (if relevant).
  • The demo has been updated (if relevant).
  • All pull request status checks pass.

@MGaetan89 MGaetan89 linked an issue Aug 27, 2024 that may be closed by this pull request
1 task
@github-actions
Copy link

github-actions bot commented Aug 27, 2024

Code Coverage

Overall Project 53.47% -3.13% 🟢
Files changed 54.78% 🟢

Module Coverage
:pillarbox-core-business 80.41% 🟢
:pillarbox-player 60.19% -5.54% 🟢
Files
Module File Coverage
:pillarbox-core-business HttpMediaCompositionService.kt 100% 🟢
AkamaiTokenProvider.kt 72.36% 🟢
DefaultHttpClient.kt 0% 🟢
:pillarbox-player PillarboxHttpClient.kt 97.8% -2.2% 🟢
QoSCoordinator.kt 89.77% -1.11% 🟢
QoSDevice.kt 89.35% -10.65% 🟢
QoSEvent.kt 84.84% -15.16% 🟢
QoSError.kt 84.72% -14.41% 🟢
PillarboxExoPlayer.kt 83.48% 🟢
QoSMessage.kt 76.03% -23.97% 🟢
QoSSession.kt 60.71% -39.29% 🟢
QoSMedia.kt 30.56% -69.44% 🟢
QoSPlayer.kt 29.31% -70.69% 🟢
QoSScreen.kt 27.27% -72.73% 🟢
QoSOS.kt 27.27% -72.73% 🟢
QoSStall.kt 27.27% -72.73% 🟢
QoSTimings.kt 18.5% -81.5% 🟢
QoETimings.kt 18.05% -81.95% 🟢
QoSMessageHandler.kt 11.96% -88.04% 🟢
QoSMessageData.kt 0% 🟢

@MGaetan89 MGaetan89 force-pushed the 672-send-qos-events-to-a-server branch from e5e4a7e to e38f8de Compare August 27, 2024 13:37
Base automatically changed from 676-update-qos-models-to-match-the-latest-specification to qos August 28, 2024 06:34
@MGaetan89 MGaetan89 force-pushed the 672-send-qos-events-to-a-server branch from b270549 to 32209cf Compare August 28, 2024 07:01
@MGaetan89 MGaetan89 force-pushed the 672-send-qos-events-to-a-server branch from 32209cf to 8f8c5bc Compare August 28, 2024 07:12
@MGaetan89
Copy link
Contributor Author

@StaehliJ the qosMessageHandler is now a parameter of the constructor of PillarboxExoPlayer and conflicts have been resolved.

@MGaetan89 MGaetan89 merged commit 9bcd2a7 into qos Aug 28, 2024
@MGaetan89 MGaetan89 deleted the 672-send-qos-events-to-a-server branch August 28, 2024 08:27
StaehliJ added a commit that referenced this pull request Sep 11, 2024
Co-authored-by: Joaquim Stähli <joaquim.staehli@gmail.com>
MGaetan89 added a commit that referenced this pull request Sep 12, 2024
Co-authored-by: Joaquim Stähli <joaquim.staehli@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

Send QoS events to a server

2 participants