Chatto is a minimal chatbot framework in Go.
21d221b Add bot.Answer 11ebb76 Fix actions 8aca05f Ignore docs in golangci Update docs 89d9ce5 Update docs 007b7fc add additonal check for detecting if bot is in an existing conversation (#32) 22b2b4b detect commands and states from transitions (#38) e48af1f k8s environment variables, deployment and auto-reload fsm/clf (#37) f3f4364 use consistent name for bot (#34)
docker pull jaimeteb/chatto:v0.7
docker pull jaimeteb/chatto:v0.7.1
docker pull jaimeteb/chatto:latest
ff39402 Address lint issues da9896a Address lint issues e7e048e First implementation of chatto-init cmd 7037f39 Fix removeSymbolRe Add docker-test bdb073a Improve tests and address lint issues (#26) d6c86c0 Move docker-compose to utils a32b713 Remove cache mutex 1a2439d Rename naive_bayesian 94607aa Update goreleaser 9bb7ba9 Use miniredis for testing
docker pull jaimeteb/chatto:v0.6
docker pull jaimeteb/chatto:v0.6.1
docker pull jaimeteb/chatto:latest
ff49c94 Add SSL flags in extension.ServeREST (#16) 55946a7 Add token authorization option for extensions and bot endpoints (#21) 43ac704 add the concept of conversations (#15) 90618c8 add version endpoint to REST and RPC extensions - refactor (#23) 7a489c0 feat: add ability to transition from multiple states (#19)
docker pull jaimeteb/chatto:v0.6
docker pull jaimeteb/chatto:v0.6.0
docker pull jaimeteb/chatto:latest
Upgrade to Go 1.15
Add Socket Mode for the Slack channel.
Add extension
field in fsm.yml functions to indicate the extension to run.
!!! note Extension names do not need to begin with "ext_" anymore.
The message
field in fsm.yml functions can only contain a list of message objects:
message:
- text: "Single message."
message:
- text: "A list"
- text: "of simple messages"
message:
- text: "An image will be attached"
- text: "to this message"
image: https://i.imgur.com/8MU0IUT.jpeg
Extension functions must return a list of query.Answer
s, either by creating the objects or by using the query.Answers
function.
Package and function names were changed since the last version. Please refer to the extensions documentation section for the updated names.
Use runtime.Formatter
when DEBUG=true
.
Default log level to INFO. Change to DEBUG with the environment variable DEBUG
set to true
.
Include Sender in ext.Request
as Sen
.
Add regex slot mode, which saves the first Regular Expression match found.
slot:
name: answer_1
mode: regex
regex: "[0-9]+"
Add image support
Messages can be either simple strings, or objects formed by an image URL and/or text.
Example on fsm.yml:
essage:
- text: "Oh don't be sad :("
image: https://i.imgur.com/8MU0IUT.jpeg
- "Did that help?"
Example on extensions:
unc greetFunc(req *ext.Request) (res *ext.Response) {
return &ext.Response{
FSM: req.FSM,
Res: cmn.Message{
Text: "Hello Universe",
Image: "https://i.imgur.com/pPdjh6x.jpg",
},
}
Moved Message objects into separate common package
Moved Extensions into separate ext package
Added Slack channel
Add the Slack Token in the chn.yml file or set the SLACK_TOKEN
environment variable.
lack:
token: MY_SLACK_TOKEN
And set the Event Subscriptions request URL to /endpoints/slack
Refactored channels to allow for easier integration