API:E-Mail an Benutzer
| Diese Seite ist Teil der Dokumentation der MediaWiki action API. |
| Emailuser | ||
|---|---|---|
| Email a user. Dieses Modul kann nicht als Generator benutzt werden! | ||
| Präfix | Keine | |
| Erforderliche Rechte | sendemail | |
| nur Beitrag? | Ja | |
| generierte Hilfe | aktuell | |
| Version hinzugefügt |
| |
API documentation
Zeichen
Um eine E-Mail zu senden, wird ein E-Mail-Token (dt. Zeichen) benötigt. Dieses Token ist gleich dem Bearbeiten-Token und das gleiche für alle Empfänger, ändert sich jedoch bei jedem Login. Ein E-Mail-Token kann über action=query&meta=tokens oder über die folgende Methode erhalten werden:
| Ergebnis |
|---|
{
"batchcomplete": "",
"query": {
"tokens": {
"csrftoken": "7773cbfff263682c97ffc74b8672cbf25a5e0045+\\"
}
}
}
|
E-Mail an Benutzer senden
Du kannst eine E-Mail an Benutzer, die eine bestätigte E-Mail-Adresse haben, mit action=emailuser senden. E-Mail senden unterliegt Ratenbegrenzungen.
Parameter
target: Benutzer, an den die E-Mail gesendet wirdsubject: Der Betreff der Nachrichttext: Die Nachrichttoken: Das Token, das in der vorherigen Anfrage erhalten wurde. Achte darauf, das+als%2Bzu kodierenccme: Wenn gesetzt, wird eine Kopie der E-Mail an dich gesendet werden
Beispiele
| Ergebnis |
|---|
<?xml version="1.0" encoding="utf-8"?>
<api>
<emailuser result="Success" />
</api>
|
Beispielcode
Mögliche Fehler
Zusätzlich zu den üblichen Sachen:
| Code | Information |
|---|---|
| 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-Mailversand wurde deaktiviert |
| notarget | ⧼apierror-notarget⧽ |
| noemail | Dieser Benutzer hat keine gültige E-Mail-Adresse angegeben. |
| nowikiemail | Dieser Benutzer möchte keine E-Mails von anderen Benutzern erhalten. |
Prüfen des versandfertigen Status
Bevor du versuchst, eine E-Mail zu senden, ist es empfehlenswert, zu überprüfen, ob der Benutzer per E-Mail erreichbar ist. Um dies zu tun, kannst du eine Listenabfrage auf den Benutzer ausführen (oder auf mehrere Benutzer auf einmal). Hier ist ein Beispiel im Gebrauch mit Ajax:
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' );
} );
Wenn du von einem clientseitigen Skript testest, ist es auch möglich, einfach die Existenz des t-emailuser-Listenelements zu überprüfen:
emailable = $( '#t-emailuser' ).length ? true : false;
| Die folgende Dokumentation ist die Ausgabe von 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]