Bonjour,

Alors voil� j'ai un souci pour un projet pour mon �cole. Je dois cr�er un client qui peut se connecter � un autre (sur un autre r�seau) avec la lib QT et un protocole UDP pour faire un VOIP.
J'arrive � lire et �crire sur la m�me QUdpsocket mais lorsque je veux �crire sur la socket d'un autre client cela ne marche pas, aucun paquet n'est re�u sur la socket.
J'ai essay� m�me dans un r�seau local et cela ne marche pas.
Pourtant si j'ai bien compris le fonctionnement de toutes les fonctions, QT: bind permet de lier un port � une socket et utiliser le signal readyread pour savoir si quelque chose a �t� �crit sur la socket, et de le r�cup�rer avec readDatagram.
Et j'utilise writeDatagram pour envoyer un paquet sur la socket de l'autre client.

Voici le code pour la connexion :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
 
void	UdpClient::connect(const std::string &addr, int port) {
 
    if (mQUdpSocket->bind(QHostAddress(QString(addr.c_str())), port, QUdpSocket::ShareAddress)== false)
            throw Throw_err("fail QUdpSocket::bind");
    QObject::connect(mQUdpSocket, SIGNAL(readyRead()), this, SLOT(SocketReadable()));
     mIsReadable = false;
}
Voici le code de l'envoi de paquet :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
 
void    UdpClient::send(const std::string &msg)
{
   QByteArray data;
 
   data.append(msg.c_str());
   mQUdpSocket->writeDatagram(data, QHostAddress(QString(buff_rec.host.c_str())), buff_rec.port);
}
Si quelqu'un a une id�e je suis preneur cela fait 3 jours que je suis bloqu� sur se probl�me