Mencipta Bot

Langkah 1. Cipta aplikasi (ikuti pautan ini).

Langkah 2. Tambah bot (klik pada butang "Tambah Bot").

Langkah 2.1. Dalam bahagian Pemasangan, pilih Pautan Pemasangan → Tiada.

Langkah 2.2. Dalam bahagian Bot, nyahaktifkan Bot Awam, kemudian dayakan Niat berikut:

  • Niat Kandungan Mesej
  • Niat Ahli Pelayan

Anda juga boleh mendayakan Niat Kehadiran untuk kegunaan masa hadapan.

Langkah 3. Dapatkan token (Set Semula Token).

Langkah 4. Tambah bot ke pelayan:

  • Pergi ke OAuth2 → Penjana URL.
  • Dalam Skop, pilih bot.
  • Dalam Kebenaran Bot, pilih Hantar Mesej, Baca Sejarah Mesej, dan sebarang kebenaran lain yang diperlukan.

Kemudian buka pautan yang dijana, pilih pelayan tempat anda ingin menambah bot, dan sahkan kebenaran.

Untuk mendapatkan webhook penuh daripada Discord, hanya tetapkan sebarang nilai pada pembolehubah save_webhook.

Jika pembolehubah ditetapkan, webhook akan disimpan ke discord_webhook.

Menyambung Bot Discord dalam MaviBot

Sekarang pergi ke bahagian "Messengers" dalam projek anda di MaviBot:

Kemudian tampal token yang disalin daripada Discord.

Klik butang Selesai.

Fungsi Kalkulator

Balas Mesej

discord_reply_to_message(message_id, text) - Fungsi ini digunakan untuk membalas mesej.

Parameter Penerangan
! message_id ID mesej yang ingin anda balas.
! text Teks mesej balasan.

Padam Mesej

discord_delete_message(message_id) - Fungsi ini digunakan untuk memadam mesej.

Parameter Penerangan
! message_id ID mesej untuk dipadam.

Edit Mesej

discord_edit_message(message_id, text) - Fungsi ini digunakan untuk mengedit mesej.

Parameter Penerangan
! message_id ID mesej untuk diedit.
! text Teks baharu mesej.

Semat Mesej

discord_pin_message(message_id) - Fungsi ini digunakan untuk menyemat mesej.

Parameter Penerangan
! message_id ID mesej untuk disemat.

Nyahsemat Mesej

discord_unpin_message(message_id) - Fungsi ini digunakan untuk menyahsemat mesej.

Parameter Penerangan
! message_id ID mesej untuk dinyahsemat.

Hantar Reaksi pada Mesej

discord_send_reaction(message_id, reaction) - Fungsi ini digunakan untuk menghantar reaksi pada mesej.

Parameter Penerangan
! message_id ID mesej untuk menghantar reaksi.
! reaction Reaksi untuk dihantar. Anda boleh memberikan satu emoji (contohnya, ❤️) atau ID emoji tersuai pada pelayan. Maklumat tentang cara mendapatkan ID emoji tersuai disediakan di bawah.

Alih Keluar Reaksi daripada Mesej dalam Saluran

discord_delete_reaction(message_id, reaction, user_id) - Fungsi ini digunakan untuk mengalih keluar reaksi daripada mesej dalam saluran.

Parameter Penerangan
! message_id ID mesej untuk mengalih keluar reaksi.
! reaction Reaksi untuk dialih keluar. Anda boleh memberikan satu emoji (contohnya, ❤️) atau ID emoji tersuai pada pelayan. Maklumat tentang cara mendapatkan ID emoji tersuai disediakan di bawah.
user_id ID pengguna yang reaksinya ingin anda alih keluar. Parameter ini adalah pilihan jika anda ingin mengalih keluar reaksi daripada bot semasa.

Fungsi Discord

Fungsi berikut membolehkan anda mengurus pelayan Discord, ahli, saluran, peranan, mesej dan jemputan.

Moderasi Ahli

Sekat Ahli

discord_ban_member(user_id, delete_message_seconds) - Fungsi ini digunakan untuk menyekat ahli daripada pelayan Discord.

Parameter Penerangan
! user_id ID pengguna Discord ahli yang akan disekat.
delete_message_seconds (Pilihan) Memadam mesej sebelumnya ahli daripada bilangan saat yang ditentukan sebelum sekatan. Tetapkan 0 untuk menyimpan semua mesej.

Nyahsekatan Ahli

discord_unban_member(user_id) - Fungsi ini digunakan untuk mengalih keluar sekatan daripada ahli.

Parameter Penerangan
! user_id ID pengguna Discord ahli yang akan dinyahsekat.

Tendang Ahli

discord_kick_member(user_id) - Fungsi ini digunakan untuk mengalih keluar ahli daripada pelayan tanpa menyekat mereka.

Parameter Penerangan
! user_id ID pengguna Discord ahli yang akan dialih keluar.

Ahli yang ditendang boleh menyertai semula pelayan menggunakan pautan jemputan yang sah.

Masa Tamat Ahli

discord_timeout_member(user_id, seconds) - Fungsi ini digunakan untuk meletakkan ahli dalam masa tamat (senyap).

Parameter Penerangan
! user_id ID pengguna Discord ahli.
! seconds Tempoh masa tamat dalam saat.

Alih Keluar Masa Tamat

discord_remove_timeout(user_id) - Fungsi ini digunakan untuk mengalih keluar masa tamat ahli sebelum ia tamat.

Parameter Penerangan
! user_id ID pengguna Discord ahli.

Padam Pukal Mesej

discord_bulk_delete_messages(channel_id, message_ids) - Fungsi ini digunakan untuk memadam berbilang mesej daripada saluran.

Parameter Penerangan
! channel_id ID saluran Discord.
! message_ids Senarai ID mesej untuk dipadam.

Mesej

Hantar Mesej

discord_send_message(channel_id, text) - Fungsi ini digunakan untuk menghantar mesej ke saluran Discord.

Parameter Penerangan
! channel_id ID saluran Discord.
! text Teks mesej.

Dapatkan Mesej

discord_get_message(channel_id, message_id) - Fungsi ini digunakan untuk mendapatkan semula maklumat tentang mesej.

Parameter Penerangan
! channel_id ID saluran Discord.
! message_id ID mesej.

Fungsi mengembalikan:

  • Kandungan mesej
  • Maklumat pengarang
  • Lampiran

Hantar Mesej Terus

discord_send_dm(user_id, text) - Fungsi ini digunakan untuk menghantar mesej terus kepada ahli pelayan.

Parameter Penerangan
! user_id ID pengguna Discord.
! text Teks mesej.

Peranan

Tambah Peranan

discord_add_role(user_id, role_id) - Fungsi ini digunakan untuk memberikan peranan kepada ahli.

Parameter Penerangan
! user_id ID pengguna Discord.
! role_id ID peranan Discord.

Alih Keluar Peranan

discord_remove_role(user_id, role_id) - Fungsi ini digunakan untuk mengalih keluar peranan daripada ahli.

Parameter Penerangan
! user_id ID pengguna Discord.
! role_id ID peranan Discord.

Tukar Nama Panggilan Ahli

discord_set_nickname(user_id, nickname) - Fungsi ini digunakan untuk menukar nama panggilan ahli pada pelayan.

Parameter Penerangan
! user_id ID pengguna Discord.
! nickname Nama panggilan baharu.

Dapatkan Peranan Pelayan

discord_get_roles() - Fungsi ini digunakan untuk mendapatkan semula senarai peranan pelayan.

Fungsi mengembalikan:

  • ID peranan
  • Nama peranan

Ahli

Dapatkan Maklumat Ahli

discord_get_member(user_id) - Fungsi ini digunakan untuk mendapatkan semula maklumat tentang ahli pelayan.

Parameter Penerangan
! user_id ID pengguna Discord.

Fungsi mengembalikan:

  • Peranan ahli
  • Nama panggilan pelayan
  • Tarikh menyertai
  • Kebenaran

Saluran

Cipta Saluran

discord_create_channel(name, type, parent_id, permission_overwrites) - Fungsi ini digunakan untuk mencipta saluran Discord baharu.

Parameter Penerangan
! name Nama saluran.
! type Jenis saluran (contohnya, teks atau suara).
parent_id ID kategori tempat saluran akan dicipta.
permission_overwrites Tetapan kebenaran saluran yang menentukan pengguna atau peranan mana yang boleh mengakses saluran.

Padam Saluran

discord_delete_channel(channel_id) - Fungsi ini digunakan untuk memadam saluran Discord.

Parameter Penerangan
! channel_id ID saluran Discord.

Tetapkan Kebenaran Saluran

discord_set_channel_permission(channel_id, target_id, allow, deny) - Fungsi ini digunakan untuk mengkonfigurasi kebenaran saluran untuk pengguna atau peranan.

Parameter Penerangan
! channel_id ID saluran Discord.
! target_id ID pengguna atau ID peranan yang kebenarannya akan diubah.
! allow Kebenaran untuk diberikan.
! deny Kebenaran untuk dinafikan.

Jemputan

Cipta Jemputan

discord_create_invite(channel_id, max_age, max_uses) - Fungsi ini digunakan untuk mencipta pautan jemputan.

Parameter Penerangan
! channel_id ID Saluran Discord.
max_age Tempoh jemputan dalam saat. Gunakan 0 untuk tanpa tamat tempoh.
max_uses Bilangan maksimum penggunaan. Gunakan 0 untuk penggunaan tanpa had.

Dapatkan Jemputan Pelayan

discord_get_invites() - Fungsi ini digunakan untuk mendapatkan semua pautan jemputan pelayan.

Fungsi ini mengembalikan:

  • URL Jemputan
  • Bilangan penggunaan
  • Baki tempoh (jika berkenaan)

Acara Webhook

Acara Discord berikut boleh dihantar ke aliran sembang:

  • Ahli menyertai pelayan
  • Ahli meninggalkan pelayan
  • Ahli telah dibuang
  • Ahli telah disekat
  • Ahli telah dinyahsekat
  • Peranan ahli berubah
  • Mesej diedit
  • Mesej dipadam
  • Reaksi ditambah
  • Reaksi dialih keluar
  • Perintah slash dilaksanakan
  • Butang diklik

Muatan Webhook

Data webhook tersedia dalam:

discord_webhook["data"]
Medan Penerangan
author_id ID pengguna Discord bagi pengarang mesej.
username Nama pengguna Discord.
nickname Nama panggilan pelayan.
channel_id ID Saluran Discord.
guild_id ID Pelayan Discord.
message_id ID Mesej Discord.
content Teks mesej.
roles Senarai ID peranan ahli.
is_admin Menunjukkan sama ada ahli mempunyai keistimewaan pentadbir.

Panggil Balik

Apabila pengguna menghantar reaksi, panggil balik diterima dalam sembang dalam format berikut:

new_like ❤️ uid413984787162726410

Di mana uid413984787162726410 ialah ID pengguna yang menghantar reaksi.

Cara mendapatkan ID emoji tersuai

Jika anda menghantar reaksi tersuai kepada mesej dalam saluran Discord, panggil balik akan diterima dalam format berikut:

new_like beer:1479419477396291696 uid413984787162726410

Di mana beer:1479419477396291696 ialah ID reaksi. Anda boleh menyalinnya untuk digunakan dalam fungsi berkaitan reaksi.

Cara mendapatkan ID Mesej

Anda boleh mendapatkan ID mesej klien daripada webhook jika save_webhook didayakan. Contoh:

data = discord_webhook["data"]
msg_id = data["id"]
result = discord_reply_to_message(msg_id, "Ini adalah balasan kepada mesej")

Panggil Balik Tambahan

Selain new_like, panggil balik berikut tersedia:

Panggil Balik Penerangan
new_like {emoji} uid{user_id} Seorang pengguna menambah reaksi pada mesej.
reaction_remove {emoji} uid{user_id} Seorang pengguna mengalih keluar reaksi daripada mesej.
message_delete mid{message_id} Mesej telah dipadam.
message_edit mid{message_id} Mesej telah diedit. Teks mesej yang dikemas kini tersedia dalam data webhook.
member_join uid{user_id} Seorang ahli menyertai pelayan.
member_leave uid{user_id} Seorang ahli meninggalkan pelayan.
member_update uid{user_id} Maklumat ahli (seperti peranan atau nama panggilan) telah dikemas kini.
member_ban uid{user_id} Seorang ahli telah disekat daripada pelayan.
member_unban uid{user_id} Seorang ahli telah dinyahsekat daripada pelayan.

Pembolehubah Panggil Balik

Untuk konsistensi dengan format acara Discord sedia ada, pengecam pengguna dan mesej menggunakan awalan sejarah:

  • ID Pengguna dikembalikan sebagai uid{user_id}.
  • ID Mesej dikembalikan sebagai mid{message_id}.

Pembolehubah berikut juga menggunakan pengecam berawalan ini:

  • message_from
  • internal_id
  • discord_webhook["data"]