diff --git a/lib/punchblock/connection/generic_connection.rb b/lib/punchblock/connection/generic_connection.rb
index <HASH>..<HASH> 100644
--- a/lib/punchblock/connection/generic_connection.rb
+++ b/lib/punchblock/connection/generic_connection.rb
@@ -6,7 +6,9 @@ module Punchblock
       end
 
       def ready!
+      end
 
+      def not_ready!
       end
     end
   end
diff --git a/lib/punchblock/connection/xmpp.rb b/lib/punchblock/connection/xmpp.rb
index <HASH>..<HASH> 100644
--- a/lib/punchblock/connection/xmpp.rb
+++ b/lib/punchblock/connection/xmpp.rb
@@ -91,14 +91,23 @@ module Punchblock
       end
 
       def ready!
-        status = Blather::Stanza::Presence::Status.new :chat
-        status.to = @rayo_domain
-        client.write status
+        send_presence :chat
+        super
+      end
+
+      def not_ready!
+        send_presence :dnd
         super
       end
 
       private
 
+      def send_presence(presence)
+        status = Blather::Stanza::Presence::Status.new presence
+        status.to = @rayo_domain
+        client.write status
+      end
+
       def handle_presence(p)
         throw :pass unless p.rayo_event?
         pb_logger.info "Receiving event for call ID #{p.call_id}"
[FEATURE] Add #not_ready!