36 lines
909 B
JavaScript
36 lines
909 B
JavaScript
/*
|
|
*
|
|
* OOB Plugin
|
|
* enables '##send { "command", [ args ], { kwargs } }' as a way to inject OOB instructions
|
|
*
|
|
*/
|
|
let oob_plugin = (function () {
|
|
|
|
//
|
|
// Check outgoing text for handtyped/injected JSON OOB instruction
|
|
var onSend = function (line) {
|
|
if (line.length > 7 && line.substr(0, 7) == "##send ") {
|
|
// send a specific oob instruction ["cmdname",[args],{kwargs}]
|
|
line = line.slice(7);
|
|
var cmdarr = JSON.parse(line);
|
|
var cmdname = cmdarr[0];
|
|
var args = cmdarr[1];
|
|
var kwargs = cmdarr[2];
|
|
log(cmdname, args, kwargs);
|
|
return (cmdname, args, kwargs);
|
|
}
|
|
}
|
|
|
|
//
|
|
// init function
|
|
var init = function () {
|
|
console.log('OOB Plugin Initialized.');
|
|
}
|
|
|
|
return {
|
|
init: init,
|
|
onSend: onSend,
|
|
}
|
|
})()
|
|
plugin_handler.add('oob', oob_plugin);
|