Monal is developed and maintained by Anurodh Pokharel in Boston. He can be reached at firstname.lastname@example.org. Monal is written completely from scratch in Cocoa and does not use any libraries for the XMPP protocol implementation. The wonderful Monal icon was created by Ayush Pokharel.
Many icons are from Joseph Wain‘s excellent Glyphish Pro set. Free icons are used under the creative commons attribution license
The Jingle VOIP functions use JRTPlib by Jori Liesenborgs for RTP. VOIP wouldn’t have been possible without it.
Special thanks also goes to members of the WebEx Developer Program at Cisco, who were incredibly helpful setting up accounts to test compatibility. The WebEx support would not have been possible without them.
Adium was the inspiration for this program and it’s debug output log was used very heavily when initially studying XMPP.
Monal is more secure than other iOS instant messaging programs. Since it is a direct client, it connects directly to the server you have entered without going through a middle man. The lack of a middle man is important for the following reasons.
Protect your password
We all know that you should never give your work or personal IM username and password to any website that asks for it. This is even more important when you use the same username and password for email or corporate login systems. Similarly, this information should never given any random app that asks for it.
Many iOS apps that support push messaging make a copy of login information and store it in a database on their own server. These apps are never directly connected to the IM service but to a middle man. The middle man keeps the username and password of all users. If and when you stop using the IM client, the middle man will still have all of this information.
This is an incredibly dangerous practice. The safety of a user’s personal information is entirely dependent on the security and trustworthiness of individuals who have access to these databases on a daily basis.
Protect your conversations
The middle man services also often have copies of all instant messages sent using the service. They send push notifications by logging into your account from their servers, reading IMs and forwarding them to you. For anything out of the most casual conversation this is unacceptable.
Protect your privacy
As the developer of Monal I have decided to keep it free and not include ads and tracking software. How many people use Monal? A lot. Thousands and thousands of people all over the world (Hello, Antarctica!). However, all I know is what the Apple download/upgrade counter shows and what people tell me in emails. Much the same way I have objections to ads in my software, I do not like the “metrics” software and libraries. Unlike many other iOS apps, Monal does not contain and will never contain user tracking software.
The current list of bugs and feature requests is in the issue tracker:
There are two ways you can report a bug or request a feature. The preferred way is by going directly to the reporting system:
For Monal: http://redmine.monal.im/projects/monal/issues/new
For Sleeptrack: http://redmine.monal.im/projects/sleeptrack/issues/new
You do not have to create an account to submit something. However, if you would like to stay notified on the issue or expect to submit more in the future, I would recommend creating an account.
Alternatively, you can send an email to email@example.com or on Twitter, @monalxmpp
Openfire, Jabberd, ejabberd,prosody etc are all standard XMPP (Jabber) servers.
When setting up a standard XMPP/Jabber account, select XMPP in the Accounts tab.
In the account set up screen first try entering your username under Jabber ID. The username is almost always like an email address and would look something like firstname.lastname@example.org. Enter the password and enable the account. After saving and returning to the accounts page Monal will try to connect. For simple configurations with one server and domain this will automatically work.
If this does not work, edit the saved account by tapping on it in the Accounts tab. Scroll down and look at the Advanced Settings. It is highly recommended that you check with the XMPP server administrator to determine what the server, port and SSL settings should be. The resource does not matter. Manually enter the new server name and port and enable/disable SSL. Save by returning back to Accounts. Monal should now correctly connect.
Common quick fixes
1. If you are not sure about the SSL setting, try once with it on and off. if it works with both, always turn SSL on if it works.
2. The port is almost always 5222. Some SSL systems require 5223. Normally it is never 5223 unless SSL is also enabled.
3. It is possible your set up is different. In some configurations, username is just a name without a domain. Check with your IM server administrator to find out how it should be
Facebook chat is possible after creating a Facebook username. If you haven’t already done so, go to http://www.facebook.com/username and create a username.
In Monal, select Accounts and then Facebook under Add New Account
In the following page, enter the facbeook username under Jabber ID and password and enable the account. The Jabber ID will always be in the form email@example.com. The password is the regular facebook password for the account. Leave all other settings alone.
When first logging in, it is possible Monal will be slower on older iPhones as it downloads all the pictures for every facebook friend who is online. This is only happens on the first login.
Cisco Webex connections are standard XMPP connections. To set up a new connection, go to the accounts tab and select XMPP connection.
Here you need to enter your Jabber ID. This is the Webex login this would be in the form firstname.lastname@example.org. Enter your password and then enable the account. Return to the accounts screen and it should auto connect.
You do not ordinarily need to adjust any other settings.
The resource setting does not matter and the port setting and server settings should be left alone.