receiveMessage method
接收到控制消息(由 DataChannelObserver 调用)
message 接收到的消息
Implementation
@override
void receiveMessage(WebRtcHttpMessage message) {
// 打印完整的消息 JSON
print('[$_tag] Received message JSON: ${message.toJsonString()}');
// 1. 基于 requestId && apiUrl 获取缓存 callback
final key = _makeKey(message.requestId, message.apiUrl);
print('[$_tag] Received message for key: $key');
final callback = _callbackCache[key];
if (callback != null) {
// 2. 通过 callback 抛送
try {
callback(message.requestId, message.apiUrl, message);
} catch (e) {
print('[$_tag] Callback execution failed: $e');
} finally {
// 清除缓存
_callbackCache.remove(key);
print('[$_tag] Removed callback for key: $key');
}
} else {
print('[$_tag] No callback found for key: $key');
}
}