def __init__(self, room, files, data={}, progress_callback=None, finished_callback=None, error_callback=None):
Thread.__init__(self)<EOL>self._connection_settings = room.get_campfire().get_connection().get_settings()<EOL>self._room = room<EOL>self._files = files<EOL>self._data = data<EOL>self._progress_callback = progress_callback<EOL>self._finished_callback = finished_callback<EOL>self._error_callback = error_callback<EOL>self._abort = False<EOL>self._uploading = False<EOL>
Initialize.

        Args:
            room (:class:`Room`): Room where we are uploading
            files (dict): A dictionary, where key is the field name, and value is the file path

        Kwargs:
            data (dict): Additional data to post
            progress_callback (func): Callback to call as file is uploaded (parameters: current, total)
            finished_callback (func): Callback to call when upload is finished
            error_callback (func): Callback to call when an error occurred (parameters: exception)