send massage to @botfather
/start
/newbot
answer with botname
fdia
answer bot name with bot at end
fdia_bot
- Open Telegram App:
Launch the Telegram app on your mobile device or desktop.
- Start a New Group:
Tap the pencil icon, then select "New Group."
- Select Members:
Choose the users you want to add to the group. You can search for their usernames or select them from your contacts.
- Name the Group:
After selecting the members, tap the arrow (or "Next") and enter a name for your group. Optionally, you can set a group photo.
- Select Auto-Message-Deletion
Select an auto deletion interval of your choice in the dropdown box.
- Create the Group:
Tap the checkmark (or "Create") to finalize the creation of the group.
- Find the Bot
Search for the bot you want to add to the group by typing its complete username in the search bar.
- Add the Bot
Open the bot's chat, tap the bot's profile picture, and select "Add to Group.".
Then choose the group you just created.
- Open Group Settings
Go to the group chat, tap the group name at the top to open the group’s info page.
- Edit Group Permissions
Tap the pencil icon (or "Edit") to access the group settings.
- Set Privacy
In the "Group Type" section, ensure the group is set to "Private." .
This means only invited members can join the group.
- Enable Bot to Read Messages For the bot to read messages, it needs the appropriate permissions
Admin Rights: Go to the group’s info page, select "Administrators," and add the bot as an admin. When setting the bot's admin permissions, ensure it has the "Read All Group Messages" permission.
/setjoingroups
select group from selcections menu/ insert bot name
/setprivacy
- select bot from choosable menu or add bot name
- new select
disable
to get and read all messages
Now it time to get your telegram
- user id
- chat group id
- and if more than one user is in the group their user ids
Send from your mobile phone a message to the telegram chat group where your bot is assigned in. Now it time to ask other telegram chat group members to also send a test message to the group so that their from id's are also visible in the below commands.
Now run shell command:
curl -X GET "https://api.telegram.org/bot<YOUR_BOT_TOKEN code>/getUpdates" |jq -r
example output:
{
"ok": true,
"result": [
{
"update_id": 839666728,
"message": {
"message_id": 1994,
"from": {
"id": 123456789,
"is_bot": false,
"first_name": "MyFirstName",
"username": "MyFullName",
"language_code": "de"
},
"chat": {
"id": -987654321,
"title": "a_group_title",
"type": "group",
"all_members_are_administrators": true
},
"date": 1721202785,
"text": "test text"
}
},
{
"update_id": 3456789012,
"message": {
"message_id": 1995,
"from": {
"id": 123450000,
"is_bot": false,
"first_name": "OtherUserFirstName",
"username": "OtherUserFullName",
"language_code": "de"
},
"chat": {
"id": -987654321,
"title": "a_group_title",
"type": "group",
"all_members_are_administrators": true
},
"date": 1721202785,
"text": "other user test text"
}
}
]
}
or if you prefer httpie command instead shell curl run this:
http GET https://api.telegram.org/bot<YOUR_BOT_TOKEN>/getUpdates
example output:
HTTP/1.1 200 OK
Access-Control-Allow-Methods: GET, POST, OPTIONS
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Content-Length,Content-Type,Date,Server,Connection
Connection: keep-alive
Content-Length: 998
Content-Type: application/json
Date: Wed, 17 Jul 2024 08:03:52 GMT
Server: nginx/1.18.0
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
{
"ok": true,
"result": [
{
"update_id": 839666728,
"message": {
"message_id": 1994,
"from": {
"id": 123456789,
"is_bot": false,
"first_name": "MyFirstName",
"username": "MyFullName",
"language_code": "de"
},
"chat": {
"id": -987654321,
"title": "a_group_title",
"type": "group",
"all_members_are_administrators": true
},
"date": 1721202785,
"text": "test text"
}
},
{
"update_id": 3456789012,
"message": {
"message_id": 1995,
"from": {
"id": 123450000,
"is_bot": false,
"first_name": "OtherUserFirstName",
"username": "OtherUserFullName",
"language_code": "de"
},
"chat": {
"id": -987654321,
"title": "a_group_title",
"type": "group",
"all_members_are_administrators": true
},
"date": 1721202785,
"text": "other user test text"
}
}
]
}
Now search in the output for
- json tree
message.from.id
which is equal to the user id stored inconfig.yaml
under sectiontelegram
allowed_user_ids
as list string values. - json tree
message.chat.id
which is the telegram chat group id which you want to allow the bot to react on. A group chat id starts always with a-
.
Store this chat id inconfig.yaml
under sectiontelegram
chat_number
as string value.