Yealink directory listing for extensions, groups, users contacts (#1588)
* Fix Yealink provisioning for contacts/groups Fix the Yealink provision templates to allow for directory_extensions, groups and users. * Fix group_uuid and user_uuid messup * Yealink directory and provisioning changes Includes the changes from PR 1582 with some fixes to the SQL. Also merged all the directory_* options into ONE directory.xml Will need to call the it with any of these: http://mydomain/app/provision/?file=directory.xml&contacts=groups http://mydomain/app/provision/?file=directory.xml&contacts=users http://mydomain/app/provision/?file=directory.xml&contacts=extensions http://mydomain/app/provision/?file=directory.xml&contacts=all
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{foreach $contacts as $row}
|
||||
{if $smarty.get.contacts == "users" && $row.category == "users"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "groups" && $row.category == "groups"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "extensions" && $row.category == "extensions"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "all"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{if $row.category == "extensions"}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{else}
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -1,18 +0,0 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{assign var=x value=1}
|
||||
{foreach $contacts as $row}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.number_alias != ""}
|
||||
<Telephone>{$row.number_alias}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{assign var=x value=$x+1}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -557,8 +557,20 @@ dialplan.item.1 =
|
||||
#remote_phonebook.data.X.url =
|
||||
#remote_phonebook.data.X.name =
|
||||
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url}
|
||||
remote_phonebook.data.1.name = Local Extensions
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url_1}
|
||||
remote_phonebook.data.1.name = {$yealink_remote_phone_book_name_1}
|
||||
|
||||
remote_phonebook.data.2.url = {$yealink_remote_phone_book_url_2}
|
||||
remote_phonebook.data.2.name = {$yealink_remote_phone_book_name_2}
|
||||
|
||||
remote_phonebook.data.3.url = {$yealink_remote_phone_book_url_3}
|
||||
remote_phonebook.data.3.name = {$yealink_remote_phone_book_name_3}
|
||||
|
||||
remote_phonebook.data.4.url = {$yealink_remote_phone_book_url_4}
|
||||
remote_phonebook.data.4.name = {$yealink_remote_phone_book_name_4}
|
||||
|
||||
remote_phonebook.data.5.url = {$yealink_remote_phone_book_url_5}
|
||||
remote_phonebook.data.5.name = {$yealink_remote_phone_book_name_5}
|
||||
|
||||
#######################################################################################
|
||||
## Network Directory ##
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{foreach $contacts as $row}
|
||||
{if $smarty.get.contacts == "users" && $row.category == "users"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "groups" && $row.category == "groups"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "extensions" && $row.category == "extensions"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "all"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{if $row.category == "extensions"}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{else}
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -1,18 +0,0 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{assign var=x value=1}
|
||||
{foreach $contacts as $row}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.number_alias != ""}
|
||||
<Telephone>{$row.number_alias}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{assign var=x value=$x+1}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -547,8 +547,20 @@ dialplan.item.1 =
|
||||
#remote_phonebook.data.X.url =
|
||||
#remote_phonebook.data.X.name =
|
||||
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url}
|
||||
remote_phonebook.data.1.name = Local Extensions
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url_1}
|
||||
remote_phonebook.data.1.name = {$yealink_remote_phone_book_name_1}
|
||||
|
||||
remote_phonebook.data.2.url = {$yealink_remote_phone_book_url_2}
|
||||
remote_phonebook.data.2.name = {$yealink_remote_phone_book_name_2}
|
||||
|
||||
remote_phonebook.data.3.url = {$yealink_remote_phone_book_url_3}
|
||||
remote_phonebook.data.3.name = {$yealink_remote_phone_book_name_3}
|
||||
|
||||
remote_phonebook.data.4.url = {$yealink_remote_phone_book_url_4}
|
||||
remote_phonebook.data.4.name = {$yealink_remote_phone_book_name_4}
|
||||
|
||||
remote_phonebook.data.5.url = {$yealink_remote_phone_book_url_5}
|
||||
remote_phonebook.data.5.name = {$yealink_remote_phone_book_name_5}
|
||||
|
||||
#######################################################################################
|
||||
## Network Directory ##
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{foreach $contacts as $row}
|
||||
{if $smarty.get.contacts == "users" && $row.category == "users"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "groups" && $row.category == "groups"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "extensions" && $row.category == "extensions"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "all"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{if $row.category == "extensions"}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{else}
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -1,18 +0,0 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{assign var=x value=1}
|
||||
{foreach $contacts as $row}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.number_alias != ""}
|
||||
<Telephone>{$row.number_alias}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{assign var=x value=$x+1}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -548,8 +548,20 @@ dialplan.item.1 =
|
||||
#remote_phonebook.data.X.url =
|
||||
#remote_phonebook.data.X.name =
|
||||
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url}
|
||||
remote_phonebook.data.1.name = Local Extensions
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url_1}
|
||||
remote_phonebook.data.1.name = {$yealink_remote_phone_book_name_1}
|
||||
|
||||
remote_phonebook.data.2.url = {$yealink_remote_phone_book_url_2}
|
||||
remote_phonebook.data.2.name = {$yealink_remote_phone_book_name_2}
|
||||
|
||||
remote_phonebook.data.3.url = {$yealink_remote_phone_book_url_3}
|
||||
remote_phonebook.data.3.name = {$yealink_remote_phone_book_name_3}
|
||||
|
||||
remote_phonebook.data.4.url = {$yealink_remote_phone_book_url_4}
|
||||
remote_phonebook.data.4.name = {$yealink_remote_phone_book_name_4}
|
||||
|
||||
remote_phonebook.data.5.url = {$yealink_remote_phone_book_url_5}
|
||||
remote_phonebook.data.5.name = {$yealink_remote_phone_book_name_5}
|
||||
|
||||
#######################################################################################
|
||||
## Network Directory ##
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{foreach $contacts as $row}
|
||||
{if $smarty.get.contacts == "users" && $row.category == "users"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "groups" && $row.category == "groups"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "extensions" && $row.category == "extensions"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{elseif $smarty.get.contacts == "all"}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
|
||||
{if $row.category == "extensions"}
|
||||
{if $row.phone_number != ""}
|
||||
<Telephone>{$row.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{else}
|
||||
{foreach $row.numbers as $number}
|
||||
{if $number.phone_number != ""}
|
||||
<Telephone>{$number.phone_number}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$number.phone_extension}</Telephone>
|
||||
{/if}
|
||||
{/foreach}
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -1,18 +0,0 @@
|
||||
<YealinkIPPhoneDirectory>
|
||||
{assign var=x value=1}
|
||||
{foreach $contacts as $row}
|
||||
<DirectoryEntry>
|
||||
{if $row.contact_name_given != ""}
|
||||
<Name>{$row.contact_name_given} {$row.contact_name_family}</Name>
|
||||
{else}
|
||||
<Name>{$row.effective_caller_id_name}</Name>
|
||||
{/if}
|
||||
{if $row.number_alias != ""}
|
||||
<Telephone>{$row.number_alias}</Telephone>
|
||||
{else}
|
||||
<Telephone>{$row.phone_extension}</Telephone>
|
||||
{/if}
|
||||
</DirectoryEntry>
|
||||
{assign var=x value=$x+1}
|
||||
{/foreach}
|
||||
</YealinkIPPhoneDirectory>
|
||||
@@ -557,8 +557,20 @@ dialplan.item.1 =
|
||||
#remote_phonebook.data.X.url =
|
||||
#remote_phonebook.data.X.name =
|
||||
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url}
|
||||
remote_phonebook.data.1.name = Local Extensions
|
||||
remote_phonebook.data.1.url = {$yealink_remote_phone_book_url_1}
|
||||
remote_phonebook.data.1.name = {$yealink_remote_phone_book_name_1}
|
||||
|
||||
remote_phonebook.data.2.url = {$yealink_remote_phone_book_url_2}
|
||||
remote_phonebook.data.2.name = {$yealink_remote_phone_book_name_2}
|
||||
|
||||
remote_phonebook.data.3.url = {$yealink_remote_phone_book_url_3}
|
||||
remote_phonebook.data.3.name = {$yealink_remote_phone_book_name_3}
|
||||
|
||||
remote_phonebook.data.4.url = {$yealink_remote_phone_book_url_4}
|
||||
remote_phonebook.data.4.name = {$yealink_remote_phone_book_name_4}
|
||||
|
||||
remote_phonebook.data.5.url = {$yealink_remote_phone_book_url_5}
|
||||
remote_phonebook.data.5.name = {$yealink_remote_phone_book_name_5}
|
||||
|
||||
#######################################################################################
|
||||
## Network Directory ##
|
||||
|
||||
Reference in New Issue
Block a user