Hi! I am using ICE in voice calls, using a "smart" SIP server, developed by our company. I say that it is "smart" because when he receives an INVITE or a 200 OK INVITE he changes the client's SDP so that each client thinks that he is speaking with the other, when in fact both are talking with the server (it serves as a media relay). However, in order to make ICE to work with this mechanism, I had to make a little trick at the server, ir order to avoid ice-mismatch: the server adds relayed candidates, as the clients will check if the "m=" and "c=" lines represent one of the candidates. This way, the clients are able to check connectivity between each other, using ICE as usual. The initial offer and answer go as scheduled, and at this point the clients are talking through the SIP server. Then, ICE checks go as expected and the caller / controller sends the updated offer, telling the callee / controller the candidates that he will use and the ones the callee will use. From this moment on, the callee no longer uses the SIP server, using callee's candidates instead. However, the callee will keep sending data to the server, and to the callee as well. Any idea why the calee doesn't stop using the server (the address in the initial offer?). If needed, I can provide SDPs to illustrate this situation. Best regards and many thanks Pedro Gon?alves