Explanation of In-Wallet Chat
The original idea for in-wallet chat was born from this hypothetical idea: Can we add a "Get Saved" button to the core wallet. The Get Saved button would appeal to those seeking Jesus, but have never actually been saved. A person might use it who is too shy to respond to an altar call, or maybe they will go through the process with us and we will help them understand what it means, then encourage them to get saved at church, etc. But I envisioned having a list of on-call priests capable of helping a person get saved, and if all of our Priests are offline, the "call for the priest" redirects the user to a web page with a list of Getting Saved resources (we might have 5 different to choose from - Billy Graham, Cioccolanti, Jesus-Christ.US, etc, and the user clicks from there). Of course, this flow requires us to have an in-wallet paging system to reach the priest, a list of on-call priests maintained in some type of 'registration' system in the chain, a chat initiation, a ringer, the ability for the priest to answer and chat with the user etc. This led to in-wallet chat; why don't we create the first native bitcoin chat client object so we can re-use this (IE in other coins, and of course for our purposes- General Chat Room, Private Chat, Page a Priest, Chat about a Proposal, etc).
So moving on, in version 1.0, we now have a General Chat Room and a Private Message Chat.
Note that you must set up your nickname in the config file first - set "nickname=your-name" and reboot.
PRIVATE MESSAGING
When you click Chat | PM, the wallet will ask you for the destination recipient nickname. Enter one that you know (from POG). The wallet will then Page the recipient 4 times, once per second. What is happening on the other end of the line is the recipient wallet will receive the request as long as their qt wallet is open and connected, even if their chat windows are closed, and will spring up a new chat window. This particular conversation is private between you and the recipient (however note that the actual messages are sent through the biblepay-network of nodes - and the messages are not currently encrypted - we will look into that issue later).
PUBLIC CHAT ROOM
When you click Chat | General, the wallet opens up a General chat room (we made this Chat object in a way that we will be able to have more rooms in the future). Anyone who enters the chat *during* the conversation will be seen as such-and-such entered the chat room. All participants can see the chat (as you might expect).
Version 1.1.7.1 is required to test this chat feature.
(Should be ready in approx 1 hour).