poshbotio / PoshBot

Powershell-based bot framework
MIT License
539 stars 108 forks source link

Command aliases cannot begin with any characters in alternate command prefix #126

Closed TomWoodling closed 6 years ago

TomWoodling commented 6 years ago

When I try to set an alias for a command that begins with any of the characters that are in an alternate command prefix, they are not recognized. Eg, if a bot is named 'testing' I will get the following: ! test - command is executed as expected testing test - No command found matching [] ! setschedule - CommandRequirementsNotMet: Mandatory parameters for [Set-ScheduledCommand] not provided. testing setschedule - No command found matching [chedule] I get this error when following the quickstart guide using 0.11.2, I hadn't noticed it before now.

devblackops commented 6 years ago

Thanks @TomWoodling. I'll look into it. Was this working on previous versions?

TomWoodling commented 6 years ago

@devblackops I've been doing more testing, and I think I know why I have this issue (and tbh I'd be very surprised if it affects anyone else)! I add the alternate prefix in lower and title case - to work round the case-sensitivity which is inconvenient for users on mobile phones - and that causes the matching characters to not be recognized. This is why 'bender' and 'hal' are fine as alternates, but 'testing' and 'Testing' are not. So the workaround is to tell my mobile phone users to pay more attention, and remove the title case prefix. I've tested after doing that and everything works as expected, so while this might just pass muster as a bug, I'm sorry it turned out to be so minor (and kind of my fault anyway - I thought I'd been really thorough in my testing)!

devblackops commented 6 years ago

@TomWoodling Alternate command prefixes should not be case sensitive (if that is the case, there is a bug somewhere).

You should be call the bot using testing or Testing using just testing as an alternate command prefix.

TomWoodling commented 6 years ago

@devblackops yes, it's working exactly as you say with the case insensitivity, so I've no idea how I managed to break that either! I first used the two prefix method in 0.10.0, but - if it ever was - it's definitely not needed any more. Thanks for the help, and again, sorry that this was actually all a bit of a misunderstanding on my part.

devblackops commented 6 years ago

No worries!