mirror of
https://github.com/meshtastic/firmware.git
synced 2026-02-06 09:01:57 +00:00
* Implement Meshtastic reply bot module with ping and status features Adds a reply bot module that listens for /ping, /hello, and /test commands received via direct messages or broadcasts on the primary channel. The module always replies via direct message to the sender only, reporting hop count, RSSI, and SNR. Per-sender cooldowns are enforced to reduce network spam, and the module can be excluded at build time via a compile flag. Updates include the new module source files and required build configuration changes. * Update ReplyBotModule.cpp Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/modules/ReplyBotModule.h Match the existing MESHTASTIC_EXCLUDE_* guard pattern so the module is excluded by default. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/modules/ReplyBotModule.cpp Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Tidying up --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
18 lines
536 B
C++
18 lines
536 B
C++
#pragma once
|
|
#if !MESHTASTIC_EXCLUDE_REPLYBOT
|
|
#include "SinglePortModule.h"
|
|
#include "mesh/generated/meshtastic/mesh.pb.h"
|
|
|
|
class ReplyBotModule : public SinglePortModule
|
|
{
|
|
public:
|
|
ReplyBotModule();
|
|
void setup() override;
|
|
bool wantPacket(const meshtastic_MeshPacket *p) override;
|
|
ProcessMessage handleReceived(const meshtastic_MeshPacket &mp) override;
|
|
|
|
protected:
|
|
bool isCommand(const char *msg) const;
|
|
void sendDm(const meshtastic_MeshPacket &rx, const char *text);
|
|
};
|
|
#endif // MESHTASTIC_EXCLUDE_REPLYBOT
|