Sessions expire after 30 minutes and drop the calls

Where can I change session expire settings? 30 minutes is a ludicrous amount of time to drop a call, I regularly spend a good couple hours on a phone, 30 minutes is too short of a time.

I’ve checked sip_custom.conf and sip_general_custom.conf but both are empty and as far as I know there are no options within the FreePBX web app to change these settings (which is ridiculous within itself. Why neglect to add that as an easily changeable option, just why?)

Can anyone help me out? FreePBX is becoming very user unfriendly.

FreePBX is becoming less user friendly? Please explain.

SIP Settings module exposes SIP settings so you don’t have to modify files for Global SIP changes.

FreePBX does not set any timer that expires a call in 30 minutes.

This is some type of interaction with your carrier that will have to be cured at the peer (trunk) level.

Without seeing a SIP trace on the dropped call it’s hard to comment any further.

Also you didn’t specify type of trunks, carriers, FreePBX or Asterisk version and how it was installed. If there are histrionics regarding the installation or an upgrade that’s useful information also.

As Scott said, there are no call timers in FreePBX. Never have been, never will be. Which is why there is no setting.

This is the error I’ve been getting whenever a call drops:

[2013-11-07 09:25:08] WARNING[13264] chan_sip.c: Session-Timer expired - [email protected]_SERVER:5060

the “Session-Timer expired” in the line is what makes me think there is a timer value that is out of order.

What can I do to gather information on this issue?

Any session timers will be on your router/pnat box you will need to read that manual.

Asterisk provides support for SIP Session Timers (RFC 4028) through parameters in sip.conf. To set them in FreePBX you can use the advanced SIP settings. SST’s are supposed to provide a keep-alive mechanism, not a timer to end the call at a pre-defined duration! However, they quite often don’t work properly and cause calls to drop. The simplest fix is to disable them with “session-timers=refuse”. You may find my article here of interest: