diff --git a/src/sip/sipcall.cpp b/src/sip/sipcall.cpp
index 5ff840362796b3899bb3faac4a8b0744be8e6499..6c62d606985aec07ed0b2d060057ced8e0833bad 100644
--- a/src/sip/sipcall.cpp
+++ b/src/sip/sipcall.cpp
@@ -671,7 +671,9 @@ SIPCall::sendTextMessage(const std::map<std::string, std::string>& messages,
             c->sendTextMessage(messages, from);
     } else {
         if (inv) {
-            im::sendSipMessage(inv.get(), messages);
+            try {
+                im::sendSipMessage(inv.get(), messages);
+            } catch (...) {}
         } else {
             pendingOutMessages_.emplace_back(messages, from);
             RING_ERR("[call:%s] sendTextMessage: no invite session for this call", getCallId().c_str());