fix overwrite private on_message