我需要在应用程序之间进行点对点通信。
应用程序还应在互联网上自动找到彼此。为此,除其他外,我需要克服NAT Traversal
,等等。
例如,我需要使用如下通信:
InternetPeer peer;
peer.setName("my_name");
peer.listen(); // accept connections
peer.startSearchForOthers(); // find another peers
connect(&peer, &InternetPeer::newConnection, this, ...);
connect(&peer, &InternetPeer::anotherPeerFound, this, ...);
QStringList peerNames = peer.availablePeers();
peer.sendMessage(peerNames.at(0), "Hello");
peer.close();
那么最好有一些方法来访问这样的连接QTcpSocket
or QUdpSocket
。
如何在 Qt 和 c++ 上做到这一点?