Discord Bot

Interact with Discord servers to facilitate a conversation.

CommandsDescription
!listauthorsList AMI Authors
!addauthorAdd Author
!delauthorDelete Author
!amihealthLiveness check evaluating AMI API
!testWoodcord Bot liveness check

Store Conversation

Given the Woodcord Bot, when a Discord Message Event is recieved, then store the conversation using the AMI API.

sequenceDiagram participant D as Discord participant W as Woodcord participant AMI as AMI API D ->> W: Message Event W ->> AMI: Store Message Data AMI ->> W: Reply with Message ID

Get AMI response

Given the Woodcord Bot with AMI Message ID, when responding to Discord Message Event, then get the AMI Instant Reply

sequenceDiagram participant D as Discord participant W as Woodcord participant AMI as AMI API W ->> AMI: Get Reply by Message ID AMI ->> W: AMI Instant Reply W ->> D: Reply to Message Event

Store Feedback

Given the Woodcord Bot, when a Discord Emoji Event with is recieved, then store conversation feedback using the AMI API

sequenceDiagram participant D as Discord participant W as Woodcord participant AMI as AMI API D ->> W: Message Feedback Event W ->> AMI: Store Feedback by Message ID

Development

Discord Library

LibraryLanguageNotes
Discord4JJavaToo much Java, not enough Kotlin
DiscordKtKotlinToo small of a project, lacking documentation
DiskordKotlinPoor exception handling.
SerenityRustCurrent implementation