Find out who is pretending to be offline

Overview

Dinkleberg

Find out who is pretending to be offline

logo

Preview

preview image

Disclaimer

Dinkleberg was developed for educational, private and fair use.
I am not responsible in any way for the usage of the source code.

Features

  • Rust
  • Automatically track an entire guild and its users
  • Fancy colored output
  • Find out who really goes offline or just pretends to
  • Easy to use

Building

Clone the repository using git and change to the local repository directory:

git clone https://github.com/oSumAtrIX/dinkleberg.git
cd dinkleberg

Nightly Rust is required to build this project. Install it by following rustup.rs instructions.

cargo build --release

Bot setup

The bot needs the following gateway intents to operate.

GUILD_PRESENCES

GUILD_MEMBERS

Environment variables

To use this project you will need to set the following enviroment key with your discord token as the value:

DISCORD_TOKEN

Settings

A default settings.json file will be generated when running the program at the first time.

On big servers (+999 members), it is recommended to use the official API since more rate-limiting applies to the widget endpoint. On the other hand, the official API is way less reliable and may cause more false detections, so it is recommended to use the widget as much as possible. For that, widgets must be enabled in the targets server settings under Server Settings > Widget > Enable server widget.

Set use_widget in the settings.json to false to use the discord bot API endpoint instead.

Usage/ Examples

$ dinkleberg.exe

'########::'####:'##::: ##:'##:::'##:'##:::::::'########:'########::'########:'########:::'######:::
 ##.... ##:. ##:: ###:: ##: ##::'##:: ##::::::: ##.....:: ##.... ##: ##.....:: ##.... ##:'##... ##::
 ##:::: ##:: ##:: ####: ##: ##:'##::: ##::::::: ##::::::: ##:::: ##: ##::::::: ##:::: ##: ##:::..:::
 ##:::: ##:: ##:: ## ## ##: #####:::: ##::::::: ######::: ########:: ######::: ########:: ##::'####:
 ##:::: ##:: ##:: ##. ####: ##. ##::: ##::::::: ##...:::: ##.... ##: ##...:::: ##.. ##::: ##::: ##::
 ##:::: ##:: ##:: ##:. ###: ##:. ##:: ##::::::: ##::::::: ##:::: ##: ##::::::: ##::. ##:: ##::: ##::
 ########::'####: ##::. ##: ##::. ##: ########: ########: ########:: ########: ##:::. ##:. ######:::
........:::....::..::::..::..::::..::........::........::........:::........::..:::::..:::......::::

Usage: dinkleberg.exe <guid_id>

Known issues

  • Occasional false detection of mobile clients

Authors

License

GPL3

You might also like...
Find out what takes most of the space in your executable.

cargo-bloat Find out what takes most of the space in your executable. Supports ELF (Linux, BSD), Mach-O (macOS) and PE (Windows) binaries. WASM is not

fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find
fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find

fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find. While it does not aim to support all of find's powerful functionality, it provides sensible (opinionated) defaults for a majority of use cases.

fas stand for Find all stuff and it's a go app that simplify the find command and allow you to easily search everything you nedd
fas stand for Find all stuff and it's a go app that simplify the find command and allow you to easily search everything you nedd

fas fas stands for Find all stuff and it's a rust app that simplify the find command and allow you to easily search everything you need. Note: current

An fast, offline reverse geocoder (1,000 HTTP requests per second) in Rust.

Rust Reverse Geocoder A fast reverse geocoder in Rust. Inspired by Python reverse-geocoder. Links Crate 2.0.0 Docs 1.0.1 Docs Description rrgeo takes

A Rust library containing an offline version of webster's dictionary.

webster-rs A Rust library containing an offline version of webster's dictionary. Add to Cargo.toml webster = 0.3.0 Simple example: fn main() { le

An end-to-end encrypted, anonymous IP-hiding, decentralized, audio/video/file sharing/offline messaging multi-device platform built for both communications and application security and performance.

An end-to-end encrypted, anonymous IP-hiding, decentralized, audio/video/file sharing/offline messaging multi-device platform built for both communications and application security and performance.

Offline-viewer for registry files
Offline-viewer for registry files

regview Offline-viewer for registry files Usage regview 0.1.4 Offline-viewer for registry files USAGE: regview [FLAGS] REG_FILE FLAGS:

Create tasks and save notes offline from your terminal

Create tasks and save notes offline from your terminal

A fast, offline reverse geocoder in Python
A fast, offline reverse geocoder in Python

Reverse Geocoder A Python library for offline reverse geocoding. It improves on an existing library called reverse_geocode developed by Richard Penman

A fast, offline, reverse geocoder

Rust Reverse Geocoder A fast reverse geocoder in Rust. Inspired by Python reverse-geocoder. Links Crate Changelog Latest Docs v2.0 Docs v1.0 Docs Desc

Bitcoin PSBT signer, descriptor exporter and more for offline devices.
Bitcoin PSBT signer, descriptor exporter and more for offline devices.

KeeChain Description KeeChain is a Bitcoin application to transform your offline computer in an AirGap Signing Device (aka Hardware Wallet). Getting s

Briolette is an experimental framework for researching offline digital currency designs.

Briolette - experimental framework for offline-enabled digital currency Briolette is an experimental framework for researching offline digital currenc

🐚+🦞 Ultra-portable Rust game engine suited for offline 2D games powered by WebAssembly

pagurus 🐚 + 🦞 Ultra-portable Rust game engine suited for offline 2D games powered by WebAssembly. Examples Snake Traditional snake game: examples/sn

Crates Registry is a tool for serving and publishing crates and serving rustup installation in offline networks.
Crates Registry is a tool for serving and publishing crates and serving rustup installation in offline networks.

Crates Registry Description Crates Registry is a tool for serving and publishing crates and serving rustup installation in offline networks. (like Ver

Attempt to summarize text from `stdin`, using a large language model (locally and offline), to `stdout`

summarize-cli Attempt to summarize text from stdin, using a large language model (locally and offline), to stdout. cargo build --release target/releas

An egui app for prompting a local offline LLM.

An egui app for prompting a local offline LLM. Description coze is a small egui application for prompting a local offline LLM using the Huggingface ca

The best Intermediate Rust course out there!

Ultimate Rust 2: Intermediate Concepts This is the companion repository for the Ultimate Rust 2: Intermediate Concepts (the followup to the popular Ul

Rust implementation of Another World (aka Out of this world) game engine
Rust implementation of Another World (aka Out of this world) game engine

RustyWorld Rust implementation of Another World (aka Out of this world) game engine. I wanted a fun project to challenge myself while learning Rust, a

Diana is a GraphQL system for Rust that's designed to work as simply as possible out of the box

Diana is a GraphQL system for Rust that's designed to work as simply as possible out of the box, without sacrificing configuration ability. Unlike other GraphQL systems, Diana fully supports serverless functions and automatically integrates them with a serverful subscriptions system as needed, and over an authenticated channel. GraphQL subscriptions are stateful, and so have to be run in a serverful way. Diana makes this process as simple as possible.

Comments
  • 403 Error

    403 Error

    If the bot is not in the server which one u selected then u will get this error.

    thread 'tokio-runtime-worker' panicked at 'called Result::unwrap() on an Err value: Http(UnsuccessfulRequest(ErrorResponse { status_code: 403, url: Url { scheme: "https", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("discord.com")), port: None, path: "/api/v9/guilds/558736576830767134", query: Some("with_counts=true"), fragment: None }, error: DiscordJsonError { code: 50001, message: "Missing Access", errors: [] } }))', src\handler.rs:39:70 note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

    Best Regards Frank

    bug 
    opened by Unmasked187 2
  • Fix typo

    Fix typo "Catched"

    Typo, needs to be "Caught" instead of "Catched": https://github.com/oSumAtrIX/dinkleberg/blob/47ee2aab9e48df896fbe54bd7ebb7e6d682cd612/src/handler.rs#L139 Also in the preview https://github.com/oSumAtrIX/dinkleberg#preview

    small issue 
    opened by oSumAtrIX 1
Releases(v0.4.4)
Owner
oSumAtrIX
19 yrs. old hyper-enthusiastic full time blockhead, who had the great idea to study computer science.
oSumAtrIX
Offline-viewer for registry files

regview Offline-viewer for registry files Usage regview 0.1.4 Offline-viewer for registry files USAGE: regview [FLAGS] <REG_FILE> FLAGS:

Jan Starke 8 Dec 9, 2022
Crates Registry is a tool for serving and publishing crates and serving rustup installation in offline networks.

Crates Registry Description Crates Registry is a tool for serving and publishing crates and serving rustup installation in offline networks. (like Ver

TalYRoni 5 Jul 6, 2023
The working code for my Safe Pay app - check out my tutorial!

Safe Pay Tutorial This repository contains the source code for my blog post Using PDAs and SPL Token in Anchor. The code contains the following: Solan

Daniel Pyrathon 39 Aug 28, 2022
An out-of-box ChatGPT bot for Telegram.

TeleGPT API Docs | Releases | Twitter An out-of-box ChatGPT bot for Telegram. TeleGPT is a Telegram bot based on teloxide framework and async_openai.

null 169 Apr 7, 2023
An out-of-box ChatGPT bot for Telegram.

TeleGPT API Docs | Releases | Twitter An out-of-box ChatGPT bot for Telegram. TeleGPT is a Telegram bot based on teloxide framework and async_openai.

null 173 Apr 16, 2023
The most primitive and the fastest implementation of a fixed-size last-in-first-out stack on stack in Rust, for Copy-implementing types

This is the simplest and the fastest (faster than Vec!) implementation of a last-in-first-out stack data structure, on stack, when stack elements are

Yegor Bugayenko 10 Jun 18, 2023
Explore the WWW and find the shortest path between two HTML documents

explore Find shortest path between two web resources. About I decided to create this project because some day I started to wonder: In how many clicks

Eryk Andrzejewski 1 Apr 10, 2022
Try to find the correct word with only first letter and unknown letter count

Try to find the correct word with only first letter and unknown letter count

Alexandre 6 Apr 11, 2022
Scan all IP nodes of CloudFlare to find the fastest IP node.

δΈ­ζ–‡η‰ˆ | English ?? Introduction Scan all IP nodes of CloudFlare to find the fastest IP node. ⚑️ Get Started ??️ Build git clone https://github.com/golan

golangboy 47 Mar 19, 2024
figure out who holds the nfts that came out of a candy machine.

Candy Holders This is far from finished, but can: find tokens with a given update authority find holders of those tokens Neither the Rust or Node APIs

ExiledApes 24 Dec 29, 2022