]> Humopery - private/memberbot.git/commitdiff
Command starts with ! not /
authorErik Mackdanz <erikmack@gmail.com>
Mon, 23 Feb 2026 04:23:25 +0000 (22:23 -0600)
committerErik Mackdanz <erikmack@gmail.com>
Mon, 23 Feb 2026 04:23:25 +0000 (22:23 -0600)
README.md
src/bot.rs

index 0c42b43bd3d6696d989ad50db46761519c6a7f86..328f0fd837a1cb0bef27af6d3fd6faea45c14fb6 100644 (file)
--- a/README.md
+++ b/README.md
@@ -66,16 +66,16 @@ DATABASE_URL=sqlite:memberbot.db
 
 3. Available commands (admin only):
 
-   - `/help` - Show help message
-   - `/upsert <tsv_data>` - Upsert members from TSV data
-   - `/list` - List all members
-   - `/setadmin <member_id>` - Set a member as admin
-   - `/removeadmin <member_id>` - Remove admin status from a member
-   - `/verify <device_id>` - Verify a device for E2E encryption
+   - `!help` - Show help message
+   - `!upsert <tsv_data>` - Upsert members from TSV data
+   - `!list` - List all members
+   - `!setadmin <member_id>` - Set a member as admin
+   - `!removeadmin <member_id>` - Remove admin status from a member
+   - `!verify <device_id>` - Verify a device for E2E encryption
 
-### TSV Format for `/upsert`
+### TSV Format for `!upsert`
 
-The `/upsert` command accepts tab-separated values (TSV) in the format:
+The `!upsert` command accepts tab-separated values (TSV) in the format:
 
 ```
 member_id      email   matrix_user (optional)
index 8e4cc15445e8cc66903e6559edc29386daf5833d..dc478a0c55deab8d7beecb59ffbdceb9f1c400b5 100644 (file)
@@ -308,7 +308,7 @@ async fn handle_message(
     let message = text_content.body.trim();
     
     // Check if message is a command
-    if !message.starts_with('/') {
+    if !message.starts_with('!') {
         return Ok(());
     }
 
@@ -325,36 +325,36 @@ async fn handle_message(
 
     // Handle commands
     match command {
-        "/help" => {
+        "!help" => {
             let help_text = r#"Available commands:
-/help - Show this help message
-/upsert <tsv_data> - Upsert members from TSV data
-/list - List all members
-/setadmin <member_id> - Set a member as admin
-/removeadmin <member_id> - Remove admin status from a member
-/verify <device_id> - Verify a device for E2E encryption
+!help - Show this help message
+!upsert <tsv_data> - Upsert members from TSV data
+!list - List all members
+!setadmin <member_id> - Set a member as admin
+!removeadmin <member_id> - Remove admin status from a member
+!verify <device_id> - Verify a device for E2E encryption
 "#;
             if let Err(e) = send_reply(&room, help_text).await {
                 error!("Failed to send help reply: {}", e);
             }
         }
-        "/upsert" => {
+        "!upsert" => {
             handle_upsert_command(&room, args, &sender, db).await?;
         }
-        "/list" => {
+        "!list" => {
             handle_list_command(&room, &sender, db).await?;
         }
-        "/setadmin" => {
+        "!setadmin" => {
             handle_setadmin_command(&room, args, &sender, db, true).await?;
         }
-        "/removeadmin" => {
+        "!removeadmin" => {
             handle_setadmin_command(&room, args, &sender, db, false).await?;
         }
-        "/verify" => {
+        "!verify" => {
             handle_verify_command(&room, args, &sender, db).await?;
         }
         _ => {
-            let reply = format!("Unknown command: {}. Type /help for available commands.", command);
+            let reply = format!("Unknown command: {}. Type !help for available commands.", command);
             if let Err(e) = send_reply(&room, &reply).await {
                 error!("Failed to send unknown command reply: {}", e);
             }
@@ -714,4 +714,4 @@ async fn handle_sas_verification(_client: Client, sas: SasVerification) {
             }
         }
     }
-}
\ No newline at end of file
+}