API:Uživatel e-mailu
Tato stránka je součástí dokumentace k API Action MediaWiki. |
Emailuser | ||
---|---|---|
Email a user. Tento modul nelze použít jako zdroj. | ||
Předpona | žádná | |
Požadovaná práva | sendemail | |
Pouze příspěvek? | Ano | |
Zdroj nápovědy | Aktuální | |
Přidaná verze |
|
Token (symbol)
K odeslání e-mailu je vyžadován e-mailový token. Tento token se rovná tokenu úprav a je stejný pro všechny příjemce, ale mění se při každém přihlášení. E-mailové tokeny lze získat na action=query&meta=tokens nebo pomocí následující metody:
Získání e-mailového tokenu
Výsledek |
---|
{
"batchcomplete": "",
"query": {
"tokens": {
"csrftoken": "7773cbfff263682c97ffc74b8672cbf25a5e0045+\\"
}
}
}
|
Odesílání e-mailů uživatelům
Můžete poslat e-mail uživatelům, kteří mají potvrzenou e-mailovou adresu s action=emailuser. Odesílání e-mailů podléhá limitům sazby.
Parametry
target
: Uživatel, kterému chcete poslat e-mailsubject
: Předmět zprávytext
: Zprávatoken
: Token získaný v předchozím požadavku. Dejte pozor, abyste zakódovali+
jako%2B
ccme
: Pokud je nastaveno, bude vám zaslána kopie e-mailu
Příklady
Odeslání e-mailu na User:Catrope
Výsledek |
---|
<?xml version="1.0" encoding="utf-8"?>
<api>
<emailuser result="Success" />
</api>
|
Ukázkový kód
Možné chyby
Kromě obvyklých věcí :
Kód | Popis |
---|---|
cantsend | You are not logged in, you do not have a confirmed email address, or you are not allowed to send email to other users, so you cannot send email. |
blockedfrommail | You have been blocked from sending email. |
usermaildisabled | E-mail uživatele byl zakázán |
notarget | You have not specified a valid target for this action. |
noemail | Tento uživatel nezadal platnou e-mailovou adresu. |
nowikiemail | Tento uživatel si nepřeje dostávat e-maily od ostatních uživatelů. |
Kontrola stavu odeslání e-mailem
Před pokusem o odeslání e-mailu se doporučuje nejprve zkontrolovat, zda je uživatel schopen odeslat e-mail. Chcete-li to provést, můžete provést dotaz na seznam na uživatele (nebo několik uživatelů najednou). Zde je příklad použití Ajaxu:
new mw.Api().get( {
action: 'query',
list: 'users',
ususers: mw.config.get( 'wgTitle' ),
usprop: 'emailable',
rawcontinue: ''
} ).done( function( getEmailable ) {
alert( ( getEmailable.query.users[ 0 ][ 'emailable' ] !== undefined ) ? 'emailable' : 'not emailable' );
} );
Pokud testujete ze skriptu na straně klienta, je také možné jednoduše zkontrolovat existenci položky seznamu t-emailuser:
emailable = $( '#t-emailuser' ).length ? true : false;
Následující dokumentace je výstupem Special: |
action=emailuser
- This module requires read rights.
- This module requires write rights.
- This module only accepts POST requests.
- Source: MediaWiki
- License: GPL-2.0-or-later
Email a user.
- target
User to send the email to.
- This parameter is required.
- subject
Subject header.
- This parameter is required.
- text
Email body.
- This parameter is required.
- ccme
Send a copy of this mail to me.
- Type: boolean (details)
- token
A "csrf" token retrieved from action=query&meta=tokens
- This parameter is required.
- Send an email to the user WikiSysop with the text Content.
- api.php?action=emailuser&target=WikiSysop&text=Content&token=123ABC [open in sandbox]