Introduction
English | 简体中文
🔍 Enhance Telegram Group/Channel Search In 5 Minutes 🚀
DEMO (Join E5SubBot Group in advance)
Features
- Minimal configuration & single file one-click launch
- Component-based scalable design & multiple storage engine options
- Cross-platform support macOS/Windows/Linux
- Chinese optimization of search engine
- Large number of historical messages to import
- Customizable i18n message templates
- ......
Deployment
- Prepare
Telegram Bot
- Get
Bot Token
: How to create a Bot
- Disable
Group Privacy
: send /setprivacy
to @BotFather
- Get
Telegram User ID
: @userinfobot
- Prepare
searchx
- Download
searchx
: go to GitHub Releases and uncompress it.
- Change
YOUR_BOT_TOKEN
YOUR_ADMIN_ID
in config/config.min.yaml
to Bot Token
Telegram User ID
- Start:
./searchx run -c config/config.min.yaml
- Invite
Bot
to groups/channels
Customization
For the vast majority of users, the default minimal configuration is sufficient.
If you have more customization needs, please refer to config.full.yaml and its comments.
Command
version
View version information
./searchx version
Version: 0.0.0
Commit: 5cae8dc
Date: 2022-07-30T07:58:05Z
go1.17.3 windows/amd64
run
Start Bot
# start with the minimal config
./searchx run -c config/config.min.yaml
source
Bot only indexes messages during the join period, use this command if you want to index history messages.
Support groups/channels, support very large JSON
file.
Use official client to export history messages. Export options: Uncheck all, format as JSON
.
-f
: exported history messages in JSON
file
-d
: search engine driver
-o
: search engine options
# Using bleve to import messages
./searchx source -f YOUR_PATH/result.json -d bleve -o path="index" -o dict="config/dict.txt"
query
Command line query
-d
: search engine driver
-o
: search engine options
-q
: keyword
--pn
: page number, start from 0, default is 0
--ps
: number of result per page, default is 10
--json
: output as JSON
format
# Using bleve to query
./searchx query -d bleve -o path="index" -o dict="config/dict.txt" -q KEYWORD --pn 0 --ps 10 --json
FAQ
Q: Why don't I use the search that comes with Telegram?
A: As we all know, the search function that comes with Telegram is not very useful. The purpose of this project is to solve these problems.
Q: I'm having problems using it?
A: If you still can't solve the problem after searching, give feedback by SUBMIT ISSUE.
When submit an ISSUE
, we recommend describing the problem in English and providing relevant screenshots and steps to reproduce it.
Q: I want to add a feature?
A: Same as above
Q: Why do I need to disable Group Privacy
? Does it cause security issues?
A: When Group Privacy
is enabled, it will cause Bot
to not receive all messages in the group, resulting in missing indexes. Please refer to: https://core.telegram.org/bots#privacy-mode
At the same time, it does not create security issues. The project is self-deployed and the data is stored locally, so it will not lead to data leakage.
Q: Can I use it for my personal account? Will it be supported in the future?
A: Not currently, it may be supported in the future, but the use of userbot
has the risk of blocking. The current target group of this project is group/channel owners, self-built to provide convenience to members.
LICENSE
Apache License 2.0