websocket_data callback now obeys return value