Bota izveide

1. solis. Izveido lietojumprogrammu (seko saitei).

2. solis. Pievieno botu (noklikšķini uz pogas "Pievienot botu").

2.1. solis. Sadaļā Instalācija izvēlies Instalācijas saite → Nav.

2.2. solis. Sadaļā Bots atspējo Publisks bots, pēc tam iespējo šādas Intences:

  • Ziņojumu satura intence
  • Servera dalībnieku intence

Varat arī iespējot Klātbūtnes intenci turpmākai lietošanai.

3. solis. Iegūsti pilnvaru (Atiestatīt pilnvaru).

4. solis. Pievieno botu serverim:

  • Dodieties uz OAuth2 → URL ģenerators.
  • Sadaļā Darbības jomas izvēlies bots.
  • Sadaļā Bota atļaujas izvēlies Sūtīt ziņojumus, Lasīt ziņojumu vēsturi un jebkuras citas nepieciešamās atļaujas.

Pēc tam atver ģenerēto saiti, izvēlies serveri, kuram vēlies pievienot botu, un apstiprini autorizāciju.

Lai iegūtu pilnu tīmekļa āķi no Discord, vienkārši piešķir jebkuru vērtību mainīgajam save_webhook.

Ja mainīgais ir iestatīts, tīmekļa āķis tiks saglabāts mainīgajā discord_webhook.

Discord bota savienošana MaviBot

Tagad dodieties uz sadaļu “Ziņneši” savā projektā MaviBot:

Pēc tam ielīmējiet no Discord nokopēto pilnvaru.

Noklikšķiniet uz pogas Gatavs.

Kalkulatora funkcijas

Atbildēt uz ziņojumu

discord_reply_to_message(message_id, text) - Šī funkcija tiek izmantota, lai atbildētu uz ziņojumu.

Parametri Apraksts
! message_id Ziņojuma ID, uz kuru vēlaties atbildēt.
! text Atbildes ziņojuma teksts.

Dzēst ziņojumu

discord_delete_message(message_id) - Šī funkcija tiek izmantota, lai dzēstu ziņojumu.

Parametri Apraksts
! message_id Dzēšamā ziņojuma ID.

Rediģēt ziņojumu

discord_edit_message(message_id, text) - Šī funkcija tiek izmantota, lai rediģētu ziņojumu.

Parametri Apraksts
! message_id Rediģējamā ziņojuma ID.
! text Jaunais ziņojuma teksts.

Piespraust ziņojumu

discord_pin_message(message_id) - Šī funkcija tiek izmantota, lai piespraustu ziņojumu.

Parametri Apraksts
! message_id Piespraužamā ziņojuma ID.

Atspraust ziņojumu

discord_unpin_message(message_id) - Šī funkcija tiek izmantota, lai atspraustu ziņojumu.

Parametri Apraksts
! message_id Atspraužamā ziņojuma ID.

Nosūtīt reakciju uz ziņojumu

discord_send_reaction(message_id, reaction) - Šī funkcija tiek izmantota, lai nosūtītu reakciju uz ziņojumu.

Parametri Apraksts
! message_id Ziņojuma ID, uz kuru nosūtīt reakciju.
! reaction Nosūtāmā reakcija. Varat norādīt vienu emocijzīmi (piem., ❤️) vai pielāgotas emocijzīmes ID serverī. Informācija par to, kā iegūt pielāgotas emocijzīmes ID, ir sniegta zemāk.

Noņemt reakciju no ziņojuma kanālā

discord_delete_reaction(message_id, reaction, user_id) - Šī funkcija tiek izmantota, lai noņemtu reakciju no ziņojuma kanālā.

Parametri Apraksts
! message_id Ziņojuma ID, no kura noņemt reakciju.
! reaction Noņemamā reakcija. Varat norādīt vienu emocijzīmi (piem., ❤️) vai pielāgotas emocijzīmes ID serverī. Informācija par to, kā iegūt pielāgotas emocijzīmes ID, ir sniegta zemāk.
user_id Lietotāja ID, kura reakciju vēlaties noņemt. Šis parametrs nav obligāts, ja vēlaties noņemt reakciju no pašreizējā bota.

Discord funkcijas

Tālāk norādītās funkcijas ļauj pārvaldīt Discord serverus, dalībniekus, kanālus, lomas, ziņojumus un ielūgumus.

Dalībnieku moderācija

Aizliegt dalībnieku

discord_ban_member(user_id, delete_message_seconds) - Šī funkcija tiek izmantota, lai aizliegtu dalībnieku Discord serverī.

Parametri Apraksts
! user_id Aizliedzamā dalībnieka Discord lietotāja ID.
delete_message_seconds (Neobligāts) Izdzēš dalībnieka iepriekšējos ziņojumus no norādītā sekunžu skaita pirms aizlieguma. Iestatiet 0, lai saglabātu visus ziņojumus.

Atcelt aizliegumu dalībniekam

discord_unban_member(user_id) - Šī funkcija tiek izmantota, lai noņemtu aizliegumu dalībniekam.

Parametri Apraksts
! user_id Dalībnieka Discord lietotāja ID, kuram atcelt aizliegumu.

Izmest dalībnieku

discord_kick_member(user_id) - Šī funkcija tiek izmantota, lai noņemtu dalībnieku no servera, to neaizliedzot.

Parametri Apraksts
! user_id Noņemamā dalībnieka Discord lietotāja ID.

Izmestais dalībnieks var atkārtoti pievienoties serverim, izmantojot derīgu ielūguma saiti.

Ierobežot dalībnieku laikā

discord_timeout_member(user_id, seconds) - Šī funkcija tiek izmantota, lai ierobežotu dalībnieku laikā (apklusinātu).

Parametri Apraksts
! user_id Dalībnieka Discord lietotāja ID.
! seconds Laika ierobežojuma ilgums sekundēs.

Noņemt laika ierobežojumu

discord_remove_timeout(user_id) - Šī funkcija tiek izmantota, lai noņemtu dalībnieka laika ierobežojumu pirms tā termiņa beigām.

Parametri Apraksts
! user_id Dalībnieka Discord lietotāja ID.

Dzēst vairākus ziņojumus

discord_bulk_delete_messages(channel_id, message_ids) - Šī funkcija tiek izmantota, lai dzēstu vairākus ziņojumus no kanāla.

Parametri Apraksts
! channel_id Discord kanāla ID.
! message_ids Dzēšamo ziņojumu ID saraksts.

Ziņojumi

Nosūtīt ziņojumu

discord_send_message(channel_id, text) - Šī funkcija tiek izmantota, lai nosūtītu ziņojumu Discord kanālā.

Parametri Apraksts
! channel_id Discord kanāla ID.
! text Ziņojuma teksts.

Iegūt ziņojumu

discord_get_message(channel_id, message_id) - Šī funkcija tiek izmantota, lai iegūtu informāciju par ziņojumu.

Parametri Apraksts
! channel_id Discord kanāla ID.
! message_id Ziņojuma ID.

Funkcija atgriež:

  • Ziņojuma saturu
  • Autora informāciju
  • Pielikumus

Nosūtīt tiešo ziņojumu

discord_send_dm(user_id, text) - Šī funkcija tiek izmantota, lai nosūtītu tiešo ziņojumu servera dalībniekam.

Parametri Apraksts
! user_id Discord lietotāja ID.
! text Ziņojuma teksts.

Lomas

Pievienot lomu

discord_add_role(user_id, role_id) - Šī funkcija tiek izmantota, lai piešķirtu lomu dalībniekam.

Parametri Apraksts
! user_id Discord lietotāja ID.
! role_id Discord lomas ID.

Noņemt lomu

discord_remove_role(user_id, role_id) - Šī funkcija tiek izmantota, lai noņemtu lomu no dalībnieka.

Parametri Apraksts
! user_id Discord lietotāja ID.
! role_id Discord lomas ID.

Mainīt dalībnieka segvārdu

discord_set_nickname(user_id, nickname) - Šī funkcija tiek izmantota, lai mainītu dalībnieka segvārdu serverī.

Parametri Apraksts
! user_id Discord lietotāja ID.
! nickname Jaunais segvārds.

Iegūt servera lomas

discord_get_roles() - Šī funkcija tiek izmantota, lai iegūtu servera lomu sarakstu.

Funkcija atgriež:

  • Lomas ID
  • Lomas nosaukumu

Dalībnieki

Iegūt dalībnieka informāciju

discord_get_member(user_id) - Šī funkcija tiek izmantota, lai iegūtu informāciju par servera dalībnieku.

Parametri Apraksts
! user_id Discord lietotāja ID.

Funkcija atgriež:

  • Dalībnieka lomas
  • Segvārdu serverī
  • Pievienošanās datumu
  • Atļaujas

Kanāli

Izveidot kanālu

discord_create_channel(name, type, parent_id, permission_overwrites) - Šī funkcija tiek izmantota, lai izveidotu jaunu Discord kanālu.

Parametri Apraksts
! name Kanāla nosaukums.
! type Kanāla veids (piemēram, teksts vai balss).
parent_id Kategorijas ID, kurā tiks izveidots kanāls.
permission_overwrites Kanāla atļauju iestatījumi, kas nosaka, kuri lietotāji vai lomas var piekļūt kanālam.

Dzēst kanālu

discord_delete_channel(channel_id) - Šī funkcija tiek izmantota, lai dzēstu Discord kanālu.

Parametri Apraksts
! channel_id Discord kanāla ID.

Iestatīt kanāla atļaujas

discord_set_channel_permission(channel_id, target_id, allow, deny) - Šī funkcija tiek izmantota, lai konfigurētu kanāla atļaujas lietotājam vai lomai.

Parametri Apraksts
! channel_id Discord kanāla ID.
! target_id Lietotāja ID vai lomas ID, kura atļaujas tiks mainītas.
! allow Pievienojamās atļaujas.
! deny Aizliedzamās atļaujas.

Uzaicinājumi

Izveidot uzaicinājumu

discord_create_invite(channel_id, max_age, max_uses) - Šī funkcija tiek izmantota, lai izveidotu uzaicinājuma saiti.

Parametri Apraksts
! channel_id Discord kanāla ID.
max_age Uzaicinājuma derīguma termiņš sekundēs. Izmantojiet 0, lai tas nebeigtos.
max_uses Maksimālais izmantošanas reižu skaits. Izmantojiet 0, lai būtu neierobežots lietojums.

Iegūt servera uzaicinājumus

discord_get_invites() - Šī funkcija tiek izmantota, lai iegūtu visas servera uzaicinājuma saites.

Funkcija atgriež:

  • Uzaicinājuma URL
  • Izmantošanas reižu skaits
  • Atlikušais derīguma termiņš (ja piemērojams)

Tīmekļa āķa notikumi

Tālāk norādītos Discord notikumus var pārsūtīt uz tērzēšanas plūsmu:

  • Dalībnieks pievienojās serverim
  • Dalībnieks pameta serveri
  • Dalībnieks tika izmests
  • Dalībnieks tika bloķēts
  • Dalībnieks tika atbloķēts
  • Dalībnieka lomas mainījās
  • Ziņojums rediģēts
  • Ziņojums dzēsts
  • Reakcija pievienota
  • Reakcija noņemta
  • Slīpsvītras komanda izpildīta
  • Poga nospiesta

Tīmekļa āķa dati

Tīmekļa āķa dati ir pieejami:

discord_webhook["data"]
Lauks Apraksts
author_id Discord lietotāja ID ziņojuma autoram.
username Discord lietotājvārds.
nickname Servera segvārds.
channel_id Discord kanāla ID.
guild_id Discord servera ID.
message_id Discord ziņojuma ID.
content Ziņojuma teksts.
roles Dalībnieka lomu ID saraksts.
is_admin Norāda, vai dalībniekam ir administratora tiesības.

Atzvanīšanas

Kad lietotājs nosūta reakciju, tērzēšanā tiek saņemta atzvanīšana šādā formātā:

new_like ❤️ uid413984787162726410

Kur uid413984787162726410 ir tā lietotāja ID, kurš nosūtīja reakciju.

Kā iegūt pielāgotas emocijzīmes ID

Ja nosūtāt pielāgotu reakciju uz ziņojumu Discord kanālā, tiks saņemta atzvanīšana šādā formātā:

new_like beer:1479419477396291696 uid413984787162726410

Kur beer:1479419477396291696 ir reakcijas ID. Varat to kopēt, lai izmantotu ar reakciju saistītās funkcijās.

Kā iegūt ziņojuma ID

Jūs varat iegūt klienta ziņojuma ID no tīmekļa āķa, ja ir iespējots save_webhook. Piemērs:

data = discord_webhook["data"]
msg_id = data["id"]
result = discord_reply_to_message(msg_id, "Šī ir atbilde uz ziņojumu")

Papildu atzvanīšanas

Papildus new_like ir pieejamas šādas atzvanīšanas:

Atzvanīšana Apraksts
new_like {emoji} uid{user_id} Lietotājs pievienoja reakciju ziņojumam.
reaction_remove {emoji} uid{user_id} Lietotājs noņēma reakciju no ziņojuma.
message_delete mid{message_id} Ziņojums tika dzēsts.
message_edit mid{message_id} Ziņojums tika rediģēts. Atjauninātais ziņojuma teksts ir pieejams tīmekļa āķa datos.
member_join uid{user_id} Dalībnieks pievienojās serverim.
member_leave uid{user_id} Dalībnieks pameta serveri.
member_update uid{user_id} Dalībnieka informācija (piemēram, lomas vai segvārds) tika atjaunināta.
member_ban uid{user_id} Dalībnieks tika bloķēts no servera.
member_unban uid{user_id} Dalībnieks tika atbloķēts no servera.

Atzvanīšanas mainīgie

Lai nodrošinātu atbilstību esošajam Discord notikumu formātam, lietotāju un ziņojumu identifikatoros tiek izmantoti vēsturiski prefiksi:

  • Lietotāju ID tiek atgriezti kā uid{user_id}.
  • Ziņojumu ID tiek atgriezti kā mid{message_id}.

Šie prefiksētie identifikatori tiek izmantoti arī šādos mainīgajos:

  • message_from
  • internal_id
  • discord_webhook["data"]