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
