Here's how we do that. We use PolyCom SoundPoint IP phones, so we have this configuration file in their FTP directory:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Application SIP Mink 4.0.0.26884 09-Sep-11 12:32 -->
<!-- Created 19-09-2011 10:50 -->
<CONFIG>
    <dialplan dialplan.digitmap="5xx|6xx|85xx|[2-9]11|0T|*86|011xxx.T|[0-1][2-9]xxxxxxxxx|[2-9]xxxxxxxxx|[2-9]xxxT"/>
    <msg msg.bypassInstantMessage="1" />
    <mwi msg.mwi.1.subscribe="" msg.mwi.1.callBackMode="contact" msg.mwi.1.callBack="*86" />
  <se>
    <se.rt>
      <!-- <se.rt.custom1 se.rt.custom1.name="Low Double Trill" se.rt.custom1.ringer="ringer3" />-->
      <se.rt.custom1 se.rt.custom1.name="Medium Double Trill" se.rt.custom1.ringer="ringer5" />
      <se.rt.custom3 se.rt.custom2.name="Triplet" se.rt.custom3.ringer="ringer11" />
      <se.rt.custom2 se.rt.custom3.name="Medium Trill" se.rt.custom2.ringer="ringer4" />
    </se.rt>
  </se>
  <voIpProt>
    <voIpProt.SIP>
      <voIpProt.SIP.alertInfo voIpProt.SIP.alertInfo.1.value="internal" voIpProt.SIP.alertInfo.1.class="custom1"/>
      <voIpProt.SIP.alertInfo voIpProt.SIP.alertInfo.2.value="external" voIpProt.SIP.alertInfo.2.class="custom2"/>
      <voIpProt.SIP.alertInfo voIpProt.SIP.alertInfo.3.value="directory" voIpProt.SIP.alertInfo.3.class="custom3"/>
    </voIpProt.SIP>
  </voIpProt>
</CONFIG>

I can't remember how I figured that out, but I found that "ringer5" is known as "Medium Double Trill" in the PolyCom documentation, and that's the sound we wanted for internal calls. Just for fun, I also set the phones up to ring differently depending if the (outside) caller knew my extension, or found me through the "dial by name" directory.

In the file conf/dialplan/default.xml, I have these lines in the "Local Extension" extension:

        <condition field="${accountcode}" expression="^.+$">
          <action application="export" data="alert_info=internal"/>
        </condition>

If ${accountcode} is set, then the caller's phone is logged in to FreeSWITCH, so the call is internal. (This condition could also check if the caller_id_number is exactly 3 (or 4) digits.)

To get the "directory" ring, I have this extension:

    <extension name="directory" continue="true">
     <condition field="destination_number" expression="^411$">
      <action application="export" data="alert_info=directory"/>
      <action application="directory" data="default $${domain} default"/>
     </condition>
    </extension>

-- 
Steve

On Tue, Oct 14, 2014 at 4:41 AM, Mike <empx@gmx.de> wrote:
See https://wiki.freeswitch.org/wiki/Variable_alert_info

On 14.10.2014 13:07, Pedro Santos wrote:
> i want to differentiate the ring from internal and external calls. Can
> anyone help me ? tx
> it is not the ringback, but the ringing of the phone