In sip_profiles/internal.xml (or a dedicated recording profile), ensure you accept incoming calls. Then, use a dialplan that writes the media to a file:
You need a gateway profile pointing to your Recording Server. In sip_profiles/external.xml : freeswitch siprec
<action application="set" data="sip_h_X-Recording-AgentID=1001"/> <action application="set" data="sip_h_X-Recording-Cause=compliance"/> The SRS can parse these headers to index the recording. FreeSWITCH can also receive SIPREC streams. When configured as an SRS, it simply accepts incoming SIP INVITEs from SRCs and writes the received RTP streams to disk. In sip_profiles/internal
<gateway name="siprec_srs"> <param name="proxy" value="10.0.0.100:5060"/> <param name="realm" value="recorder.local"/> <param name="register" value="false"/> <param name="expire-seconds" value="60"/> <param name="context" value="public"/> </gateway> To trigger SIPREC, use the record_session application. This tells FreeSWITCH to establish a separate SIPREC leg. FreeSWITCH can also receive SIPREC streams
To get started, review the official FreeSWITCH documentation on mod_sofia and experiment with the record_session application in a lab environment.