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.

ackcord-data

libraryDependencies += "net.katsstuff" %%% "ackcord-data" % "0.11.0"

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-network

libraryDependencies += "net.katsstuff" %% "ackcord-network" % "0.11.0"

The base network module of AckCord. You probably don’t want to depend on this alone unless you’re adding new requests to AckCord.

ackcord-rest

libraryDependencies += "net.katsstuff" %% "ackcord-rest" % "0.11.0"

Contains all the rest requests in AckCord.

ackcord-image

libraryDependencies += "net.katsstuff" %% "ackcord-image" % "0.11.0"

Contains all the image requests in AckCord. Here for completion sake, although if you only depend on this you should probably find a more light weight solution.

ackcord-oauth

libraryDependencies += "net.katsstuff" %% "ackcord-oatuh" % "0.11.0"

Contains the building blocks for making an OAuth application using AckCord.

ackcord-websockets

libraryDependencies += "net.katsstuff" %% "ackcord-websockets" % "0.11.0"

The base websockets module of AckCord. It makes even less sense to depend on this alone than the network module.

ackcord-gateway

libraryDependencies += "net.katsstuff" %% "ackcord-gateway" % "0.11.0" //The gateway module of AckCord

Contains the code for the AckCord gateway implementation. Depend on this if you want to build custom logic from the gateway and on. You might want to consider ackcord-util instead though.

ackcord-voice

libraryDependencies += "net.katsstuff" %% "ackcord-voice" % "0.11.0"

Contains all the code for the voice stuff in AckCord.

ackcord-util

libraryDependencies += "net.katsstuff" %% "ackcord-util" % "0.11.0"

Misc utilities for AckCord that does not rely on the memory cache snapshot. If you want to build from the gateway and on, or want a custom cache implementation, this is probably what you want to depend on.

ackcord-commands

libraryDependencies += "net.katsstuff" %% "ackcord-commands" % "0.11.0"

The base commands API module. Does not work without an implementation.

ackcord-lavaplayuer

libraryDependencies += "net.katsstuff" %% "ackcord-lavaplayer" % "0.11.0"

AckCord provides a module to use Lavaplayer to send audio to Discord. Does not work without an implementation.

ackcord-core

libraryDependencies += "net.katsstuff" %% "ackcord-core" % "0.11.0"

The low level API module of AckCord. Provides the in memory cache.

ackcord-commands-core

libraryDependencies += "net.katsstuff" %% "ackcord-commands-core" % "0.11.0"

Provides an implementation for the commands module using core.

ackcord-lavaplayer-core

libraryDependencies += "net.katsstuff" %% "ackcord-lavaplayer-core" % "0.11.0"

Provides an implementation for the lavaplayer module using 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.11.0"

The high level API, includes all the other modules.