A geochat is a public chat bound to a geographic location. This new entity was added in API layer 4.
Handling geochats is in many respects similar to conventional personal messages but there are some critical differences.
Any user can find any geochat if he/she is not far from the location this geochat is bound to.
Entire communication history within a geochat is available to any user - even those messages that were created a long time before this user entered the geochat.
It is possible to search for geochats within an indicated search radius.
There are user labels in geochats, called checkins. It is a service message with no text that a user has appeared in a location bound to a geochat.
It is better not to check-in with one geochat more frequent that once in an hour.
Broadly speaking, in usual chats every user has its own copy of every message located in the personal inbox. While in geochats each message is stored only once in the geochat inbox. Changes in the geochat inbox do not affect pts of the user's one.
Since geochats are public, the number of participating users is unlimited. Therefore it makes no sense to notify all N of participants about every message. So each time new participants join, older ones can be removed from the end of the list.