0

I make a call through my app and if the person I'm calling resets the call, then it continues for me. Although I thought that End/Released would be called, but apparently not

In their application there is a reaction to the reset of the call. I didn't find the right one among the call states (except for End/Released, but they are not called)

Here is a list of states:

///`State` enum represents the different states a call can reach into. 
    public enum State:Int
    {
        /// Initial state. 
        case Idle = 0
        /// Incoming call received. 
        case IncomingReceived = 1
        /// PushIncoming call received. 
        case PushIncomingReceived = 2
        /// Outgoing call initialized. 
        case OutgoingInit = 3
        /// Outgoing call in progress. 
        case OutgoingProgress = 4
        /// Outgoing call ringing. 
        case OutgoingRinging = 5
        /// Outgoing call early media. 
        case OutgoingEarlyMedia = 6
        /// Connected. 
        case Connected = 7
        /// Streams running. 
        case StreamsRunning = 8
        /// Pausing. 
        case Pausing = 9
        /// Paused. 
        case Paused = 10
        /// Resuming. 
        case Resuming = 11
        /// Referred. 
        case Referred = 12
        /// Error. 
        case Error = 13
        /// Call end. 
        case End = 14
        /// Paused by remote. 
        case PausedByRemote = 15
        /// The call's parameters are updated for example when video is asked by remote. 
        case UpdatedByRemote = 16
        /// We are proposing early media to an incoming call. 
        case IncomingEarlyMedia = 17
        /// We have initiated a call update. 
        case Updating = 18
        /// The call object is now released. 
        case Released = 19
        /// The call is updated by remote while not yet answered (SIP UPDATE in early
        /// dialog received) 
        case EarlyUpdatedByRemote = 20
        /// We are updating the call while not yet answered (SIP UPDATE in early dialog
        /// sent) 
        case EarlyUpdating = 21
    }
steind.VY
  • 333
  • 2
  • 11

1 Answers1

-2

If the remote end terminates the call, you should go into End and then Released states. Check your logs to see if you received the BYE. If not, check the remote end logs or your server logs to see why you didn't received it.

Viish
  • 434
  • 4
  • 12
  • If the interlocutor puts a call during the conversation, then the END state works out. I meant the situation when the interlocutor has a call in front of his eyes and he does not answer it, but presses the reset button (reject the call), then for some reason the END/ERROR/RELEASED state is not intercepted, and the person who is calling continues the call – steind.VY Jul 11 '23 at 09:23