Taosky / telegram-search-bot

A telegram group record search bot that solves the problem of direct search inability in languages such as CJK / Telegram 群聊天记录搜索Bot,解决CJK等语言无法直接搜索问题
MIT License
375 stars 49 forks source link

#Feature Request #38

Open bolavefasfas opened 1 year ago

bolavefasfas commented 1 year ago

Translation to english version please

Taosky commented 1 year ago

This project is mainly to solve the problem that languages such as China, Japan and Korea cannot be searched by telegram. English words are separated by spaces and can be searched in telegram. So wondering what your needs are for using this project?

Taosky commented 6 months ago

Now supports English

bolavefasfas commented 6 months ago

Now supports English

Thanks For adding english support in language env variable should be set to en right

What is diffrence betweeen polling and webhook and userbot mode I have deployed polling mode which does not have access to previous messages and exporting them for multiple group is repetative task

Does using userbot mode or webhook solve this

I think using userbot mode as it might be using session string or login so it should be able to access all messages right ?

Which is more safer - like which has less chances of getting telegram account banned


            - USER_BOT=0 -[What to fill here]

            - BOT_MODE=webhook
            - URL_PATH=test     [What to fill here]
            - HOOK_URL=https://hook.example.xyz/test # This I understood 
            # Do not modify
            - CACHE_TIME=300

Will this work directly

   ## The webhook mode requires Caddy to be used for reverse proxy (or do reverse proxy yourself)

    # caddy:
    #     container_name: caddy
    #     image: caddy:2-alpine
    #     restart: unless-stopped
    #     volumes:
    #         - ./Caddyfile:/etc/caddy/Caddyfile
    #     network_mode: "host"

or I need to fill in Caddyfile - I have no experience with caddy

I am using nginx reverse proxy manager


[ ] And for webhook url what to I need to expose the domain to in proxy manager like

localhost:what port to https://hook.example.xyz can I use this https://hook.example.xyz insted of https://hook.example.xyz/test and keep the path blank ?

Taosky commented 6 months ago

The following response is from a translation service and there may be translation errors.

Polling/Webhook refers to the running mode of the bot. The polling mode requests new data from the Telegram server through continuously sending requests. When the data is large, the delay is large, but it is easy to run and does not require additional configuration; The webhook mode is to register your url on the Telegram server, where the server actively sends new data to the bot through URL requests, which has high real-time performance but requires additional configuration.

Userbot refers to logging into one's own Telegram ID to obtain messages, rather than adding bot into the group to read messages. The advantage is that it is relatively convenient, but the disadvantage is that it requires logging in to the account, which poses certain risks (account issues have not yet been encountered). Setting userbot=1 in the configuration will enable this feature. It is not necessary to use userbot mode when the bot can be added to group.

In userbot mode, it may be possible to obtain historical messages, but I haven't tried it yet. I will test it later. Currently, exporting chat records and importing them is still the most common and secure way.

For the configuration of webhook.URL_PATH is the suffix of the webhook address (something like token), which can be set freely and is consistent with the HOOK_URL suffix (I think it cannot be empty)

In Nginx configuration, the following reverse proxy can be used under your domain.

location/your_path{
    Proxy_pass http://127.0.0.1:9968/your_path/ ;
}

There are many imperfections in the file annotations, and I will update them.

bolavefasfas commented 6 months ago

The following response is from a translation service and there may be translation errors.

Polling/Webhook refers to the running mode of the bot. The polling mode requests new data from the Telegram server through continuously sending requests. When the data is large, the delay is large, but it is easy to run and does not require additional configuration; The webhook mode is to register your url on the Telegram server, where the server actively sends new data to the bot through URL requests, which has high real-time performance but requires additional configuration.

Userbot refers to logging into one's own Telegram ID to obtain messages, rather than adding bot into the group to read messages. The advantage is that it is relatively convenient, but the disadvantage is that it requires logging in to the account, which poses certain risks (account issues have not yet been encountered). Setting userbot=1 in the configuration will enable this feature. It is not necessary to use userbot mode when the bot can be added to group.

In userbot mode, it may be possible to obtain historical messages, but I haven't tried it yet. I will test it later. Currently, exporting chat records and importing them is still the most common and secure way.

For the configuration of webhook.URL_PATH is the suffix of the webhook address (something like token), which can be set freely and is consistent with the HOOK_URL suffix (I think it cannot be empty)

In Nginx configuration, the following reverse proxy can be used under your domain.

location/your_path{
    Proxy_pass http://127.0.0.1:9968/your_path/ ;
}

There are many imperfections in the file annotations, and I will update them.

Thanks for explaining polling and webhook - both are safe userbot isnt that much I have used userbot for 2 years without any issues

Thought look at "obtaining historical messages. As that would be very easy. As no need to add bot to any chats or export history. it will work out of the box. Try session string for userbot most of userbots use that instead of login its a login string ig.

Few restricted chats we cannot add bot as we arent admins and might want to search messages or files from that chat

This is the usecase of userbot as it is like your telegram login itself it can access that right ? "

And can you make video tutorial if possible not urgent for webhook deployment and setting up proxy pass and everything later on when you get time

And Please make a project map for q1,q2,q3,q4 or this year.