JN-Jones / MyBot

A simple Bot for MyBB
http://jonesboard.de
9 stars 5 forks source link

Additonal groups, string variable, once switch #3

Closed nomadcz closed 11 years ago

nomadcz commented 11 years ago

Hi. I really like this plugin :)

There is possibility to trigger action based on usergroup. It seems to me that it works with primary groups only. Could you please support additional as well ? And one more thing - there are variables I can use in texts (like {boardname}) is there a variable that holds string that triggered action in case of "string rule" ? For example: I am checking for word: "Jack" and MyBot would reply "Did you call Jack ?" -> so "Jack" would be in some variable I can use in reply. And maybe there could be some switch "Once only" so MyBot would react only once per user. For example -> in rule is "Once only = yes". Nick user says Jack -> MyBot replies (rule disable itself for this user). Nick user say Jack again -> nothing happens. User nick2 says Jack -> MyBot replies. User2 say Jack again -> nothing happens etc. Of course if I edit rule this setting would reset itself -> so everyone sees edited actions.

I would be happy to send $15 via Paypal to have this features - if it would help.

Thank you very much. Best regards,

Michal

JN-Jones commented 11 years ago

There is possibility to trigger action based on usergroup. It seems to me that it works with primary groups only. Could you please support additional as well ?

At the moment the display group is used. But I'll change it in the next version ;)

And one more thing - there are variables I can use in texts (like {boardname}) is there a variable that holds string that triggered action in case of "string rule" ? For example: I am checking for word: "Jack" and MyBot would reply "Did you call Jack ?" -> so "Jack" would be in some variable I can use in reply.

You mean something like {foundstring}? Where every String which is found is saved? I can look into it but there would be problems when more than one string is found in the post.

And maybe there could be some switch "Once only" so MyBot would react only once per user. For example -> in rule is "Once only = yes". Nick user says Jack -> MyBot replies (rule disable itself for this user). Nick user say Jack again -> nothing happens. User nick2 says Jack -> MyBot replies. User2 say Jack again -> nothing happens etc. Of course if I edit rule this setting would reset itself -> so everyone sees edited actions.

That would require changes in the database, something I wanted to prevent in MyBot (all rules would be deleted). But I'll look whether I can do something without database changes.

nomadcz commented 11 years ago

<< At the moment the display group is used. But I'll change it in the next version ;) Lovely ;)

<< You mean something like {foundstring}? Where every String which is found is saved? Yes - like {foundstring} , exactly.

<< I can look into it but there would be problems when more than one string is found in the post. Not sure how it works internally :/ To explain what I wanted it for:

I want to have rule PICTURES (string rule) there would be trigger strings one per line like: flower sun

and bot reply would be: [img]http://someurl/{foundstring}.jpg[/img]

that would be really cool ;) I could do something similar in MyCode (I think) but here I can limit it to groups/forums etc.

<< That would require changes in the database, something I wanted to prevent in MyBot (all rules would be deleted). But I'll look whether I can do something without database changes. It was just an idea - feel free to ignore it if it means too much trouble for too litlle gain

JN-Jones commented 11 years ago

Not sure how it works internally :/ To explain what I wanted it for:

I want to have rule PICTURES (string rule) there would be trigger strings one per line like: flower sun

and bot reply would be: [img]http://someurl/{foundstring}.jpg[/img]

that would be really cool ;) I could do something similar in MyCode (I think) but here I can limit it to groups/forums etc.

But what happens if a user write the following:

While the sun is shining, the flower bloom.

Then the Bot reacts because he found sun and flower. But what replaces {foundstring}? sun or flower? The easiest would be to use the first found (here sun) but I'm really sure that other users want to have another choice.

nomadcz commented 11 years ago

Not really sure ;)

<< While the sun is shining, the flower bloom.

then it could either create two responses - one for sun , one for flower or it could automatically merge those two responses to one post ? and then there would have to be switch whether I actually want multiple responses - someone would want to react to first word only and then stop further processing

Maybe it's a stupid idea entirely ;) Sorry about that.

JN-Jones commented 11 years ago

I added the check of additional Groups and the {foundstring} variable