Handle call disconnect reason (mo/mt hangup, network error)

We now distinguish between MO hangup, MT hangup, or unexpected call termination (for example, network or modem error).