mirror of
https://git.rwth-aachen.de/acs/public/villas/node/
synced 2025-03-09 00:00:00 +01:00
commit
d294e8fff3
5 changed files with 23 additions and 9 deletions
|
@ -8,7 +8,7 @@ nodes = {
|
|||
session = "my-session-name"
|
||||
|
||||
# Address to the websocket signaling server
|
||||
server = "wss://villas.k8s.eonerc.rwth-aachen.de/ws/signaling"
|
||||
server = "https://villas.k8s.eonerc.rwth-aachen.de/ws/signaling"
|
||||
|
||||
# Limit the number of times a channel will retransmit data if not successfully delivered.
|
||||
# This value may be clamped if it exceeds the maximum value supported.
|
||||
|
|
|
@ -25,7 +25,7 @@ static villas::node::Web *web;
|
|||
|
||||
WebRTCNode::WebRTCNode(const std::string &name) :
|
||||
Node(name),
|
||||
server("wss://villas.k8s.eonerc.rwth-aachen.de/ws/signaling"),
|
||||
server("https://villas.k8s.eonerc.rwth-aachen.de/ws/signaling"),
|
||||
wait_seconds(0),
|
||||
format(nullptr),
|
||||
queue({}),
|
||||
|
@ -153,7 +153,7 @@ int WebRTCNode::prepare()
|
|||
if (ret < 0) // TODO log
|
||||
return;
|
||||
|
||||
this->logger->debug("onMessage(rtc::binary) callback finished pushing {} samples", ret);
|
||||
this->logger->trace("onMessage(rtc::binary) callback finished pushing {} samples", ret);
|
||||
});
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -41,9 +41,19 @@ namespace rtc {
|
|||
|
||||
PeerConnection::PeerConnection(const std::string &server, const std::string &session, rtc::Configuration cfg, Web *w, rtc::DataChannelInit d) :
|
||||
web(w),
|
||||
extraServers({}),
|
||||
dataChannelInit(d),
|
||||
defaultConfig(cfg),
|
||||
logger(logging.get("webrtc:pc"))
|
||||
conn(nullptr),
|
||||
chan(nullptr),
|
||||
logger(logging.get("webrtc:pc")),
|
||||
stopStartup(false),
|
||||
warnNotConnected(false),
|
||||
standby(true),
|
||||
first(false),
|
||||
firstID(INT_MAX),
|
||||
secondID(INT_MAX),
|
||||
onMessageCallback(nullptr)
|
||||
{
|
||||
client = std::make_shared<SignalingClient>(server, session, web);
|
||||
client->onConnected([this](){ this->onSignalingConnected(); });
|
||||
|
|
|
@ -120,6 +120,8 @@ int SignalingClient::protocolCallback(struct lws *wsi, enum lws_callback_reasons
|
|||
buffer.append((char *) in, len);
|
||||
|
||||
if (lws_is_final_fragment(wsi)) {
|
||||
logger->trace("Received signaling message: {:.{}}", buffer.data(), buffer.size());
|
||||
|
||||
auto *json = buffer.decode();
|
||||
if (json == nullptr) {
|
||||
logger->error("Failed to decode JSON");
|
||||
|
@ -194,15 +196,17 @@ int SignalingClient::writable()
|
|||
return 0;
|
||||
}
|
||||
|
||||
char buf[LWS_PRE + 1024];
|
||||
auto len = json_dumpb(jsonMsg, buf + LWS_PRE, 1024, JSON_INDENT(2));
|
||||
char buf[LWS_PRE + 4096];
|
||||
auto len = json_dumpb(jsonMsg, buf + LWS_PRE, 4096, JSON_INDENT(2));
|
||||
if (len > sizeof(buf) - LWS_PRE)
|
||||
return -1;
|
||||
|
||||
logger->trace("Sending signaling message: {:.{}}", buf + LWS_PRE, len);
|
||||
|
||||
auto ret = lws_write(wsi, (unsigned char *) buf + LWS_PRE, len, LWS_WRITE_TEXT);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
logger->debug("Signaling message sent: {:.{}}", buf + LWS_PRE, len);
|
||||
|
||||
// Reschedule callback if there are more messages to be send
|
||||
if (!outgoingMessages.empty())
|
||||
lws_callback_on_writable(wsi);
|
||||
|
|
|
@ -98,7 +98,7 @@
|
|||
var dc = null; // RTCDataChannel for the local (sender)
|
||||
var sc = null; // Signaling Client
|
||||
|
||||
var server = 'wss://villas.k8s.eonerc.rwth-aachen.de/ws/signaling';
|
||||
var server = 'https://villas.k8s.eonerc.rwth-aachen.de/ws/signaling';
|
||||
var sessionName = 'my-session-name';
|
||||
var iceUsername = 'villas';
|
||||
var icePassword = 'villas';
|
||||
|
|
Loading…
Add table
Reference in a new issue