How to backup your Yealink local contacts to the FreePBX provisioning directory



  • Back in 2016 or so, Yelaink added the ability to automatically upload your local contacts everytime you made a change.

    But because everything I do uses HTTP, there was no easy way to get the files up to the provisioning directory.

    Well 2 weeks ago, @xrobau posted a small script to github to handle Polycom requirements that the log files be uploaded on reboot, etc (hate these phones btw).

    A couple days ago I had a user complaint remind me that Yealink added this functionality and boom the two thoughts connected.

    I just banged this out tonight and tested it on my T46G desk phone. It works perfectly.

    https://github.com/sorvani/freepbx-helper-scripts/tree/master/Backup_Yealink_Local_Contacts

    1. Download and copy the put.yealink file to the /tftfpboot directory
    2. Give Asterisk ownership of the file chown asterisk:asterisk /tftpboot/put.yealink
    3. Download and copy the yealink.conf file to the /etc/httpd/conf.d directory
    4. Restart Apache systemctl restart httpd
    5. Edit your provisioning file to enable the remote backup static.auto_provision.local_contact.backup.enable= 1
    6. Edit your provisioning file with the URL static.auto_provision.local_contact.backup.path =
      1. HTTPS: https://pbx.domain.com:1443
      2. HTTP: http://pbx.domain.com:84
      3. Or it could include a username and password https://123456:[email protected]:1443
      4. Or if you have the Commerical EPM use this in basfile edit: __provisionAddress__
    7. Reprovision or reboot your phone to pick up the change
    8. Edit your local address once to force it to upload the file