I wouldn’t be surprised if someone has already done this, but I came up with this after seeing so many bots trying to troll me unsuccessfully.
- Make a chat bot
- Take a whole bunch of chat histories (parse them with regex magic and put them in a db?)
- Use the first line of a random conversation as a conversation starter for your bot
- Every time the user says anything, find the closest match in the conversation histories and use the response given there; if there is nothing even close, use a random line
- Eventually provide the user with a link to your site
- Check if the user clicked on the link and optionally how long he stayed on your site
- Save each successful conversation as a new conversation and discard each failure to persuade the user to click on the link; optionally increase the weight of the lines used in proportion to how long the user stayed on the site
- The better responses will start being used more often
- ???
- Profit!