diff --git a/aprsd/cmds/dev.py b/aprsd/cmds/dev.py index 0754b6d..dc760e8 100644 --- a/aprsd/cmds/dev.py +++ b/aprsd/cmds/dev.py @@ -101,7 +101,7 @@ def test_plugin( pm = plugin.PluginManager() if load_all: - pm.setup_plugins() + pm.setup_plugins(load_help_plugin=CONF.load_help_plugin) obj = pm._create_class(plugin_path, plugin.APRSDPluginBase) if not obj: click.echo(ctx.get_help()) diff --git a/aprsd/cmds/server.py b/aprsd/cmds/server.py index 6f66ddb..176d592 100644 --- a/aprsd/cmds/server.py +++ b/aprsd/cmds/server.py @@ -65,7 +65,7 @@ def server(ctx, flush): # log file output. LOG.info("Loading Plugin Manager and registering plugins") plugin_manager = plugin.PluginManager() - plugin_manager.setup_plugins() + plugin_manager.setup_plugins(load_help_plugin=CONF.load_help_plugin) # Dump all the config options now. CONF.log_opt_values(LOG, logging.DEBUG) diff --git a/aprsd/conf/common.py b/aprsd/conf/common.py index 256c730..19b02aa 100644 --- a/aprsd/conf/common.py +++ b/aprsd/conf/common.py @@ -136,6 +136,11 @@ aprsd_opts = [ default=True, help="Set this to False, to disable logging of packets to the log file.", ), + cfg.BoolOpt( + "load_help_plugin", + default=True, + help="Set this to False to disable the help plugin.", + ), cfg.BoolOpt( "enable_sending_ack_packets", default=True, diff --git a/aprsd/plugin.py b/aprsd/plugin.py index 9a8ae64..20d8d5e 100644 --- a/aprsd/plugin.py +++ b/aprsd/plugin.py @@ -470,7 +470,7 @@ class PluginManager: def reload_plugins(self): with self.lock: del self._pluggy_pm - self.setup_plugins() + self.setup_plugins(load_help_plugin=CONF.load_help_plugin) def setup_plugins( self, load_help_plugin=True, diff --git a/aprsd/threads/rx.py b/aprsd/threads/rx.py index c770096..b75f520 100644 --- a/aprsd/threads/rx.py +++ b/aprsd/threads/rx.py @@ -333,8 +333,15 @@ class APRSDPluginProcessPacketThread(APRSDProcessPacketThread): # If the message was for us and we didn't have a # response, then we send a usage statement. if to_call == CONF.callsign and not replied: - LOG.warning("Sending help!") - message_text = "Unknown command! Send 'help' message for help" + + # Tailor the messages accordingly + if CONF.load_help_plugin: + LOG.warning("Sending help!") + message_text = "Unknown command! Send 'help' message for help" + else: + LOG.warning("Unknown command!") + message_text = "Unknown command!" + tx.send( packets.MessagePacket( from_call=CONF.callsign,