1. 03 4月, 2012 2 次提交
    • James Zhang's avatar
      freetdm: Add documentation for SS7 native bridge · 339c45b2
      James Zhang 提交于
      339c45b2
    • James Zhang's avatar
      freetdm: Clean up SS7 native bridge code to separate the call control, queuing and · b324f867
      James Zhang 提交于
               resource-cleanup responsibilities clearly between the 2 channels involved in the bridge
      
         - Each channel is responsible for clearning its own peer_data and event queue
           at the end of the call (when moving to DOWN state)
      
         - Each channel dequeues messages only from its own queue and enqueues messages
           in the peer's queue, with the only exception being messages received before
           the bridge is stablished (IAM for sure and possible SAM messages) because
           if the bridge is not yet stablished the messages must be queued by the channel
           in its own queue temporarily until the bridge is ready
      
         - When the bridge is ready it is the responsibility of the incoming channel to
           move the messages that stored temporarily in its own queue to the bridged peer queue
      
         - During hangup, each channel is responsible for moving itself to DOWN. The procedure
           however differs slightly depending on the hangup conditions
      
           If the user requests hangup (ie, FreeSWITCH) the request will be noted by setting the
           FTDM_CHANNEL_USER_HANGUP flag but will not be processed yet because call control is
           driven only by the link messages (so no hangup from ESL or command line allowed)
      
           When REL message comes, the channel receiving it must move to TERMINATING state and:
      
                 - If the user has not hangup yet (FTDM_CHANNEL_USER_HANGUP flag not set) then
                   notify the user via SIGEVENT_STOP and wait for the user to move to HANGUP
                   state by calling ftdm_channel_call_hangup() before sending RLC
      
                 - If the user did hangup already (FTDM_CHANNEL_USER_HANGUP flag is set) then
                   skip user notification and move to HANGUP state directly where the RLC message
                   will be sent
      
         - On HANGUP state the RLC is sent and the channel is moved to DOWN, final state
           The peer channel will forward the REL message and wait for RLC from the network, when
           RLC is received the channel can move straight to DOWN itself because the peer channel
           is completing its own shutdown procedure when it received the REL message
      b324f867
  2. 30 3月, 2012 1 次提交
  3. 27 3月, 2012 1 次提交
  4. 21 3月, 2012 3 次提交
  5. 20 3月, 2012 1 次提交
  6. 16 3月, 2012 2 次提交
  7. 15 3月, 2012 1 次提交
  8. 08 3月, 2012 1 次提交
  9. 24 2月, 2012 1 次提交
  10. 16 2月, 2012 6 次提交
  11. 31 1月, 2012 2 次提交
  12. 30 1月, 2012 5 次提交
  13. 27 1月, 2012 12 次提交
  14. 26 1月, 2012 2 次提交