Digium/Sangoma D80 and freePBX - still a mission impossible? Seems not ;)

The Digium/Sangoma D80 is a very interesting phone with a reliable touchscreen and a reasonable price. The problem is that it is incompatible with freePBX at the current stage.
The Endpoint Manager is supposed to support it, yet the phone has no contacts, no phonebook and the status displays an error. Blf works though.
The Digium phones config module (Asterisk DPMA) with xml-config files only partly works. No status, no blf. With a script it can use the freePBX contact manager.

So I decided to combine config files of both, Digium phone module and EPM. The D80 works now with one exception, its presence status. BLF is functional…phonebook too!

Maybe someone of the experts could offer some hints, why the D80 cannot recognize its status, whereas the e.g. D65 can (same settings).
The settings from here have been applied
https://wiki.asterisk.org/wiki/display/DIGIUM/Advanced+DPMA+Configuration

By the way, there are several translation issues (German)…if someone tells me, where to report them, I will…

Thanks

ok…I was wrong…
I set up a completely new freePBX 15 machine and set the Digium phones config module to easy-mode-disable. I added my config files (advanced DPMA xml) and all of a sudden it looks like this!

Presence status works!!! So everything works :smiley:
My previous freePBX machine was originally a v14 and I updated it to v15. Another difference is that the previous machine uses Asterisk 13, the new one Asterisk 16. It is possible that I broke something on the old freePBX server without knowing. I realized that I could not set the presence state in UCP too (for any extension). To be precise…I could set the presence to e.g. unavailable, but the UCP-GUI switched back to “offline”. Core show hints showed that the presence status was switched to unavailable, though. Dont know what it was, yet I am happy that the D80 seems to be ready to go…with freePBX 15 and Asterisk 16 and advanced DPMA (without EPM) :grinning:

1 Like

This is a working MAC.cfg-file for the Digium-D80 (Digium phones config module, easy-mode-off, advanced DPMA)…BE CAREFUL…change the locale setting back to english before use!!!

<?xml version="1.0" ?>
<config>
  <setting id="config_server_url" value="sip:[email protected]:5060;transport=udp" />
  <setting id="in_switchvox_environment" value="0" />
  <setting id="server_environment" value="DPMA" />
  <setting id="login_password" value="phone-password" />
  <setting id="time_zone" value="Europe/Vienna" />
  <setting id="time_source" value="ntp" />
  <setting id="ntp_server" value="0.at.pool.ntp.org" />
  <setting id="ntp_resync" value="86400" />
  <setting id="accept_local_calls" value="any" />
  <setting id="transport_udp_enabled" value="1" />
  <setting id="transport_udp_port" value="5060" />
  <setting id="transport_tcp_enabled" value="1" />
  <setting id="transport_tcp_port" value="5060" />
  <setting id="network_enable_dhcp" value="1" />
  <setting id="network_static_ip_address" value="" />
  <setting id="network_subnet_mask" value="" />
  <setting id="network_default_gateway" value="" />
  <setting id="network_domain_name" value="" />
  <setting id="network_primary_dns_server" value="" />
  <setting id="network_secondary_dns_server" value="" />
  <setting id="network_disable_arping" value="0" />
  <setting id="allow_insecure_ssl" value="0" />
  <setting id="logo_file" value="user" path="/user_image.png" url="" md5="dabf50a92e45764a0be1e44dd3a35215" />
  <setting id="display_mc_notification" value="1" />
  <setting id="display_pickup_notification" value="1" />
  <setting id="hide_completed_elsewhere" value="1" />
  <setting id="brightness" value="10" />
  <setting id="contrast" value="10" />
  <setting id="dim_backlight" value="1" />
  <setting id="backlight_timeout" value="30" />
  <setting id="backlight_dim_level" value="2" />
  <setting id="ringer_volume" value="5" />
  <setting id="lock_ringing_volume" value="0" />
  <setting id="speaker_volume" value="5" />
  <setting id="handset_volume" value="5" />
  <setting id="headset_volume" value="5" />
  <setting id="reset_call_volume" value="0" />
  <setting id="active_ringtone" value="Chimes" />
  <setting id="headset_answer" value="0" />
  <setting id="enable_blf_on_unused_line_keys" value="1" />
  <setting id="name_format" value="last_first" />
  <setting id="contacts_max_subscriptions" value="10" />
  <setting id="blf_contact_group" value="Default" />
  <setting id="sip_qos" value="3" />
  <setting id="rtp_qos" value="6" />
  <setting id="pc_qos" value="1" />
  <setting id="log_level" value="debug" />
  <setting id="web_ui_enabled" value="0" />
  <setting id="sip_dscp" value="24" />
  <setting id="rtp_dscp" value="46" />
  <setting id="udp_ka_interval" value="60" />
  <setting id="enable_check_sync" value="1" />
  <setting id="locale" value="de_DE" />
  <setting id="ehs" value="auto" />
  <setting id="ring_headset_only" value="0" />
  <setting id="call_waiting_tone" value="1" />
  <setting id="pc_vlan_id" value="" />
  <setting id="lan_port_mode" value="auto" />
  <setting id="pc_port_mode" value="auto" />
  <setting id="8021x_passthrough" value="0" />
  <setting id="8021x_eapol_on_disconnect" value="0" />
  <setting id="8021x_method" value="" />
  <setting id="8021x_identity" value="" />
  <setting id="8021x_anonymous_identity" value="" />
  <setting id="8021x_password" value="" />
  <setting id="8021x_client_cert" url="" value="" />
  <setting id="8021x_root_cert" url="" value="" />
  <setting id="8021x_debug" value="" />
  <setting id="parking_lot_extension" value="70" />
  <setting id="parking_lot_enable_blind_transfer" value="1" />
  <setting id="use_call_photos" value="1"  url="" />
  <setting id="expansion_enable" value="0" type="EXP100" page_indicators="0" />
      <appconfig id="appscreen">
        <application id="bluetooth" />
        <application id="voicemail" />
        <application id="parking" />
        <application id="status" />
        <application id="contacts" />
        <application id="call_log" />
        <application id="forward_calls" />
        <application id="LogOut" />
        <auto_start />
    </appconfig>
    <appconfig id="phonemenu">
      <auto_start />
    </appconfig>
    <appconfig id="contacts">
        <account account_id="21" username="21" password="password" appserver="dasp://192.168.0.34/json" apiformat="json"/>
        <display_rules>
            <display_rule id="0" action_id="monitor" show="0"/>
            <display_rule id="1" action_id="monitor" target_status="on_the_phone" show="1"/>
            <display_rule id="2" action_id="intercom" show="0"/>
            <display_rule id="3" action_id="intercom" target_status="idle" show="1"/>
            <display_rule id="4" action_id="dial_vm" phone_state="idle" show="0"/>
            <display_rule id="5" action_id="transfer_vm" show="0"/>
            <display_rule id="6" action_id="transfer_vm" phone_state="transfer" show="1"/>
        </display_rules>
        <settings can_transfer_vm="1" name_format="last_first" use_local_storage="0" preferred_contact_group="" />
        <settings in_switchvox_environment="0" />
        <auto_start />
    </appconfig>
    <appconfig id="status">
        <account account_id="21" username="21" password="password" appserver="dasp://192.168.0.34/json" apiformat="json"/>
        <auto_start />
    </appconfig>
    <appconfig id="call_log">
        <account account_id="21" username="21" password="password" appserver="dasp://192.168.0.34/json" apiformat="json"/>
        <auto_start />
    </appconfig>    
    <appconfig id="parking">
        <account account_id="21" username="21" password="password" appserver="dasp://192.168.0.34/json" apiformat="json"/>
        <auto_start />
    </appconfig>
    <appconfig id="voicemail">
        <account account_id="21" username="21" password="password" appserver="dasp://192.168.0.34/json" apiformat="json"/>
        <settings require_password="0" />
        <auto_start />
    </appconfig>
        <appconfig id="LogOut">
        <auto_start />
    </appconfig>
    <events>
        <event id="digium.incomingCall.voicemail" action="app" />
        <event id="digium.parkingLot.parked" action="app"/>
    </events>
  <contacts url ="http://192.168.0.34/digium_phones/blf-list.xml" id="internal" />
  <contacts url ="http://192.168.0.34/digium_phones/phonebook-1.xml" id="external" />
  <smart_blf>
  
    <blf_items url="http://192.168.0.34/digium_phones/21-blf.xml" />
      
  </smart_blf>
  <codecs>
    <codec id="PCMU" priority="11" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="0" />
    <codec id="PCMA" priority="125" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
    <codec id="G722" priority="255" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
    <codec id="G726-32" priority="7" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="0" />
    <codec id="G729" priority="4" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="0" />
    <codec id="L16" priority="2" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="0" />
    <codec id="L16-256" priority="1" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="0" />
  </codecs>
  <ringtones>
    <tones>
      <tone id="Alarm" display="Alarm" type="phone" />
      <tone id="Chimes" display="Chimes" type="phone" />
      <tone id="my_ringtone" display="my_ringtone" url="http://192.168.0.34/digium_phones/user_ringtone_1.raw" md5="abc123" type="user"/>
      <tone id="Digium" display="Digium" type="phone" />
      <tone id="GuitarStrum" display="Guitar Strum" type="phone" />
      <tone id="Jingle" display="Jingle" type="phone" />
      <tone id="Office" display="Office" type="phone" />
      <tone id="Office2" display="Office 2" type="phone" />
      <tone id="RotaryPhone" display="Rotary Phone" type="phone" />
      <tone id="SteelDrum" display="Steel Drum" type="phone" />
      <tone id="Techno" display="Techno" type="phone" />
      <tone id="Theme" display="Theme" type="phone" />
      <tone id="Tweedle" display="Tweedle" type="phone" />
      <tone id="Twinkle" display="Twinkle" type="phone" />
      <tone id="Vibe" display="Vibe" type="phone" />
      </tones>
  <alerts>
      <alert alert_info="&lt;http://127.0.0.1&gt;;info=normal" ringtone_id="Chimes" ring_type="normal" />
      <alert alert_info="&lt;http://127.0.0.1&gt;;info=Internal" ringtone_id="Digium" ring_type="normal" />
      <alert alert_info="&lt;http://127.0.0.1&gt;;info=Door" ringtone_id="Steeldrum" ring_type="normal" />
      <alert alert_info="&lt;http://127.0.0.1&gt;;info=ring-answer" ringtone_id="Theme" ring_type="ring-answer" />
      <alert alert_info="&lt;http://127.0.0.1&gt;;info=intercom"  ringtone_id=""  ring_type="answer" />
      <alert alert_info="&lt;http://127.0.0.1&gt;;info=visual"  ringtone_id=""  ring_type="visual" />
  </alerts>
  </ringtones>
  <firmwares>
      <firmware model="D80" version="1_12_8" url="http://192.168.0.34/digium_phones/firmware_1_12_8_package/1_12_8_D80_firmware.eff" />
  </firmwares>
  <multicastpage>
  </multicastpage>
  <accounts>
    <account index="0" status="1" register="1" account_id="21" username="21" authname="21" password="password" passcode="password" line_label="Reinhard-2" caller_id="Reinhard-2" dial_plan="xx.|*xx.|**xx." visual_voicemail="1" voicemail="11" outbound_proxy="" outbound_port="" subscription_extension="auto_hint_21" needMwiSubscription="1" >
      <host_primary
        server="192.168.0.34"
        port="5060"
        transport="udp"
        reregister="300"
        retry="25"
        num_retries="5"
        />
      <host_alternate
        server=""
        port="5060"
        transport="udp"
        reregister="300"
        retry="25"
        />
  <permission id="use_voicemail" value="1" />
  <permission id="send_to_voicemail" value="0" />
  <permission id="ignore_calls" value="1" />
  <permission id="record_own_calls" value="1" />
  <setting id="parking_lot_extension" value="70" />
  <setting id="parking_lot_enable_blind_transfer" value="1" />
  <setting id="use_call_log_api" value="0" />
  <setting id="call_log_fetch_entries" value="50" />
    </account>
  </accounts>
    <keymap>
        <state id="idle">
            <softkeys>
             <key id="0" action="missed_or_call_log" />
             <key id="1" action="show_application" label1="_CONTACTS">
                <arg>contacts</arg>
             </key>
             <key id="2" action="show_application" label1="_PARKED_CALLS">
                <arg>parking</arg>
             </key>
             <key id="3" action="show_application" label1="_STATUS">
                <arg>status</arg>
             </key>
             <key id="4" action="forward_calls" label1="_FORWARD" />
             <key id="5" action="menu" />
            </softkeys>
        </state>
        <state id="hold">
            <softkeys>
                <key id="0" action="resume"/>
                <key id="1" action="none"/>
                <key id="2" action="none"/>
                <key id="3" action="end_call"/>
            </softkeys>
        </state>
        <state id="hold/transfer">
            <softkeys>
                <key id="0" action="resume"/>
                <key id="1" action="show_application" label1="_CONTACTS">
                    <arg>contacts</arg>
                </key>
                <key id="2" action="none"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="hold/conference">
            <softkeys>
                <key id="0" action="resume"/>
                <key id="1" action="split_conference"/>
                <key id="2" action="none"/>
                <key id="3" action="end_call"/>
            </softkeys>
        </state>
        <state id="hold/preconference">
            <softkeys>
                <key id="0" action="resume"/>
                <key id="1" action="show_application" label1="_CONTACTS">
                    <arg>contacts</arg>
                </key>
                <key id="2" action="none"/>
                <key id="3" action="end_call"/>
            </softkeys>
        </state>
        <state id="incoming">
            <softkeys>
                <key id="0" action="accept_call"/>
                <key id="1" action="reject_call"/>
                <key id="2" action="transfer_call"/>
            </softkeys>
        </state>
        <state id="incoming/transfer">
            <softkeys>
                <key id="0" action="show_application" label1="_CONTACTS">
                    <arg>contacts</arg>
                </key>
                <key id="1" action="none"/>
                <key id="2" action="none"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="connected">
            <softkeys>
               <key id="0" action="conference" />
               <key id="1" action="park_call" />
               <key id="2" action="record_call" />
               <key id="3" action="end_call" />
            </softkeys>
        </state>
        <state id="connected/conference">
            <softkeys>
                <key id="0" action="none"/>
                <key id="1" action="split_conference"/>
                <key id="2" action="record_call"/>
                <key id="3" action="end_call"/>
            </softkeys>
        </state>
        <state id="connected/transfer">
            <softkeys>
                <key id="0" action="transfer_call"/>
                <key id="1" action="none"/>
                <key id="2" action="none"/>
                <key id="3" action="end_call"/>
            </softkeys>
        </state>
        <state id="dial">
            <softkeys>
                <key id="0" action="toggle_url_number"/>
                <key id="1" action="show_application" label1="_CONTACTS">
                    <arg>contacts</arg>
                </key>
                <key id="2" action="none"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="dial/conference">
            <softkeys>
                <key id="0" action="none"/>
                <key id="1" action="show_application" label1="_CONTACTS">
                    <arg>contacts</arg>
                </key>
                <key id="2" action="none"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="dial/transfer">
            <softkeys>
                <key id="0" action="none"/>
                <key id="1" action="show_application" label1="_CONTACTS">
                    <arg>contacts</arg>
                </key>
                <key id="2" action="none"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="dialing">
            <softkeys>
                <key id="0" action="make_call"/>
                <key id="1" action="backspace"/>
                <key id="2" action="none"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="dialing/conference">
            <softkeys>
                <key id="0" action="make_call"/>
                <key id="1" action="show_application" label1="_CONTACTS">
                    <arg>contacts</arg>
                </key>
                <key id="2" action="backspace"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="dialing/transfer">
            <softkeys>
                <key id="0" action="transfer_call"/>
                <key id="1" action="make_call"/>
                <key id="2" action="backspace"/>
                <key id="3" action="cancel_call"/>
            </softkeys>
        </state>
        <state id="failed">
            <softkeys>
                <key id="0" action="none"/>
                <key id="1" action="none"/>
                <key id="2" action="none"/>
                <key id="3" action="clear_call"/>
            </softkeys>
        </state>
        <state id="calling">
            <softkeys>
                <key id="0" action="none"/>
                <key id="1" action="none"/>
                <key id="2" action="none"/>
                <key id="3" action="end_call"/>
            </softkeys>
        </state>
  </keymap>
</config>

location is /etc/asterisk/digium_phones

blf-list.xml at /var/www/html/digium_phones (example, replace ext_name with original name of extension)

<phonebooks>
  <contacts group_name="Default" editable="1" id="0">
    <contact
	  id="0"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="11"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="11" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="11" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="11" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="1"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="12"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="12" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="12" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="12" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="2"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="13"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="13" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="13" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="13" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="3"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="14"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="14" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="14" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="14" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="4"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="15"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="15" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="15" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="15" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="5"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="17"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="17" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="17" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="17" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="6"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="18"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="18" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="18" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="18" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="7"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="19"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="19" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="19" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="19" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="8"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="20"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="20" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="20" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="20" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
    <contact
	  id="9"
	  prefix=""
	  first_name=""
	  second_name=""
	  last_name="ext_name"
	  suffix=""
	  contact_type="sip"
	  organization=""
	  job_title=""
	  location=""
	  notes=""
	  account_id="21"
	  subscribe_to="sip:[email protected]"
	  >
	  <emails>
	  </emails>
	  <actions>
		<action id="pickupcall" dial="21" dial_prefix="**" label="Pickup" name="Pickup" />
		<action id="primary" dial="21" dial_prefix="" label="ext_name" name="ext_name" />
		<action id="itcm" dial="21" dial_prefix="*80" label="ITCM" name="ITCM" />
	  </actions>
	</contact>
  </contacts>
</phonebooks>

21-blf.xml at var/www/html/digium_phones (21 is the D-80 extension number)

<config>
 <smart_blf>
  <blf_items>
    <blf_item location="main" index="0" paging="1" contact_id="0">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="1" paging="1" contact_id="1">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="2" paging="1" contact_id="2">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="3" paging="1" contact_id="3">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="4" paging="1" contact_id="4">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="5" paging="1" contact_id="5">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="6" paging="1" contact_id="6">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="7" paging="1" contact_id="7">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="8" paging="1" contact_id="8">
      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_action="itcm" long_press_function="dial" />

      <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="on" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="fast" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="on" />
      </indicators>
    </blf_item>
    <blf_item location="main" index="9" paging="1" contact_id="06802150803">      <behaviors>
        <behavior phone_state="idle" target_status="idle" press_action="primary" press_function="dial" long_press_function="dial" />
        <behavior phone_state="idle" target_status="ringing" press_action="pickupcall" press_function="dial" />
      </behaviors>
      <indicators>
        <indicator target_status="idle" ring="0" ringtone_id="Digium" led_color="green" led_state="off" />
        <indicator target_status="ringing" ring="0" ringtone_id="Techno" led_color="red" led_state="off" />
        <indicator target_status="on_the_phone" ring="0" ringtone_id="Techno" led_color="red" led_state="off" />
      </indicators>
    </blf_item>
 	</blf_items>
 </smart_blf>
</config>

phonebook-1.xml at the same location is a file, which is generated by a script using the entries of the freePBX contact manager.

the res_digium_phone_additional.conf in /etc/asterisk must contain this (MAC-address is file name)

[21]
type=phone
config_file=000FD30EXXXX.cfg
line=21
full_name=my-extension-name

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.