size_t bytes_sent;
size_t bytes_lost;
size_t num_loss_events;
+ std::string hls_zombie_key;
};
struct Client {
ClientStats get_stats() const;
+ std::string get_hls_zombie_key() const {
+ if (x_playback_session_id.empty()) {
+ return remote_addr;
+ } else {
+ return x_playback_session_id;
+ }
+ }
+
// The file descriptor associated with this socket.
int sock;
std::string remote_addr;
std::string referer;
std::string user_agent;
+ std::string x_playback_session_id;
enum State { READING_REQUEST, SENDING_HEADER, SENDING_DATA, SENDING_SHORT_RESPONSE, WAITING_FOR_KEYFRAME, PREBUFFERING };
State state = READING_REQUEST;