diff --git a/client/src/contexts/CallProvider.tsx b/client/src/contexts/CallProvider.tsx
index 93ec5b5..e602508 100644
--- a/client/src/contexts/CallProvider.tsx
+++ b/client/src/contexts/CallProvider.tsx
@@ -228,6 +228,11 @@
     if (callRole === 'caller' && callStatus === CallStatus.Ringing) {
       const callAcceptListener = (data: CallAction) => {
         console.info('Received event on CallAccept', data);
+        if (data.conversationId !== conversationId) {
+          console.warn('Wrong incoming conversationId, ignoring action');
+          return;
+        }
+
         setCallStatus(CallStatus.Connecting);
 
         webRtcConnection
@@ -246,7 +251,7 @@
         webSocket.unbind(WebSocketMessageType.CallAccept, callAcceptListener);
       };
     }
-  }, [callRole, webSocket, webRtcConnection, sendWebRtcOffer, callStatus]);
+  }, [callRole, webSocket, webRtcConnection, sendWebRtcOffer, callStatus, conversationId]);
 
   const quitCall = useCallback(() => {
     if (!webRtcConnection) {
@@ -271,6 +276,11 @@
 
     const callEndListener = (data: CallAction) => {
       console.info('Received event on CallEnd', data);
+      if (data.conversationId !== conversationId) {
+        console.warn('Wrong incoming conversationId, ignoring action');
+        return;
+      }
+
       quitCall();
       // TODO: write in chat that the call ended
     };
