In JTAPI, there's even a device state server which allows you to get 4 simple events indicating when the phone status changes to one of the following: idle, ringing, active, held.
However, if you need to know more than that (e.g. who is calling if a phone is in ringing state), then you'll run into the wall I've tried to crack with my head: JTAPI events are not necessarily delivered in the order you'd expect.. so for instance you might et a device ringing event, but if you then try to get all calls on the device during the event callback, you won't see any calls, as the actuall CallEv has yet to be delivered. So, for an adavanced BLF, you'll need to process CallEv's and derive the phone status from that (you can query the phone status during the callback that gets you the CallEvs, but it's probably the same problem in reverse order.. you might have gotten the CallEv but not the device state event yet).
I'm not able to access my old voice mail messages all of a sudden. The recording says something like 'the message is currently not available'. This has never happened before in all the years I have been using this system. I have t...