mirror of
https://github.com/kunkundi/crossdesk.git
synced 2025-10-27 04:35:34 +08:00
Support multiple ice connections
This commit is contained in:
42
tests/signal_server/transmission_manager.h
Normal file
42
tests/signal_server/transmission_manager.h
Normal file
@@ -0,0 +1,42 @@
|
||||
#ifndef _TRANSIMISSION_MANAGER_H_
|
||||
#define _TRANSIMISSION_MANAGER_H_
|
||||
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <websocketpp/server.hpp>
|
||||
|
||||
class TransmissionManager {
|
||||
public:
|
||||
TransmissionManager();
|
||||
~TransmissionManager();
|
||||
|
||||
public:
|
||||
bool BindHostToTransmission(websocketpp::connection_hdl hdl,
|
||||
const std::string& transmission_id);
|
||||
bool BindGuestToTransmission(websocketpp::connection_hdl hdl,
|
||||
const std::string& transmission_id);
|
||||
bool ReleaseHostFromTransmission(websocketpp::connection_hdl hdl,
|
||||
const std::string& transmission_id);
|
||||
bool ReleaseGuestFromTransmission(websocketpp::connection_hdl hdl,
|
||||
const std::string& transmission_id);
|
||||
|
||||
bool BindGuestUsernameToWsHandle(const std::string& guest_username,
|
||||
websocketpp::connection_hdl hdl);
|
||||
|
||||
websocketpp::connection_hdl GetHostOfTransmission(
|
||||
const std::string& transmission_id);
|
||||
std::set<websocketpp::connection_hdl> GetGuestOfTransmission(
|
||||
const std::string& transmission_id);
|
||||
websocketpp::connection_hdl GetGuestWsHandle(
|
||||
const std::string& guest_username);
|
||||
|
||||
private:
|
||||
std::map<std::string, websocketpp::connection_hdl> transmission_host_list_;
|
||||
std::map<std::string, std::set<websocketpp::connection_hdl>>
|
||||
transmission_guest_list_;
|
||||
|
||||
std::map<std::string, websocketpp::connection_hdl>
|
||||
transmission_guest_username_list_;
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user