@@ -26,6 +26,7 @@ type Text struct {
2626 Text string `json:"text"`
2727}
2828
29+ // return cmd name by prefix
2930func (t Text ) Cmd (prefix string ) (string , error ) {
3031 trimmed := strings .TrimSpace (t .Text )
3132 if ! strings .HasPrefix (trimmed , prefix ) {
@@ -38,6 +39,7 @@ func (t Text) Cmd(prefix string) (string, error) {
3839 return parts [0 ], nil
3940}
4041
42+ // return cmd index value by prefix
4143func (t Text ) CmdIndex (prefix string , index int ) (string , error ) {
4244 if _ , err := t .Cmd (prefix ); err != nil {
4345 return "" , err
@@ -50,10 +52,11 @@ func (t Text) CmdIndex(prefix string, index int) (string, error) {
5052 return parts [index + 1 ], nil
5153}
5254
53- func (t Text ) CmdKey (key string ) (string , error ) {
55+ // return cmd value by key
56+ func (t Text ) CmdValue (key string ) (value string , err error ) {
5457 trimmed := strings .TrimSpace (t .Text )
5558 parts := strings .Fields (trimmed )
56- if len (parts ) < 3 {
59+ if len (parts ) <= 2 {
5760 return "" , errors .New ("not enough parts" )
5861 }
5962 for i := 1 ; i + 1 < len (parts ); i = i + 2 {
0 commit comments