Hi Julian,
eigentlich brauchst keinen (weiteren) Timestamp (hast ja bereits einen für "abgeschickt"), sondern einfach nur ein Flag, ob der andere Benutzer wieder eine Rutsche Nachrichten abgeholt hat (= "hole Nachrichten mit Timestamp >= letztes Mal" (in Session oder DB für User mitmeißeln); alles was im JSON o. ä. zurückkehrt, bekommt in der DB die Flag für "gelesen"). Der Absender der Nachricht fragt hierbei immer auf seine Nachrichten ab - ist viel Traffic auf der Maschine, aber Du willst es wohl so. Demnach fragen beide Beteiligten immer auf "neue Nachrichten" sowie auf den Status "eigener, letzter Nachrichten".
Deinen Chat könntest Du aufwerten mit:
- Fensterschließen teilt anderem Gesprächspartner mit, dass der Teilnehmer die Unterhaltung verlassen hat (u. U. über eine ChatRoom-ID, die ein User bekommt, wenn er in einem Chat ist; bei mehreren Räumen equivalent)
- weitere Gesprächspartner nachträglich einfügen
Ich gehe davon aus, dass Du mit "Media", "Bilder", "Smilies" etc. bereits selbst dran gedacht hast.