Sometimes, registering with invalid parameters can cause fargo to get confused. This is because the signin code is more complicated than it should be, and contains bugs.
my register-and-signin branch does a bit of cleaning up and documenting how everything works.
Eventually, making Connection more like Call would simplify the signin code path quite a lot, but that's far too much refactoring for me right now.
There is a slight limitation in how well we can do error handling because sofiasip doesn't emit ConnectionError, so if sofiasip emits StatusChanged(Disconnected, None_Specified) we will always say "No reason specified. Please check your legacy parameters."
Adding some automated tests might be a good idea before we ship this, as all testing so far has been by hand.
Rebased and cleaned up http://git.collabora.co.uk/?p=user/alsuren/telepathy-fargo.git;a=shortlog;h=refs/heads/register-and-signin to make it easier to review.