RTCMultiConnection Docs

RTCMultiConnection API Reference / "onFileEnd" event

  1. By default, "autoSaveToDisk" is false. It means that files saver dialog will NEVER be invoked on "onFileEnd" event.
  2. This event is fired when file is successfully sent or received.
  3. connection.onFileEnd = function (file) {
        progressHelper[file.uuid].div.innerHTML = '<a href="' + file.url + '" target="_blank" download="' + file.name + '">' + file.name + '</a>';
    };
    
    // to make sure file-saver dialog is not invoked.
    connection.autoSaveToDisk = false;
    
    var progressHelper = {};
    
    connection.onFileProgress = function (chunk, uuid) {
        var helper = progressHelper[chunk.uuid];
        helper.progress.value = chunk.currentPosition || chunk.maxChunks || helper.progress.max;
        updateLabel(helper.progress, helper.label);
    };
    
    connection.onFileStart = function (file) {
        var div = document.createElement('div');
        div.title = file.name;
        div.innerHTML = '<label>0%</label> <progress></progress>';
        document.body.appendChild(div);
        progressHelper[file.uuid] = {
            div: div,
            progress: div.querySelector('progress'),
            label: div.querySelector('label')
        };
        progressHelper[file.uuid].progress.max = file.maxChunks;
    };
    
    function updateLabel(progress, label) {
        if (progress.position == -1) return;
        var position = +progress.position.toFixed(2).split('.')[1] || 100;
        label.innerHTML = position + '%';
    }
    

Want to ask a Question?

You can include your email for private conversation!