Explore the project module structure
masterThe project is divided into several modules:
API Module
Contains all public interfaces and data classes intended for end-users.
- Events: Located in
io.github.jwdeveloper.tiktok.data.events. - Models: Data used within events is under
io.github.jwdeveloper.tiktok.data.models. - ProtocolBuffer Messages: Generated classes are in the
io.github.jwdeveloper.tiktok.messagesnamespace (found inAPI/target/classes/io/github/jwdeveloper/tiktok/messages).
Client Module
Contains the core implementation logic.
TikTokLiveClient: Manages connection and disconnection.TikTokLiveClientBuilder: Used to configure and create aTikTokLiveClient.TikTokMessageHandler: The core component that finds mappers for incoming data and triggers event mapping.TikTokMessageHandlerRegistration: Defines the mappings between ProtocolBuffer classes and Events.TikTokEventObserver: Handles event registration and triggering.
Tools & Examples
- Examples: Playground for testing new features.
- Tools: Contains
GenerateGiftsEnum(generatesGiftenum from TikTok JSON) and other utilities. - Tools-EventsCollector: Stores ProtocolBuffer and Event data in SQLite or JSON for debugging.
- Tools-EventsWebViewer: A web-based tool to display raw TikTok data.