mirror of
https://github.com/kunkundi/crossdesk.git
synced 2025-10-26 12:15:34 +08:00
[feat] LeaveConnection() method needs to specific which transmission wants to leave
This commit is contained in:
@@ -85,7 +85,7 @@ DLLAPI int CreateConnection(PeerPtr* peer_ptr, const char* transmission_id,
|
||||
DLLAPI int JoinConnection(PeerPtr* peer_ptr, const char* transmission_id,
|
||||
const char* password);
|
||||
|
||||
DLLAPI int LeaveConnection(PeerPtr* peer_ptr);
|
||||
DLLAPI int LeaveConnection(PeerPtr* peer_ptr, const char* transmission_id);
|
||||
|
||||
DLLAPI int SendData(PeerPtr* peer_ptr, DATA_TYPE data_type, const char* data,
|
||||
size_t size);
|
||||
|
||||
@@ -193,6 +193,8 @@ int PeerConnection::Init(PeerConnectionParams params,
|
||||
|
||||
nv12_data_ = new char[1280 * 720 * 3 / 2];
|
||||
|
||||
LOG_INFO("[{}] Init finish", user_id);
|
||||
|
||||
// if (0 != CreateVideoCodec(hardware_acceleration_)) {
|
||||
// LOG_ERROR("Create video codec failed");
|
||||
// return -1;
|
||||
@@ -342,7 +344,7 @@ int PeerConnection::Join(const std::string &transmission_id,
|
||||
return ret;
|
||||
}
|
||||
|
||||
int PeerConnection::Leave() {
|
||||
int PeerConnection::Leave(const std::string &transmission_id) {
|
||||
if (SignalStatus::SignalConnected != GetSignalStatus()) {
|
||||
LOG_ERROR("Signal not connected");
|
||||
return -1;
|
||||
@@ -350,11 +352,11 @@ int PeerConnection::Leave() {
|
||||
|
||||
json message = {{"type", "leave_transmission"},
|
||||
{"user_id", user_id_},
|
||||
{"transmission_id", transmission_id_}};
|
||||
{"transmission_id", transmission_id}};
|
||||
if (ws_transport_) {
|
||||
ws_transport_->Send(message.dump());
|
||||
LOG_INFO("[{}] sends leave transmission [{}] notification ", user_id_,
|
||||
transmission_id_);
|
||||
transmission_id);
|
||||
}
|
||||
|
||||
ice_ready_ = false;
|
||||
@@ -576,7 +578,7 @@ int PeerConnection::RequestTransmissionMemberList(
|
||||
return -1;
|
||||
}
|
||||
|
||||
LOG_INFO("Request member list");
|
||||
LOG_INFO("[{}] Request member list", user_id_);
|
||||
|
||||
json message = {{"type", "query_user_id_list"},
|
||||
{"transmission_id", transmission_id_},
|
||||
|
||||
@@ -61,7 +61,7 @@ class PeerConnection {
|
||||
int Join(const std::string &transmission_id,
|
||||
const std::string &password = "");
|
||||
|
||||
int Leave();
|
||||
int Leave(const std::string &transmission_id);
|
||||
|
||||
int Destroy();
|
||||
|
||||
|
||||
@@ -81,13 +81,13 @@ int JoinConnection(PeerPtr *peer_ptr, const char *transmission_id,
|
||||
return ret;
|
||||
}
|
||||
|
||||
int LeaveConnection(PeerPtr *peer_ptr) {
|
||||
int LeaveConnection(PeerPtr *peer_ptr, const char *transmission_id) {
|
||||
if (!peer_ptr) {
|
||||
LOG_ERROR("peer_ptr not created");
|
||||
return -1;
|
||||
}
|
||||
|
||||
peer_ptr->peer_connection->Leave();
|
||||
peer_ptr->peer_connection->Leave(transmission_id);
|
||||
LOG_INFO("LeaveConnection");
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user