Package-level declarations

Types

Link copied to clipboard
sealed class DetectionAction

Sealed class representing what should happen when a phishing link is detected.

Link copied to clipboard
@Serializable
data class DomainChange(val type: DomainChangeType, val domains: Set<String>)

Data class representing a Sinking Yachts domain change object.

Link copied to clipboard
@Serializable
enum DomainChangeType : Enum<DomainChangeType>

Enum representing domain change types.

Link copied to clipboard

Builder used to configure the phishing extension.

Link copied to clipboard
class PhishingApi(userAgent: String)

Implementation of the Sinking Yachts phishing domain API.

Link copied to clipboard

Phishing extension, responsible for checking for phishing domains in messages.

Link copied to clipboard
class PhishingWebsocketWrapper(userAgent: String, callback: suspend (DomainChange) -> Unit) : KordExKoinComponent

Class wrapping the Sinking Yachts phishing API websocket. Mostly for lifecycle control, since we may need to reconnect at times.

Properties

Link copied to clipboard
const val MAX_REDIRECTS: Int = 5

The maximum number of redirects to attempt to follow for a URL.

Functions

Link copied to clipboard

Add the phishing extension to the bot with the default configuration.

Add the phishing extension to the bot with a customised configuration.