mirror of
https://github.com/Colorado-Mesh/meshcore-bot-firmware.git
synced 2026-08-12 00:30:29 +00:00
forge: allow prefixless firmware bot dms
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: cj-vana <cj@depth23.online>
|
||||
Date: Fri, 15 May 2026 11:44:21 -0600
|
||||
Subject: [PATCH 1/2] Add companion radio firmware bot command parity
|
||||
Subject: [PATCH 1/3] Add companion radio firmware bot command parity
|
||||
|
||||
---
|
||||
.../companion_radio/BotCommandRegistry.cpp | 121 ++
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: cj-vana <cj@depth23.online>
|
||||
Date: Fri, 15 May 2026 19:58:42 -0600
|
||||
Subject: [PATCH 2/2] Harden firmware bot response coordination
|
||||
Subject: [PATCH 2/3] Harden firmware bot response coordination
|
||||
|
||||
---
|
||||
examples/companion_radio/BotCommands.cpp | 2 +-
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: cj-vana <cj@depth23.online>
|
||||
Date: Fri, 15 May 2026 20:09:58 -0600
|
||||
Subject: [PATCH 3/3] Allow prefixless firmware bot DMs
|
||||
|
||||
---
|
||||
examples/companion_radio/BotPolicy.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/examples/companion_radio/BotPolicy.cpp b/examples/companion_radio/BotPolicy.cpp
|
||||
index 33de45f8..7d0e6029 100644
|
||||
--- a/examples/companion_radio/BotPolicy.cpp
|
||||
+++ b/examples/companion_radio/BotPolicy.cpp
|
||||
@@ -75,7 +75,7 @@ bool isEmergency(BotChannelKind kind) {
|
||||
}
|
||||
|
||||
bool isPrefixlessCommandAllowed(BotChannelKind kind) {
|
||||
- return kind == BOT_CHANNEL_BOT || kind == BOT_CHANNEL_TESTING;
|
||||
+ return kind == BOT_CHANNEL_DM || kind == BOT_CHANNEL_BOT || kind == BOT_CHANNEL_TESTING;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -57,6 +57,7 @@ static void test_channel_policy() {
|
||||
assert(BotPolicy::classifyChannel(NULL, 0, true) == BOT_CHANNEL_DM);
|
||||
assert(BotPolicy::decide(BOT_CHANNEL_DM) == BOT_POLICY_ALLOW_NORMAL);
|
||||
assert(BotPolicy::isNormalAllowed(BOT_CHANNEL_DM));
|
||||
assert(BotPolicy::isPrefixlessCommandAllowed(BOT_CHANNEL_DM));
|
||||
assert(BotPolicy::classifyChannel("Public", 6, false) == BOT_CHANNEL_PUBLIC);
|
||||
assert(BotPolicy::classifyChannel("public", 6, false) == BOT_CHANNEL_OTHER);
|
||||
assert(BotPolicy::classifyChannel("#Public", 7, false) == BOT_CHANNEL_OTHER);
|
||||
@@ -81,7 +82,6 @@ static void test_channel_policy() {
|
||||
assert(BotPolicy::classifyChannel("#botnet", 7, false) == BOT_CHANNEL_OTHER);
|
||||
assert(BotPolicy::decide(BOT_CHANNEL_OTHER) == BOT_POLICY_IGNORE);
|
||||
assert(!BotPolicy::isPrefixlessCommandAllowed(BOT_CHANNEL_OTHER));
|
||||
assert(!BotPolicy::isPrefixlessCommandAllowed(BOT_CHANNEL_DM));
|
||||
}
|
||||
|
||||
static void test_bot_prefs_defaults() {
|
||||
@@ -327,7 +327,8 @@ static void test_parse_command() {
|
||||
assert(command.id == BOT_COMMAND_PING);
|
||||
assert(parse_channel_command(BOT_CHANNEL_TESTING, "ping", &command));
|
||||
assert(command.id == BOT_COMMAND_PING);
|
||||
assert(!parse_channel_command(BOT_CHANNEL_DM, "ping", &command));
|
||||
assert(parse_channel_command(BOT_CHANNEL_DM, "ping", &command));
|
||||
assert(command.id == BOT_COMMAND_PING);
|
||||
assert(!parse_channel_command(BOT_CHANNEL_PUBLIC, "ping", &command));
|
||||
assert(!parse_channel_command(BOT_CHANNEL_OTHER, "ping", &command));
|
||||
assert(!parse_channel_command(BOT_CHANNEL_EMERGENCY, "ping", &command));
|
||||
@@ -336,7 +337,9 @@ static void test_parse_command() {
|
||||
assert(FirmwareBot::parseCommand("status please", 13, &command, true));
|
||||
assert(command.id == BOT_COMMAND_STATUS);
|
||||
assert(strcmp(command.args, "please") == 0);
|
||||
assert(!parse_channel_command(BOT_CHANNEL_DM, "status please", &command));
|
||||
assert(parse_channel_command(BOT_CHANNEL_DM, "status please", &command));
|
||||
assert(command.id == BOT_COMMAND_STATUS);
|
||||
assert(strcmp(command.args, "please") == 0);
|
||||
assert(!parse_channel_command(BOT_CHANNEL_PUBLIC, "status please", &command));
|
||||
assert(!parse_channel_command(BOT_CHANNEL_BOT, "random prose", &command));
|
||||
assert(!FirmwareBot::parseCommand("random prose", 12, &command, true));
|
||||
|
||||
2
vendor/MeshCore
vendored
2
vendor/MeshCore
vendored
Submodule vendor/MeshCore updated: b9ce1fd38e...1c7349f91a
Reference in New Issue
Block a user