@@ 1,4 1,60 @@
A non-learning chat bot which consists of a backend written in like
200 lines of C. Not in active development.
200 lines of C.
$ make # build
$ make install # install
$ # after building, run the example bot configuration
$ ./jules scripts/texting.jul
$ # if you installed it, you can execute the example file itself:
## Custom Bot Configurations
There are four sections in a configuration file. These are "NAME", "START", "PATTERN", and "DEFAULT".
These are terminated by the beginning of the next section or by the end of file.
The `NAME` section gives the bot a name. Whenever the bot responds, the value of NAME will be shown in
the prefix of its response. For example, a bot named "Alice" would respond in this format:
Alice: this is my message
The syntax for this section is simple.
The `START` section describes the initial message the bot will send when started. You could say it is their
greeting. The syntax is the same as NAME.
The `PATTERN` section dictates which response will be given based on a regular expression. These are POSIX extended
regular expressions, which can be referenced in the regex(7) manual page. Each line represents a pattern and the
comma separated response(s) that should be given (if there are multiple one will be chosen at random). For example:
^(hi|hello).*:hey # single response
^(how are you|how's it going).*:good,ok,bad # multiple possible responses
The `DEFAULT` section provides responses that will be given if a pattern is not found. The syntax is similar to `PATTERN`,
except that each whole line is a possible response which will be chosen at random. For example:
i don't understand
what do you mean?
i'm not sure what that means