diff --git a/opentrafficshaper/POE/Filter/HybridHTTP.pm b/opentrafficshaper/POE/Filter/HybridHTTP.pm
index cdd125959a39f879b04e6e1cc3dfb91146f990c2..4efb9b605d3838747900b0c66b4ec7db29f80adb 100644
--- a/opentrafficshaper/POE/Filter/HybridHTTP.pm
+++ b/opentrafficshaper/POE/Filter/HybridHTTP.pm
@@ -154,18 +154,22 @@ sub put
 			push(@results,$self->_build_raw_response($response));
 		}
 
-
 	# Handle WebSocket data
 	} elsif ($self->{'state'} == ST_WEBSOCKET_STREAM) {
 		# Compile our list of results
 		foreach my $response (@{$responses}) {
-			# If we don't have a websocket write state, create one
-			if (!$self->{'state_websocket_write'}) {
-				$self->{'state_websocket_write'} = new POE::Filter::HybridHTTP::WebSocketFrame();
+			# If we don't have a websocket state, create one
+			if (!$self->{'websocket_state'}) {
+				$self->{'websocket_state'} = new POE::Filter::HybridHTTP::WebSocketFrame();
 			}
-			$self->{'state_websocket_write'}->append($response);
-
-			push(@results,$self->{'state_websocket_write'}->to_bytes());
+			# Don't mask replies from server to client RFC6455 secion 5.1.
+			$self->{'websocket_state'}->masked(0);
+			# Consume the response with websockets...
+			$self->{'websocket_state'}->append($response);
+			# Spit out bytes...
+			my $payload = $self->{'websocket_state'}->to_bytes();
+
+			push(@results,$payload);
 		}
 	}
 
@@ -187,8 +191,7 @@ sub _reset
 	# Reset our filter state
 	$self->{'buffer'} = '';
 	$self->{'state'} = ST_HTTP_HEADERS;
-	$self->{'state_websocket_read'} = undef;
-	$self->{'state_websocket_write'} = undef;
+	$self->{'websocket_state'} = undef;
 	$self->{'last_request'} = $self->{'request'};
 	$self->{'request'} = undef; # We want the last request always
 	$self->{'content_len'} = 0;
@@ -400,16 +403,16 @@ sub _get_one_websocket_record
 
 
 	# If we don't have a websocket state, create one
-	if (!$self->{'state_websocket_read'}) {
-		$self->{'state_websocket_read'} = new POE::Filter::HybridHTTP::WebSocketFrame();
+	if (!$self->{'websocket_state'}) {
+		$self->{'websocket_state'} = new POE::Filter::HybridHTTP::WebSocketFrame();
 	}
-	$self->{'state_websocket_read'}->append($self->{'buffer'});
+	$self->{'websocket_state'}->append($self->{'buffer'});
 	# Blank our buffer
 	$self->{'buffer'} = '';
 
 	# Loop with records and push onto result set
 	my @results;
-	while (my $item = $self->{'state_websocket_read'}->next()) {
+	while (my $item = $self->{'websocket_state'}->next()) {
 		push(@results,$item);
 	}