To be honest we've got this integration going and it's been a bit of a hassle... You can get it going through a bit of magic and direct database manipulations, the module truly is not really meant for this sort of environment in my opinion.
I would personally advise against it if you have the means to develop it internally / using native other functionality available, i.e. event sockets etc.
As for call states etc it uses database backend to persist across reloads as long as you do not reload Sofia.