PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Private Nachrichten versenden


Andreas
09.08.2007, 17:27
Worum geht es hier?
Vielfach möchte man automatisch eine PN bei bestimmten Aktionen versenden (z.B. Newsletter, irgnedwelche Benachrichtigungen, etc.)
Diese Anleitung beschreibt wie man dies unter Nutzung von Standardfunktionalität erreichen kann

Und so geht es
Wie für viele andere Objekte, so gibt es auch für Private Nachrichten einen Datamanager.
Diese Klasse (vB_Datamanager_PM) sorgt dafür dass alle Eingabedaten geprüft und korrekt behandelt werden (Speicherplatz, eMail-Benachrichtigung, etc.). Darüberhinaus bietet Sie auch Einsteigspunkte für Plugins, so dass diese bei Verwendung der Klasse auch bei automatisch versandten PN funktionieren.

Beispiel
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------

Falls beim senden etwas schiefgeht, so wird dies im Array errors vermekt
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------

Wenn alles OK ist kann die Nachricht mit
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------

gespeichert werden.

Dann wird eine neue PN an newuser mit dem Inhalt


Hallo

Ich bin ein Bot und sende dir hiermit eine automatische Nachricht.
Viel Spaß damit :)


Die Nachricht wird dabei als von PN-Bot (Userid 1234) stammend angezeigt.

$botpermissions sollte die Rechte des absendenden Benutzers enthalten.

Um die Zustellung einer Nachricht zu erzwingen (egal ob der Empfänger PN erhalten möchte oder sein Postfach voll ist) kann man dies per
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
aktivieren. Dies sollte als erstes nach dem datamanager_init()-Aufruf erfolgen.

Es könneen per $pmdm->set_info() auch weitere Optionen gesetzt werden:


forward = 1/0 falls diese Nachricht eine weitergeleiteter Nachricht ist. Standard=0
savecopy = 1/0 um eine Kopie dieser Nachricht im Postausgang des Senderszu speichern, Standard=0
receipt = 1/0 um eine Lesebestätigung anzufordern, Standard=0
parentpmid = ID der PN auf welche diese Nachricht eine Antwort darstellt


Weiterhin können über $pmdm->set() eingestellt werden:

iconid = ID des Icons welches für diese Nachricht angezeigt werden soll, Standard=0
showsignature = 0/1 Gibt an ob die Signature des Absenders angezeigt werden soll, Standard=0
showsmilie = 0/1 Gibt an ob Smilies in Grafiken umgewnadelt werden sollen oder als Text dargestellt, Standard=1


Für mehrere Empfänger kann user1;user2;useer3 verwendet werden.

Falls aktiviert, so kann in message BBCode verwendet werden.

chatpalace24
21.09.2007, 06:45
Vielen Dank. Sowas hab ich grad gesucht :)

Hoffi
21.09.2007, 10:08
Wie sieht es aus mit einer PN an eine ganze Benutzergruppe?

Surviver
21.09.2007, 15:21
Per Query ale Benutzer der Gruppe suchen, und dann set_recipients

Mr.T
31.03.2008, 18:22
Hoi,

Entschuldigt das ich so doof nachfrage, aber wie genau muss ich das machen, weil ich verstehe das ehrlich gesagt nicht, ich bin schon lange auf der suche nach eine Art "ForenBot", der User bei Geburtstagen, den neuen User, aber auch bei z.B Abo ausläufen eine PN schreibt, aber so ganz verstehen tue ich das nicht :(

Könnt mir vielleicht jemand das für "Anfänger" erklären?

Vielen Dank im Voraus.

mfg

Mr.T