diff --git a/doc/sphinx/lfun/ReceiveMsg.rst b/doc/sphinx/lfun/ReceiveMsg.rst
index 457235b..1734eb0 100644
--- a/doc/sphinx/lfun/ReceiveMsg.rst
+++ b/doc/sphinx/lfun/ReceiveMsg.rst
@@ -66,7 +66,9 @@
     In diesem Fall ist der Rueckgabe der kleinste von allen gerufenen
     ReceiveMsg() zurueckgelieferte Wert.
 
-    
+  Zur einfacheren Verwendung gibt es einige Wrapper-Funktionen, siehe
+  :doc:`ReceiveMultisense`, :doc:`ReceiveNotify`, :doc:`ReceiveSay` und
+  :doc:`ReceiveTeilemit`.
 
 RUeCKGABEWERT
 -------------
@@ -274,10 +276,10 @@
 ----------
 ::
 
+    Wrapper-Funktionen: :doc:`ReceiveMultisense`, :doc:`ReceiveNotify`, :doc:`ReceiveSay`, :doc:`ReceiveTeilemit`
     Verwandt: send_room(SE)
     Lfuns:    TestIgnore(L)
     Efuns:    tell_object(E), catch_tell(L), catch_msg(L)
               query_verb(E), query_once_interactive(E), break_string(SE)
 
-13.03.2016, Zesstra
-
+Letzte Aenderung: 07.01.2022
diff --git a/doc/sphinx/lfun/ReceiveMultisense.rst b/doc/sphinx/lfun/ReceiveMultisense.rst
new file mode 100644
index 0000000..cafa5bc
--- /dev/null
+++ b/doc/sphinx/lfun/ReceiveMultisense.rst
@@ -0,0 +1,86 @@
+ReceiveMultisense()
+===================
+
+FUNKTION
+--------
+
+  public int* ReceiveMultisense(struct msg_s* msgs,
+    string action = 0, int commontypes = 0)
+  
+DEFINIERT IN
+------------
+
+  /std/living/comm.c
+  /std/room/comm.c
+  /sys/living/comm.h
+
+ARGUMENTE
+---------
+
+  struct msg_s* msgs
+    Die Auszugebenden Nachrichten mit Zusatzinformationen. (S.u.)
+  string action
+    action wird als action an ReceiveMsg() weitergegeben.
+  int commontypes
+    Muss einen oder mehrere Veroderte messagetypes aus
+    :doc:`ReceiveMsg` enthalten. Diese werden bei jedem Aufruf von
+    :doc:`ReceiveMsg` mit dem jeweiligen Messagetyp aus msgs verodert.
+
+BESCHREIBUNG
+------------
+
+  sendet die in msgs angegebenen Nachrichten an den Empfaenger, bis eine
+  zugestellt werden konnte oder das ende von msgs erreicht wurde.
+
+  msgs ist aufgebaut wie folt:
+  Der struct msg_s ist in /std/living/comm_structs.c definiert. Er hat
+  die Eintraege string msg, int type, string prefix.
+  Das Array wird abgearbeitet, bis eine Nachricht zugestellt werden konnte
+  oder das Ende erreicht ist. msg wird vor der Ausgabe an
+  :doc:`../sefun/replace_personal` uebergeben, als erstes Objekt wird das aufrufende
+  Objekt uebergeben, als zweites this_player(), sofern vorhanden. msg wird
+  automatisch auf 78 Zeichen umgebrochen, vorhandene Zeilenumbrueche werden
+  dabei beibehalten. Fuer prefix findet keine Ersetzung statt.
+
+RUECKGABEWERT
+-------------
+
+  Ein Integer-Array mit folgenden Werten:
+
+  0
+    Der Rueckgabewert von :doc:`../lfun/ReceiveMsg`.
+  1
+    Information, welche Meldung zugestellt wurde. -1 steht fuer keine
+    Meldung, ein wert >= 0 fuer die jeweilige Position in msgs.
+
+  Raeume definieren standardmaessig ebenfalls ein ReceiveMultisense(), welches in
+  jedem Objekt im Raum ReceiveMultisense() mit den uebergebenen Argumenten aufruft.
+  In diesem Fall ist der Rueckgabe der kleinste von allen gerufenen
+  ReceiveMultisense() zurueckgelieferte Wert.
+
+BEISPIEL
+--------
+
+  .. code-block:: pike
+
+  inherit "/std/living/comm_structs";
+  this_player().ReceiveMultisense(
+    ({
+      (<msg_s>
+        msg: "Ein Drache landet neben Dir.",
+        type: MT_LOOK),
+      (<msg_s>
+        message: "Du hoerst ein rumpeln, als waere gerade etwas grosses "
+          "neben Dir eingeschlagen.",
+        type: MT_LISTEN),
+      (<msg_s>
+        msg: "Du spuerst einen heftigen Luftzug.",
+        type: MT_FEEL)})
+    MA_MOVE_IN);
+      
+SIEHE AUCH
+----------
+
+  :doc:`ReceiveMsg`, :doc:`../sefun/replace_personal`
+
+Letzte Aenderung: 07.10.2021, Bugfix
diff --git a/doc/sphinx/lfun/ReceiveNotify.rst b/doc/sphinx/lfun/ReceiveNotify.rst
new file mode 100644
index 0000000..d4171f4
--- /dev/null
+++ b/doc/sphinx/lfun/ReceiveNotify.rst
@@ -0,0 +1,56 @@
+ReceiveNotify()
+===============
+
+FUNKTION
+--------
+
+  public int ReceiveNotify(string msg, string action = 0)
+
+DEFINIERT IN
+------------
+
+  /std/living/comm.c
+  /sys/living/comm.h
+
+ARGUMENTE
+---------
+
+  string msg
+    Die auszugebende Meldung. Sie wird automatisch auf 78 Zeichen umgebrochen,
+    vorhandene Zeilenumbrueche werden dabei beibehalten.
+  string action
+    action wird als action an :doc:`ReceiveMsg` weitergegeben.
+
+BESCHREIBUNG
+------------
+
+  Sendet msg via ReceiveMsg() mit MT_NOTIFICATION | MSG_BS_LEAVE_LFS und den
+  uebergebenen bzw. voreingestellten Werten fuer prefix und action an den
+  Empfaenger.
+
+BEMERKUNGEN
+-----------
+
+  Bitte beachten: MT_NOTIFICATION ist fuer Kommandobestaetigungen,
+  Statusmeldungen o.ae., d.h. out-of-character Meldungen vorgesehen. Es soll
+  nicht als Sammeltyp fuer nicht-ignorierbare Meldungen verwendet werden,
+  dafuer gibt es MSG_DONT_IGNORE in Kombination mit den anderen Typen.
+
+RUECKGABEWERT
+-------------
+
+  Der Rueckgabewert von :doc:`../lfun/ReceiveMsg`.
+
+BEISPIEL
+--------
+
+  .. code-block:: pike
+
+  this_player().ReceiveNotify("Dazu reicht dein Level nicht aus.");
+
+SIEHE AUCH
+----------
+
+  :doc:`ReceiveMsg`
+
+Letzte Aenderung: 07.10.2021, Bugfix
diff --git a/doc/sphinx/lfun/ReceiveSay.rst b/doc/sphinx/lfun/ReceiveSay.rst
new file mode 100644
index 0000000..33ceee1
--- /dev/null
+++ b/doc/sphinx/lfun/ReceiveSay.rst
@@ -0,0 +1,92 @@
+ReceiveSay()
+============
+
+FUNKTION
+--------
+
+  public int* ReceiveSay(string msg, string prefix = 0,
+    struct msg_s sense_blocked =
+      ({(<msg_s>
+        msg: "@WER1 bewegt die Lippen, Du hoerst jedoch nichts.",
+        type: MT_LOOK)}))
+
+DEFINIERT IN
+------------
+
+  /std/living/comm.c
+  /std/room/comm.c
+  /sys/living/comm.h
+  
+ARGUMENTE
+---------
+
+  string msg
+    Die auszugebende Meldung. Sie wird vor der Ausgabe an
+    :doc:`../sefun/replace_personal` uebergeben, als erstes Objekt wird das aufrufende
+    Objekt uebergeben, als zweites this_player(), sofern vorhanden. msg wird
+    automatisch auf 78 Zeichen umgebrochen, vorhandene Zeilenumbrueche werden
+    dabei beibehalten.
+  string prefix
+    prefix wird als prefix an :doc:`ReceiveMsg` weitergegeben. Eine
+    Ersetzung mittels :doc:`replace_personal` findet nicht statt.
+    Wird kein Wert uebergeben, wird
+    previous_object().Name(WER, 1) + " sagt: " verwendet. Hierzu muss Name()
+    am aufrufenden Objekt definiert sein und etwas sinnvolles zurueckgeben.
+  struct msg_s sense_blocked
+    Ersatzmeldungen fuer taube Spieler. enthaelt Structs vom Typ msg_s.
+    Dieser ist in /std/living/comm_structs.c definiert und enthaelt die
+    Eintraege string msg, int type, string prefix.
+    Das Array wird von vorne nach hinten
+    abgearbeitet, bis eine Nachricht zugestellt werden konnte oder das Ende
+    erreicht ist. Auch hier findet fuer msg eine Ersetzung mittels
+    :doc:`../sefun/replace_personal` statt, fuer prefix nicht.
+
+BESCHREIBUNG
+------------
+
+  Sendet msg per :doc:`ReceiveMsg` mit den ueblichen Argumenten von
+  "sage" an den Empfaenger. D.h.: MT_LISTEN, MA_SAY, Name(WER, 1) + " sagt: ". Hierzu
+  muss das aufrufende Objekt :doc:`name` definiert haben und dort
+  etwas sinnvolles zurueckgeben. Falls ein anderer prefix gewaehlt wurde,
+  wird dieser statt Name(WER, 1)  " sagt: " verwendet. 
+
+RUECKGABEWERT
+-------------
+
+  Ein Integer-Array mit folgenden Werten:
+
+  0
+    Der Rueckgabewert von :doc:`../lfun/ReceiveMsg`.
+  1
+    Information, welche Meldung zugestellt wurde. -1 steht fuer msg, ein wert
+    >= 0 fuer die jeweilige Position in sense_blocked.
+
+  Raeume definieren standardmaessig ebenfalls ein ReceiveSay(), welches in
+  jedem Objekt im Raum ReceiveSay() mit den uebergebenen Argumenten aufruft.
+  In diesem Fall ist der Rueckgabe der kleinste von allen gerufenen
+  ReceiveSay() zurueckgelieferte Wert.
+
+BEISPIEL
+--------
+
+  .. code-block:: pike
+
+  SetProp(P_NAME, "Questgeber");
+  SetProp(P_GENDER, MALE);
+  this_player().ReceiveSay(
+    "Das hast Du prima gemacht, @WER2!",
+    Name(WER, 1) + " lobt Dich: ",
+    ({
+      (<message_> 
+        msg: "@WER1 nickt Dir laechelnd zu.",
+        type: MT_LOOK),
+      (<msg_s> 
+        msg: "Jemand klopft Dir lobend auf die Schulter.",
+        type: MT_FEEL)}));
+
+SIEHE AUCH
+----------
+
+  :doc:`ReceiveMsg`, :doc:`../sefun/replace_personal`, :doc:`name`
+
+Letzte Aenderung: 07.10.2021, Bugfix
diff --git a/doc/sphinx/lfun/ReceiveTeilemit.rst b/doc/sphinx/lfun/ReceiveTeilemit.rst
new file mode 100644
index 0000000..46648f3
--- /dev/null
+++ b/doc/sphinx/lfun/ReceiveTeilemit.rst
@@ -0,0 +1,54 @@
+ReceiveTeilemit()
+=================
+
+FUNKTION
+--------
+
+  public int ReceiveTeilemit(string msg)
+  
+DEFINIERT IN
+------------
+
+  /std/living/comm.c
+
+ARGUMENTE
+---------
+
+  string msg
+    Die auszugebende Meldung. Sie wird vor der Ausgabe an
+    :doc:`../sefun/replace_personal` uebergeben, als erstes Objekt wird das aufrufende
+    Objekt uebergeben, als zweites this_player(), sofern vorhanden. msg wird
+    automatisch auf 78 Zeichen umgebrochen, vorhandene Zeilenumbrueche werden
+    dabei beibehalten.
+
+BESCHREIBUNG
+------------
+
+  Sendet msg per :doc:`../lfun/ReceiveMsg` mit den ueblichen Argumenten von
+  "teile mit" an pl. D.h.: MT_COMM | MT_FAR, MA_TELL, Name(WER, 1) + " teilt
+  Dir mit: ". Hierzu muss das aufrufende Objekt :doc:`name` definiert
+  haben und dort etwas sinnvolles zurueckgeben. Der einzige Unterschied zum
+  normalen "teile mit" ist, dass zusaetzlich MSG_DONT_STORE uebergeben wird.
+  Da es sich hier ueblicherweise nicht um Kommunikation zwischen Spielern
+  handelt, muss die Nachricht nicht in die tmhist.
+
+RUECKGABEWERT
+-------------
+
+  Der Rueckgabewert von :doc:`../lfun/ReceiveMsg`.
+
+BEISPIEL
+--------
+
+  .. code-block:: pike
+
+  SetProp(P_NAME, "Questgeber");
+  SetProp(P_GENDER, MALE);
+  this_player().ReceiveTeilemit("Das hast Du prima gemacht, @WER2!");
+
+SIEHE AUCH
+----------
+
+  :doc:`ReceiveMsg`, :doc:`../sefun/replace_personal`, :doc:`name`
+
+Letzte Aenderung: 07.10.2021, Bugfix
