diff --git a/stomp/transport.py b/stomp/transport.py
index <HASH>..<HASH> 100644
--- a/stomp/transport.py
+++ b/stomp/transport.py
@@ -242,9 +242,10 @@ class BaseTransport(stomp.listener.Publisher):
         for listener in self.listeners.values():
             if not listener:
                 continue
-            if not hasattr(listener, 'on_send'):
+            try:
+                listener.on_send(frame)
+            except AttributeError:
                 continue
-            listener.on_send(frame)
 
         lines = utils.convert_frame_to_lines(frame)
Just invoke listener.on_send, don't bother checking existence