private-parlor-xt
Version, currently 1.2.49 versions
github.com/Private-Parlor/Private-Parlor-XT
A featureful Telegram bot for making anonymous group chats
6 stars
0 dependents
License: LGPL-3.0-or-later
Installation
# Add this to your shard.yml
dependencies:
private-parlor-xt:
github: Private-Parlor/Private-Parlor-XT
version: ~> 1.2.4Then run:
shards installshard.yml
- Crystal
1.12.2- License
- LGPL-3.0-or-later
- Author
- Charybdis
- Target
private-parlor-xtfrom src/private_parlor_xt.cr
Dependencies
Runtime Dependencies
- tasker*github: spider-gazelle/tasker, branch: master
- sqlite3*github: crystal-lang/crystal-sqlite3
- tourmaline*github: Charibdys/tourmaline, branch: none-parsemode
Development Dependencies
- ameba~> 1.5.0github: crystal-ameba/amebadev
README
# Private Parlor XT     A featureful Telegram bot to make an anonymous, private group chat on Telegram. Inspired by [secretlounge-ng](https://github.com/secretlounge/secretlounge-ng) Using the [Tourmaline](https://github.com/protoncr/tourmaline) Telegram bot library. ## Notable Features - Anonymously relay text, photos, albums, polls, videos and more to other people using the bot. - Restrict new users from sending media by configuring the media limit period. - Define new ranks via the configuration file with permissions to use various commands and media. - Make tripcodes harder to crack by adding a salt to the config file. - Add a spoiler to media before they're sent; or add a spoiler after the fact using the `/spoiler` command. - Pin and unpin messages to the chat. - Privately reveal your username to another user. - Print log messages to a Telegram channel - Kick users that have been inactive for a configurable period of time. - Send forwarded messages as photos, videos, animations, etc. to prevent rate limiting. - Have users automatically send every message with a tripcode using pseudonymous mode. - Store message history in the database to reduce RAM usage. - Localization in English, German, and Klingon. - Persist message history longer or less than 24 hours. - Prevent new users from joining by closing registration via the config file. - Upvote and Downvote messages. - Register commands with BotFather using the config file. - Enable or disable commands and relaying of certain types of messages using the config file. - Give users a level based on how much karma they have; user's can sign messages with their level using the `/ksign` command. - Reduce noise and enforce original messages using the Robot 9000 auto moderator. - *[And more!](https://github.com/Private-Parlor/Private-Parlor-XT/wiki/Features)* ## Installation Compiling PrivateParlor XT requires having both `crystal` and `shards` installed. ~~~ git clone https://github.com/Private-Parlor/Private-Parlor-XT.git cd private-parlor-xt shards install shards build --release ~~~ Alternatively, you can download the precompiled binaries from [Releases](https://github.com/Private-Parlor/Private-Parlor-XT/releases) ## BotFather Setup 1. Start a conversation with [BotFather](https://t.me/botfather) 2. Make a new bot with `/newbot` and answer the prompts 3. `/setprivacy`: enabled 4. `/setjoingroups`: disabled ## Usage 1. Rename `config.yaml.copy` to `config.yaml` 2. Edit config file - The config file should at least contain the API Token received from Botfather and a path to a SQLite database - Unless the database already exists, Private Parlor XT will create a new SQLite database at the given path 3. Run the `private-parlor-xt` binary ## Development Development instructions are as follows: - Ensure code conforms to the [Crystal API coding style](https://crystal-lang.org/reference/1.9/conventions/coding_style.html) - Explicitly define return types and types for variables and parameters - Document your code - Write some specs for your code - Lint using Ameba; remove as many warnings as possible ## Contributing 1. Fork it (<https://github.com/Private-Parlor/private-parlor-xt/fork>) 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create a new Pull Request ## Contributors - [Charybdis](https://github.com/Charibdys) - creator and maintainer
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This release
- Version
1.2.4- Tagged
- Jan 5, 2025
- Commit
9f3bd65eb3a0- Crystal
1.12.2- Indexed
- yes
Dependents
No indexed shard depends on this one yet.
Repository
github.com/Private-Parlor/Private-Parlor-XT
Metadata
- Created
- Aug 12, 2026
- Updated
- Aug 13, 2026
- Synced
- Aug 13, 2026
- Versions
- 9