|
| virtual | ~ClientCallbacks ()=default |
| | Destroy the client callback interface. More...
|
| |
| virtual Reply< void, ErrorCode > | UnpublishedSubscribeReceived (const std::shared_ptr< Session > &session, const FullTrackName &track_full_name, const SubscribeAttributes &subscribe_attributes) |
| | Callback notification for new subscribe received that doesn't match an existing publish track. More...
|
| |
| virtual Expected< void, Error< ErrorCode > > | SetupReceived (const std::shared_ptr< Session > &session, const SetupAttributes &setup_attributes) |
| | Callback on receipt of the peer's SETUP message. More...
|
| |
| virtual void | OnStreamClosed (std::uint64_t stream_id, StreamClosedFlag flag) |
| | Notify that a QUIC stream closed. More...
|
| |
| virtual void | StatusChanged (const std::shared_ptr< Session > &session, Status status) |
| | Callback notification for status/state change. More...
|
| |
| virtual void | MetricsSampled (const std::shared_ptr< Session > &session, const ConnectionMetrics &metrics) |
| | Notification callback to provide sampled connection metrics. More...
|
| |
| virtual Reply< const PublishResponse, PublishErrorCode > | PublishReceived (const std::shared_ptr< Session > &session, std::uint64_t request_id, const PublishAttributes &publish_attributes, std::weak_ptr< SubscribeNamespaceHandler > sub_ns_handler) |
| | Callback notification for new publish received. More...
|
| |
| virtual Reply< void, PublishNamespaceErrorCode > | PublishNamespaceReceived (const std::shared_ptr< Session > &session, const TrackNamespace &track_namespace, const PublishNamespaceAttributes &publish_namespace_attributes) |
| | Callback notification for announce received by subscribe namespace. More...
|
| |
| virtual Reply< const FetchResponse, FetchErrorCode > | StandaloneFetchReceived (const std::shared_ptr< Session > &session, std::uint64_t request_id, const FullTrackName &track_full_name, const StandaloneFetchAttributes &attributes) |
| | Event to run on receiving a Standalone Fetch request. More...
|
| |
| virtual Reply< const FetchResponse, FetchErrorCode > | JoiningFetchReceived (const std::shared_ptr< Session > &session, std::uint64_t request_id, const FullTrackName &track_full_name, const JoiningFetchAttributes &attributes) |
| | Event to run on receiving a Joining Fetch request. More...
|
| |
| virtual Reply< void, FetchErrorCode > | FetchCancelReceived (const std::shared_ptr< Session > &session, std::uint64_t request_id) |
| | Callback notification on receiving a FetchCancel message. More...
|
| |
| virtual Reply< TrackStatusResponse, RequestErrorCode > | TrackStatusReceived (const std::shared_ptr< Session > &session, const FullTrackName &track_full_name) |
| | Callback notification for track status message received. More...
|
| |
Callback interface for session events specific to client mode.
- Examples
- simple_publish/main.cpp, and simple_subscribe/main.cpp.
| virtual void quicr::Session::Callbacks::MetricsSampled |
( |
const std::shared_ptr< Session > & |
session, |
|
|
const ConnectionMetrics & |
metrics |
|
) |
| |
|
virtualinherited |
Notification callback to provide sampled connection metrics.
Invoked every Config::metrics_sample_ms in either client or server mode. The period based metrics reset after this callback, so a value not read here is lost. Per track metrics for the same period follow this call, via PublishTrackHandler::MetricsSampled and SubscribeTrackHandler::MetricsSampled, sharing the same last_sample_time.
Invoked on the transport notify thread, which also carries stream and connection events. Return promptly; a slow implementation backs the queue up and other notifications are dropped to make room.
- Parameters
-
| session | The session the metrics belong to |
| metrics | Copy of the connection metrics for the sample period |