diff --git a/src/sipvoiplink.cpp b/src/sipvoiplink.cpp
index b440845dc6b2928064816b8c9f01efa58c941622..fcf568fcf99b5cf52f3fc0c1077ebe765754eb64 100644
--- a/src/sipvoiplink.cpp
+++ b/src/sipvoiplink.cpp
@@ -363,6 +363,7 @@ SIPVoIPLink::carryingDTMFdigits(const CallID& id, char code UNUSED)
   SIPCall* call = getSIPCall(id);
   if (call==0) { _debug("Call doesn't exist\n"); return false; }  
 
+  Manager::instance().getUserAgent()->carryingDTMFdigits(call);
   //int duration = Manager::instance().getConfigInt(SIGNALISATION, PULSE_LENGTH);
 
   // TODO Add DTMF with pjsip - INFO method
diff --git a/src/useragent.cpp b/src/useragent.cpp
index 86c024bdf4c6bbb01f311f54fb941d4b0a6e43a1..b703186c540d26eed3ab64f48a127be4016889d3 100644
--- a/src/useragent.cpp
+++ b/src/useragent.cpp
@@ -1188,6 +1188,11 @@ bool UserAgent::refuse(SIPCall* call)
     return true;
 }
 
+bool UserAgent::carryingDTMFdigits(SIPCall* call)
+{
+	return true;
+}
+
 bool UserAgent::transfer(SIPCall *call, const std::string& to)
 {
     pjsip_evsub *sub;
diff --git a/src/useragent.h b/src/useragent.h
index 1c92cf1cf9190f190781107de5b05e491653eba6..a1bb0b02cb6a8b8d92b1d215f9ccd02239b51323 100644
--- a/src/useragent.h
+++ b/src/useragent.h
@@ -134,6 +134,9 @@ public:
     void onCallTransfered(pjsip_inv_session *inv, pjsip_rx_data *rdata);
     
     bool makeOutgoingCall(const std::string& to, SIPCall* call, const AccountID& id);
+    
+    bool carryingDTMFdigits(SIPCall* call);
+
     pj_pool_t *getAppPool() {return _pool;}
     static pj_bool_t mod_on_rx_request(pjsip_rx_data *rdata);
     static pj_bool_t mod_on_rx_response(pjsip_rx_data *rdata UNUSED) {return PJ_SUCCESS;}