ts3_remote_ham/providers/flrig.js
2024-09-12 02:00:26 +02:00

22 lines
609 B
JavaScript

import { XmlRpcClient } from "@foxglove/xmlrpc";
export default function flrig(opts) {
const client = new XmlRpcClient(opts.flrig.url);
const setPtt = async (state) => {
try {
await client.methodCall('rig.set_ptt', [state]);
} catch (ex) {
console.error(`Cannot send rig.set_ptt(${state}) to flrig (${opts.flrig.url}) -- perhaps it's not running? ${ex.code ?? 'unknown'} at ${ex.erroredSysCall ?? '?'}`);
}
}
return {
pttDown: () => {
setPtt(1);
},
pttUp: () => {
setPtt(0);
}
};
};