cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1638
Views
5
Helpful
6
Replies

Problem with AXL addPhoneButtonTemplate

I am having some troubles with the AXL addPhoneButtonTemplate method; I am able to create a button template and it appears to be correct when viewing it in the CUCM Admin web interface, but when I apply it to the phone it doesn't work properly. I suspect this may be a bug but I could use some help confirming if this a problem on the CUCM or something I'm doing wrong with my AXL request.

 

Example: I create a button template that should look like this:

  1. Line 1
  2. Line 2
  3. Speed Dial 1
  4. Speed Dial 2
  5. Speed Dial 3
  6. Speed Dial 4
  7. Speed Dial 5
  8. Service URL

But when I apply it to a phone it looks like this:

ButtonTemplateIssue-PhoneScreenshot.png

 

I checked the database side and it looks like the paramn1 column isn't set correctly. Here's is a query that shows the values on the button template created via the AXL API (top) and a button template created using the normal admin interface (bottom)

 

admin:run sql SELECT phonetemplate.pkid, name, tkmodel, buttonnum, tkfeature, label, paramn1 FROM phonetemplate LEFT JOIN phonebutton ON phonebutton.fkphonetemplate = phonetemplate.pkid WHERE phonetemplate.pkid IN ('01582c3e-4b8c-9e07-b254-7084068d1ae7', '7960d8ca-b09d-9fd2-15ac-ded2408acc19') ORDER BY phonetemplate.pkid, buttonnum
pkid name tkmodel buttonnum tkfeature label paramn1
==================================== ======== ======= ========= ========= ============ =======
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 1 9 Line 1 1
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 2 9 Line 2 1
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 3 2 Speed Dial 2
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 4 2 Speed Dial 3
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 5 2 Speed Dial 4
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 6 2 Speed Dial 5
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 7 2 Speed Dial 6
01582c3e-4b8c-9e07-b254-7084068d1ae7 API-Test 30016 8 20 Service URL 7



7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 1 9 Line 1 1
7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 2 9 Line 2 2
7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 3 2 Speed Dial 1 1
7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 4 2 Speed Dial 2 2
7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 5 2 Speed Dial 3 3
7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 6 2 Speed Dial 4 4
7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 7 2 Speed Dial 5 5
7960d8ca-b09d-9fd2-15ac-ded2408acc19 Web-Test 30016 8 20 Service URL 1

The Paramn1 column for the rows ends up being 1, 1, 2, 3, 4, 5, 6, 7 instead of being 1-X for each button type.

 

I've tried this on several different CUCM servers running versions 12.5.1.10000-22 and 12.5.1.11900-146

6 Replies 6

thedd
Level 1
Level 1
Could you add a Screenshot from CUCM Admin Page
How does it look there?
Is a Value assigned to all Lines, Speeddials and Service URL?
Is there a empty entry?
Then usually the phone ignores the empty ones and only displayes these with a value

Here is an example of a Phone template being created for an 8851:

 

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header/>
    <soapenv:Body>
        <ns2:addPhoneButtonTemplate xmlns:ns2="http://www.cisco.com/AXL/API/12.0">
  			<phoneButtonTemplate>
  			  <name>Test_AXL_API_2_LINES</name>
  			  <basePhoneTemplateName>Standard 8851 SIP</basePhoneTemplateName>
                <buttons>
  			    <button>
  			      <feature>Line</feature>
  			      <label>Line</label>
  			      <buttonNumber>2</buttonNumber>
  			    </button>
  			    <button>
  			      <feature>Line</feature>
  			      <label>Line</label>
  			      <buttonNumber>3</buttonNumber>
  			    </button>
  			    ...
  			    <button>
  			      <feature>None</feature>
  			      <label>None</label>
  			      <buttonNumber>79</buttonNumber>
  			    </button>
  			    <button>
  			      <feature>None</feature>
  			      <label>None</label>
  			      <buttonNumber>80</buttonNumber>
  			    </button>
  			    <button>
  			      <feature>None</feature>
  			      <label>None</label>
  			      <buttonNumber>81</buttonNumber>
  			    </button>
  			    <button>
  			      <feature>None</feature>
  			      <label>None</label>
  			      <buttonNumber>82</buttonNumber>
  			    </button>
  			  </buttons>
  			</phoneButtonTemplate>
</ns2:addPhoneButtonTemplate>
</soapenv:Body>
</soapenv:Envelope>

And a screenshot of the result where the line 1 is duplicated twice on the actual phone even though in CUCM, it displays the Line 1 and Line 2 being different. 

 

 

8851 line issue.png

 

 

 

ckarawani
Level 1
Level 1

Hey @Nathan Richardson , were you ever able to resolve this? We are also noticing this problem on CUCM 12.5

Your request is missing the button 1 definition (which must be 'line'), then includes 2 line button definitions as buttons 2 & 3.  As there must be a button/line 1 when the device is assigned the template, the result is one 'ghost' line (that apparently results in what looks like a duplicate on the phone) and then two 'regular' lines...

Including it seems to work for me on CUCM 12.5:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ns="http://www.cisco.com/AXL/API/12.5">
    <soapenv:Header/>
    <soapenv:Body>
        <ns:addPhoneButtonTemplate sequence="1">
            <phoneButtonTemplate>
                <name>testPhoneButtonTemplate2 (Standard 8851 SIP)</name>
                <basePhoneTemplateName>Standard 8851 SIP</basePhoneTemplateName>
                <buttons>
                    <button>
                        <feature>Line</feature>
                        <label>Line</label>
                        <buttonNumber>1</buttonNumber>
                    </button>
                    <button>
                        <feature>Line</feature>
                        <label>Line</label>
                        <buttonNumber>2</buttonNumber>
                    </button>
                    <button>
                        <feature>Do Not Disturb</feature>
                        <label>Do Not Disturb</label>
                        <buttonNumber>3</buttonNumber>
                    </button>
                    <button>
                        <feature>Speed Dial</feature>
                        <label>Speed Dial</label>
                        <buttonNumber>4</buttonNumber>
                    </button>
                    <button>
                        <feature>Speed Dial</feature>
                        <label>Speed Dial</label>
                        <buttonNumber>5</buttonNumber>
                    </button>
                    <button>
                        <feature>Speed Dial</feature>
                        <label>Speed Dial</label>
                        <buttonNumber>6</buttonNumber>
                    </button>
                    <button>
                        <feature>Speed Dial</feature>
                        <label>Speed Dial</label>
                        <buttonNumber>7</buttonNumber>
                    </button>
                    <button>
                        <feature>None</feature>
                        <label>None</label>
                        <buttonNumber>8</buttonNumber>
                    </button>
                    ...
                    <button>
                        <feature>None</feature>
                        <label/>
                        <buttonNumber>82</buttonNumber>
                    </button>
                </buttons>
            </phoneButtonTemplate>
        </ns:addPhoneButtonTemplate>
    </soapenv:Body>
</soapenv:Envelope>

@dstaudt Button 1 is a FIXED button type and is therefor not required.
I just tried with your suggestion of providing button 1 anyway, and I get the same result.

Opened a TAC case 🤷‍

ckarawani
Level 1
Level 1

Following up here - Cisco Bug has been identified and opened:

CSCvn01600

https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvn01600