diff --git a/src/utils/sapd/sapd.c b/src/utils/sapd/sapd.c
index 5810cc80fd539bfc5d5eff9969fc16b859f69435..55ac104fc7e90a8ebf6b939b03b1d7540d03c4fc 100644
--- a/src/utils/sapd/sapd.c
+++ b/src/utils/sapd/sapd.c
@@ -1286,6 +1286,10 @@ static int rav_unannounce(aes67_sapsrv_session_t session)
 
     aes67_mdns_stop(rav_session->mdns_service);
 
+    aes67_rtsp_srv_sdp_remove(&rav.rtsp_srv, rav_session);
+
+    rav_session_delete(rav_session);
+
     return EXIT_SUCCESS;
 }
 
@@ -2389,7 +2393,7 @@ static void cmd_rav_announce(struct connection_st * con, u8_t * cmdline, size_t
     }
 
 
-    if (len < sizeof(AES67_SAPD_CMD_UNSET " o=- 1 1 IN IP4 1.2.3.4")){
+    if (len < sizeof(AES67_SAPD_CMD_RAV_ANNOUNCE " o=- 1 1 IN IP4 1.2.3.4")){
         write_error(con, AES67_SAPD_ERR_SYNTAX, NULL);
         return;
     }
@@ -2397,7 +2401,7 @@ static void cmd_rav_announce(struct connection_st * con, u8_t * cmdline, size_t
     // try to parse given originator
     struct aes67_sdp_originator origin;
     // note sizeof(..) gives length of string + 1 (terminating null)
-    if (aes67_sdp_origin_fromstr(&origin, &cmdline[sizeof(AES67_SAPD_CMD_TAKEOVER)], len - sizeof(AES67_SAPD_CMD_TAKEOVER)) == AES67_SDP_ERROR){
+    if (aes67_sdp_origin_fromstr(&origin, &cmdline[sizeof(AES67_SAPD_CMD_RAV_ANNOUNCE)], len - sizeof(AES67_SAPD_CMD_RAV_ANNOUNCE)) == AES67_SDP_ERROR){
         write_error(con, AES67_SAPD_ERR_SYNTAX, "Invalid origin");
         return;
     }
@@ -2409,13 +2413,13 @@ static void cmd_rav_announce(struct connection_st * con, u8_t * cmdline, size_t
         return;
     }
 
-    if (aes67_sapsrv_session_get_managedby(session) != AES67_SAPSRV_MANAGEDBY_REMOTE){
-        write_error(con, AES67_SAPD_ERR, "Not a remotely managed service");
+    if (aes67_sapsrv_session_get_managedby(session) != AES67_SAPSRV_MANAGEDBY_LOCAL){
+        write_error(con, AES67_SAPD_ERR, "Not a locally managed service");
         return;
     }
 
     if (rav_announce(session)){
-        write_error(con, AES67_SAPD_ERR, "Failed to register service");
+        write_error(con, AES67_SAPD_ERR, "Failed to announce service");
         return;
     }
 
@@ -2429,7 +2433,7 @@ static void cmd_rav_unannounce(struct connection_st * con, u8_t * cmdline, size_
         return;
     }
 
-    if (len < sizeof(AES67_SAPD_CMD_UNSET " o=- 1 1 IN IP4 1.2.3.4")){
+    if (len < sizeof(AES67_SAPD_CMD_RAV_UNANNOUNCE " o=- 1 1 IN IP4 1.2.3.4")){
         write_error(con, AES67_SAPD_ERR_SYNTAX, NULL);
         return;
     }
@@ -2437,7 +2441,7 @@ static void cmd_rav_unannounce(struct connection_st * con, u8_t * cmdline, size_
     // try to parse given originator
     struct aes67_sdp_originator origin;
     // note sizeof(..) gives length of string + 1 (terminating null)
-    if (aes67_sdp_origin_fromstr(&origin, &cmdline[sizeof(AES67_SAPD_CMD_TAKEOVER)], len - sizeof(AES67_SAPD_CMD_TAKEOVER)) == AES67_SDP_ERROR){
+    if (aes67_sdp_origin_fromstr(&origin, &cmdline[sizeof(AES67_SAPD_CMD_RAV_UNANNOUNCE)], len - sizeof(AES67_SAPD_CMD_RAV_UNANNOUNCE)) == AES67_SDP_ERROR){
         write_error(con, AES67_SAPD_ERR_SYNTAX, "Invalid origin");
         return;
     }
@@ -2449,13 +2453,13 @@ static void cmd_rav_unannounce(struct connection_st * con, u8_t * cmdline, size_
         return;
     }
 
-    if (aes67_sapsrv_session_get_managedby(session) != AES67_SAPSRV_MANAGEDBY_REMOTE){
-        write_error(con, AES67_SAPD_ERR, "Not a remotely managed service");
+    if (aes67_sapsrv_session_get_managedby(session) != AES67_SAPSRV_MANAGEDBY_LOCAL){
+        write_error(con, AES67_SAPD_ERR, "Not a locally managed service");
         return;
     }
 
     if (rav_unannounce(session)){
-        write_error(con, AES67_SAPD_ERR, "Failed to unregister service");
+        write_error(con, AES67_SAPD_ERR, "Failed to unannounce service");
         return;
     }