Ботты құру
1-қадам. Қолданбаны жасаңыз (сілтеме бойынша өтіңіз).
2-қадам. Ботты қосыңыз ("Add Bot" түймесін басыңыз).

2.1-қадам. Installation бөлімінде Install Link → None таңдаңыз.

2.2-қадам. Bot бөлімінде Public Bot өшіріңіз, содан кейін келесі Intents қосыңыз:
- Message Content Intent
- Server Members Intent
Сондай-ақ, болашақта пайдалану үшін Presence Intent қосуыңызға болады.


3-қадам. Токенді алыңыз (Reset Token).
4-қадам. Ботты серверге қосыңыз:
- OAuth2 → URL Generator бөліміне өтіңіз.
- Scopes бөлімінде bot таңдаңыз.
- Bot Permissions бөлімінде Send Messages, Read Message History және басқа қажетті рұқсаттарды таңдаңыз.
Содан кейін жасалған сілтемені ашыңыз, ботты қосқыңыз келетін серверді таңдаңыз және авторизацияны растаңыз.


Discord-тан толық вебхукты алу үшін save_webhook айнымалысына кез келген мәнді тағайындаңыз.
Егер айнымалы орнатылса, вебхук discord_webhook мәніне сақталады.
MaviBot-та Discord ботын қосу
Енді MaviBot жобаңыздағы "Messengers" бөліміне өтіңіз:

Содан кейін Discord-тан көшірілген токенді қойыңыз.

Done түймесін басыңыз.
Калькулятор функциялары
Хабарламаға жауап беру
discord_reply_to_message(message_id, text) - Бұл функция хабарламаға жауап беру үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! message_id | Жауап бергіңіз келетін хабарламаның ID-і. |
| ! text | Жауап хабарламасының мәтіні. |
Хабарламаны жою
discord_delete_message(message_id) - Бұл функция хабарламаны жою үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! message_id | Жойылатын хабарламаның ID-і. |
Хабарламаны өңдеу
discord_edit_message(message_id, text) - Бұл функция хабарламаны өңдеу үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! message_id | Өңделетін хабарламаның ID-і. |
| ! text | Хабарламаның жаңа мәтіні. |
Хабарламаны бекіту
discord_pin_message(message_id) - Бұл функция хабарламаны бекіту үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! message_id | Бекітілетін хабарламаның ID-і. |
Хабарламаны бекітуден алу
discord_unpin_message(message_id) - Бұл функция хабарламаны бекітуден алу үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! message_id | Бекітуден алынатын хабарламаның ID-і. |
Хабарламаға реакция жіберу
discord_send_reaction(message_id, reaction) - Бұл функция хабарламаға реакция жіберу үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! message_id | Реакция жіберілетін хабарламаның ID-і. |
| ! reaction | Жіберілетін реакция. Бір эмодзиді (мысалы, ❤️) немесе сервердегі теңшеулі эмодзидің ID-ін бере аласыз. Теңшеулі эмодзидің ID-ін қалай алуға болатыны туралы ақпарат төменде берілген. |
Арнадағы хабарламадан реакцияны алып тастау
discord_delete_reaction(message_id, reaction, user_id) - Бұл функция арнадағы хабарламадан реакцияны алып тастау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! message_id | Реакция алып тасталатын хабарламаның ID-і. |
| ! reaction | Алып тасталатын реакция. Бір эмодзиді (мысалы, ❤️) немесе сервердегі теңшеулі эмодзидің ID-ін бере аласыз. Теңшеулі эмодзидің ID-ін қалай алуға болатыны туралы ақпарат төменде берілген. |
| user_id | Реакциясын алып тастағыңыз келетін пайдаланушының ID-і. Бұл параметр ағымдағы боттан реакцияны алып тастағыңыз келсе, міндетті емес. |
Discord функциялары
Келесі функциялар Discord серверлерін, мүшелерін, арналарын, рөлдерін, хабарламаларын және шақыруларын басқаруға мүмкіндік береді.
Мүшелерді модерациялау
Мүшені бандау
discord_ban_member(user_id, delete_message_seconds) - Бұл функция Discord серверінен мүшені бандау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Бандалатын мүшенің Discord пайдаланушы ID-і. |
| delete_message_seconds | (Міндетті емес) Бандауға дейінгі көрсетілген секунд санындағы мүшенің алдыңғы хабарламаларын жояды. Барлық хабарламаларды сақтау үшін 0 мәнін орнатыңыз. |
Мүшені баннан шығару
discord_unban_member(user_id) - Бұл функция мүшеден банды алып тастау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Баннан шығарылатын мүшенің Discord пайдаланушы ID-і. |
Мүшені серверден шығару
discord_kick_member(user_id) - Бұл функция мүшені бандамай серверден шығару үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Шығарылатын мүшенің Discord пайдаланушы ID-і. |
Шығарылған мүше жарамды шақыру сілтемесін пайдаланып серверге қайта қосыла алады.
Мүшені таймаутқа қою
discord_timeout_member(user_id, seconds) - Бұл функция мүшені таймаутқа (дыбысты өшіру) қою үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Мүшенің Discord пайдаланушы ID-і. |
| ! seconds | Таймаут ұзақтығы секундпен. |
Таймаутты алып тастау
discord_remove_timeout(user_id) - Бұл функция мүшенің таймаутын мерзімінен бұрын алып тастау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Мүшенің Discord пайдаланушы ID-і. |
Хабарламаларды топтап жою
discord_bulk_delete_messages(channel_id, message_ids) - Бұл функция арнадан бірнеше хабарламаны жою үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! channel_id | Discord арнасының ID-і. |
| ! message_ids | Жойылатын хабарлама ID-лерінің тізімі. |
Хабарламалар
Хабарлама жіберу
discord_send_message(channel_id, text) - Бұл функция Discord арнасына хабарлама жіберу үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! channel_id | Discord арнасының ID-і. |
| ! text | Хабарлама мәтіні. |
Хабарламаны алу
discord_get_message(channel_id, message_id) - Бұл функция хабарлама туралы ақпаратты алу үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! channel_id | Discord арнасының ID-і. |
| ! message_id | Хабарламаның ID-і. |
Функция қайтарады:
- Хабарлама мазмұны
- Автор туралы ақпарат
- Тіркемелер
Тікелей хабарлама жіберу
discord_send_dm(user_id, text) - Бұл функция сервер мүшесіне тікелей хабарлама жіберу үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Discord пайдаланушы ID-і. |
| ! text | Хабарлама мәтіні. |
Рөлдер
Рөл қосу
discord_add_role(user_id, role_id) - Бұл функция мүшеге рөл тағайындау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Discord пайдаланушы ID-і. |
| ! role_id | Discord рөлінің ID-і. |
Рөлді алып тастау
discord_remove_role(user_id, role_id) - Бұл функция мүшеден рөлді алып тастау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Discord пайдаланушы ID-і. |
| ! role_id | Discord рөлінің ID-і. |
Мүшенің лақап атын өзгерту
discord_set_nickname(user_id, nickname) - Бұл функция сервердегі мүшенің лақап атын өзгерту үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Discord пайдаланушы ID-і. |
| ! nickname | Жаңа лақап ат. |
Сервер рөлдерін алу
discord_get_roles() - Бұл функция сервер рөлдерінің тізімін алу үшін қолданылады.
Функция қайтарады:
- Рөл ID-і
- Рөл атауы
Мүшелер
Мүше туралы ақпарат алу
discord_get_member(user_id) - Бұл функция сервер мүшесі туралы ақпаратты алу үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! user_id | Discord пайдаланушы ID-і. |
Функция қайтарады:
- Мүше рөлдері
- Сервердегі лақап аты
- Қосылған күні
- Рұқсаттар
Арналар
Арна жасау
discord_create_channel(name, type, parent_id, permission_overwrites) - Бұл функция жаңа Discord арнасын жасау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! name | Арна атауы. |
| ! type | Арна түрі (мысалы, мәтіндік немесе дауыстық). |
| parent_id | Арна жасалатын санаттың ID-і. |
| permission_overwrites | Арнаға қандай пайдаланушылар немесе рөлдер кіре алатынын анықтайтын арна рұқсаттарының параметрлері. |
Арнаны жою
discord_delete_channel(channel_id) - Бұл функция Discord арнасын жою үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! channel_id | Discord арнасының ID-і. |
Арна рұқсаттарын орнату
discord_set_channel_permission(channel_id, target_id, allow, deny) - Бұл функция пайдаланушы немесе рөл үшін арна рұқсаттарын конфигурациялау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! channel_id | Discord арнасының ID-і. |
| ! target_id | Рұқсаттары өзгертілетін пайдаланушы ID-і немесе рөл ID-і. |
| ! allow | Берілетін рұқсаттар. |
| ! deny | Берілмейтін рұқсаттар. |
Шақырулар
Шақыру жасау
discord_create_invite(channel_id, max_age, max_uses) - Бұл функция шақыру сілтемесін жасау үшін қолданылады.
| Параметрлер | Сипаттамасы |
|---|---|
| ! channel_id | Discord арнасының ID. |
| max_age | Шақырудың секундтардағы өмір сүру уақыты. Мерзімі бітпеуі үшін 0 мәнін пайдаланыңыз. |
| max_uses | Қолданудың ең көп саны. Шектеусіз қолдану үшін 0 мәнін пайдаланыңыз. |
Сервер шақыруларын алу
discord_get_invites() - Бұл функция сервердің барлық шақыру сілтемелерін алу үшін қолданылады.
Функция келесіні қайтарады:
- Шақыру URL
- Қолдану саны
- Қалған өмір сүру уақыты (егер қолданылса)
Webhook оқиғалары
Келесі Discord оқиғалары чат ағынына жіберілуі мүмкін:
- Қатысушы серверге қосылды
- Қатысушы серверден кетті
- Қатысушы шығарылды
- Қатысушы бұғатталды
- Қатысушы бұғаттан шығарылды
- Қатысушының рөлдері өзгерді
- Хабарлама өңделді
- Хабарлама жойылды
- Реакция қосылды
- Реакция жойылды
- Қиғаш сызық командасы орындалды
- Түйме басылды
Webhook жүктемесі
Webhook деректері келесіде қолжетімді:
discord_webhook["data"]
| Өріс | Сипаттамасы |
|---|---|
| author_id | Хабарлама авторының Discord пайдаланушы ID. |
| username | Discord пайдаланушы аты. |
| nickname | Сервердегі лақап аты. |
| channel_id | Discord арнасының ID. |
| guild_id | Discord серверінің ID. |
| message_id | Discord хабарламасының ID. |
| content | Хабарлама мәтіні. |
| roles | Қатысушының рөл ID тізімі. |
| is_admin | Қатысушының әкімші құқықтары бар-жоғын көрсетеді. |
Кері шақырулар
Пайдаланушы реакция жібергенде, чатқа келесі форматта кері шақыру келеді:
new_like ❤️ uid413984787162726410

Мұнда uid413984787162726410 - реакцияны жіберген пайдаланушының ID.
Арнайы эмодзи ID-ін қалай алуға болады
Егер сіз Discord арнасындағы хабарламаға арнайы реакция жіберсеңіз, келесі форматта кері шақыру келеді:
new_like beer:1479419477396291696 uid413984787162726410

Мұнда beer:1479419477396291696 - реакцияның ID. Сіз оны реакцияға қатысты функцияларда пайдалану үшін көшіре аласыз.
Хабарлама ID-ін қалай алуға болады
Егер save_webhook қосылған болса, клиенттің хабарлама ID-ін webhook-тан алуға болады. Мысалы:
data = discord_webhook["data"]
msg_id = data["id"]
result = discord_reply_to_message(msg_id, "Бұл хабарламаға жауап")
Қосымша кері шақырулар
new_like-тан басқа, келесі кері шақырулар қолжетімді:
| Кері шақыру | Сипаттамасы |
|---|---|
new_like {emoji} uid{user_id} |
Пайдаланушы хабарламаға реакция қосты. |
reaction_remove {emoji} uid{user_id} |
Пайдаланушы хабарламадан реакцияны алып тастады. |
message_delete mid{message_id} |
Хабарлама жойылды. |
message_edit mid{message_id} |
Хабарлама өңделді. Жаңартылған хабарлама мәтіні webhook деректерінде қолжетімді. |
member_join uid{user_id} |
Қатысушы серверге қосылды. |
member_leave uid{user_id} |
Қатысушы серверден кетті. |
member_update uid{user_id} |
Қатысушының ақпараты (мысалы, рөлдер немесе лақап аты) жаңартылды. |
member_ban uid{user_id} |
Қатысушы серверден бұғатталды. |
member_unban uid{user_id} |
Қатысушы серверден бұғаттан шығарылды. |
Кері шақыру айнымалылары
Қолданыстағы Discord оқиға форматымен сәйкестік үшін пайдаланушы және хабарлама идентификаторлары тарихи префикстерді пайдаланады:
- Пайдаланушы ID
uid{user_id}ретінде қайтарылады. - Хабарлама ID
mid{message_id}ретінде қайтарылады.
Келесі айнымалылар да осы префиксті идентификаторларды пайдаланады:
message_frominternal_iddiscord_webhook["data"]