The many modules of AckCord
While the modules listed at the start are the main modules you want to depend on, AckCord has many more if you feel that you don’t need the full package.
Here is a map of all the modules, and how they depend on each other
+----> voice ------> lavaplayer-core -+
| ^ |
| | v
data +----> gateway --> core ----+----> ackcord
| ^ ^
| | |
+----> requests ----+-> commands -----+
Make sure to add the following line to your SBT file if you’re using Lavaplayer:
resolvers += Resolver.JCenterRepository
ackcord-data
libraryDependencies += "net.katsstuff" %%% "ackcord-data" % "0.18.1"
Provides access to all the data objects, encoders and decoders used by AckCord. This module is also crosscompiled for Scala.Js. Wonderful if you want to build a web panel for your bot in Scala, and don’t want to redefine all the data objects.
ackcord-requests
libraryDependencies += "net.katsstuff" %% "ackcord-requests" % "0.18.1"
Contains all the requests in AckCord.
ackcord-gateway
libraryDependencies += "net.katsstuff" %% "ackcord-gateway" % "0.18.1"
Contains the code for the AckCord gateway implementation. Depend on this if you want to build custom logic from the gateway and on.
ackcord-voice
libraryDependencies += "net.katsstuff" %% "ackcord-voice" % "0.18.1"
Contains all the code for the voice stuff in AckCord.
ackcord-commands
libraryDependencies += "net.katsstuff" %% "ackcord-commands" % "0.18.1"
The commands API module.
ackcord-core
libraryDependencies += "net.katsstuff" %% "ackcord-core" % "0.18.1"
The low level API module of AckCord. Provides the in memory cache.
ackcord-lavaplayer-core
libraryDependencies += "net.katsstuff" %% "ackcord-lavaplayer-core" % "0.18.1"
Provides an implementation to the the voice module using lavaplayer and core.
To use, first create an instance of the LavaplayerHandler
actor. This actor
should be shared for an entire guild. Check the objects in the companion object
of LavaplayerHandler
for the valid messages you can send it.
ackcord
libraryDependencies += "net.katsstuff" %% "ackcord" % "0.18.1"
The high level API, includes all the other modules.