# pmsg - PocketPC messenger idea pocket messenger Chat through bluetooth, Wi-Fi, IrDA More of a learning project than anything useful (use IRC, XMPP, email...) **Ideea:** on first launch program should prompt you to make a (device-local) user account. The program will need a local cache directory: make it in the current running directory (most likely program files) and put stuff there. That user account will be local only and will contain: - Username (doesn't have to be unique since we can't track it anyway) - - ID - - How we actually track users between conversations; **This must be unique** - - Maybe generate it from Wi-Fi mac address + device name? Something like that - - Or get it from device S/N, anything identifiable - - Hash it and send it along with any message - - Profile picture - - Something small with reduced colors, probably 64x64 and 4-bit colour - - Send this along at the start of the chat maybe to reduce bandwidth needs? - - If somebody joins in a group chat after a user they won't see their profile picture - - Solution: Just send it (announce it, like a gratuitous ARP) whenever someone joins - - This could cause performance problems if there are a lot of people in a group chat and everybody sends their profile picture - - First, the client will have to check if they have a locally cached version of a user's profile picture based on their ID - - `Program: Do I have this profile picture in my cache directory?` - - `Program: If I do, I won't ask for a profile picture` - - Whenever a user changes their profile picture, they will announce it after a random amount of time to reduce bandwidth needs.