Yealink Forums

Full Version: XML and playing asterisk wav voicemail files
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I'm trying to build a script that plays audio files stored on the pbx but am unsure about the formatting of the xml. Here is what I am outputting to the phone:

<TextMenu
style="radio"
Beep="no"
defaultIndex="1"
>
<Title wrap="no">Music</Title>
<MenuItem>
<Prompt>="Sample File" </Prompt>
<URI>Wav.Play:/var/lib/music/sample.wav</URI>
</MenuItem>
</TextMenu>

Am I missing something?

It displays fine but when I press Select nothing happens.
Hi
I don't know whether the syntax "<URI>Wav.Play:/var/lib/music/sample.wav</URI>" is right.

Can you redirect to some urls of xml or php?
What are your phone model and version?
The top of page 39 (or really 41) of http://www.yealink.com/Upload/document/X...635570.pdf indicates the following:

Wav.Play:[tftp|http://[username[:password]
@]<host>[:port][/<Path>]/<file>

This is a T38G
FW: 38.70.0.126
HW: 21.5.5.160.64.0.0

Putting in a link to another script works fine.
Nothing? What is the wav.play feature for if not for this? And if this isn't how it's done, how do you do it?
Can you test as below syntax for reference? (Execute.xml)
--------------------------------------
<?xml version="1.0" encoding="ISO-8859-1"?>
<YealinkIPPhoneExecute Beep="yes">

<ExecuteItem URI="Wav.Play:http://10.2.9.5:9/XML_Browser/BackHome.wav"/>


</YealinkIPPhoneExecute>

<!--Below is the test sample template for you.
<ExecuteItem URI="Key:LINE1"/>
<ExecuteItem URI="Key:OK"/>
<ExecuteItem URI="Key:HOTKEY4"/>

<ExecuteItem URI="Dial:12345" />
<ExecuteItem URI="http://10.2.9.5:9/XML_Browser/T46/PhoneDirectory.xml"/>

<ExecuteItem URI="Wav.Play:http://10.2.9.5:9/XML_Browser/BackHome.wav"/>
<ExecuteItem URI="Wav.Stop:http://10.2.9.5:9/XML_Browser/BackHome.wav"/>

<ExecuteItem URI="Command:Reboot"/>
<ExecuteItem URI="Command:Reset"/>
<ExecuteItem URI="Command:ClearCallersList"/>
<ExecuteItem URI="Command:ClearDirectory"/>
<ExecuteItem URI="Command:ClearRedialList"/>

<ExecuteItem URI="Led:SMS=on"/>
<ExecuteItem URI="Led:POWER=on"/>
<ExecuteItem URI="Led:HEADSET=on"/>

<ExecuteItem URI="Led:LINE2_RED=on"/>
<ExecuteItem URI="Led:LINE3_GREEN=slowflash"/>
<ExecuteItem URI="Led:LINE7_ORANGE=fastflash"/>

<ExecuteItem URI="Led:EXP-1-6-RED=fastflash"/>
<ExecuteItem URI="Led:EXP-1-7-RED=on"/>
<ExecuteItem URI="Led:EXP-1-8-RED=on"/>
<ExecuteItem URI="Led:EXP-1-9-RED=on"/>
<ExecuteItem URI="Led:EXP-1-10-ORANGE=on"/>
<ExecuteItem URI="Led:EXP-1-11-RED=on"/>
<ExecuteItem URI="Led:EXP-1-39-RED=on"/>
<ExecuteItem URI="Led:EXP-1-40-GREEN=on"/>

--------------------------------------------
You can refer to more details in below guide which is the latest one.
Yealink_XML_Browser_Developer_V72
I'm not sure how to get the phone to just process and xml file but saving it as an xml and then point straight to it gives me an error of: "Note: File Format Error!". I then presume I should be sending in via php so I created a php with this:

<?php
echo '<?xml version="1.0" encoding="ISO-8859-1"?>' ;
echo '<YealinkIPPhoneExecute Beep="yes">' ;
echo '<ExecuteItem URI="Wav.Play:http://10.2.9.5:9/XML_Browser/BackHome.wav"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-6-RED=fastflash"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-7-RED=on"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-8-RED=on"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-9-RED=on"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-10-ORANGE=on"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-11-RED=on"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-39-RED=on"/>' ;
echo '<ExecuteItem URI="Led:EXP-1-40-GREEN=on"/>' ;
echo '</YealinkIPPhoneExecute>' ;
?>

and all I get is the generated beep and nothing else. I've tried taking out the wav.play line and still just a beep. I've tried leaving only the wav.play line and get just a beep. How should I go about sending this to the phone?

Edit: The link you gave is for V72 firmware. Yealink appears to have decided that the T38G won't go past V70 despite months of claims to the contrary. I'm going off of the V70 guide.
Sorry. I test below syntaxs and can't get XML Browser to work too. I will submit this BUG to our R&D.
--------------------------------------------------
<YealinkIPPhoneExecute Beep="yes">
<ExecuteItem URI="Wav.Play:http://10.2.91.94:8080/Ring8.wav"/>
<ExecuteItem URI="Led:EXP39-1-6-RED=fastflash"/>
<ExecuteItem URI="Led:EXP39-1-7-RED=on"/>
<ExecuteItem URI="Led:EXP39-1-8-RED=on"/>
<ExecuteItem URI="Led:EXP39-1-9-RED=on"/>
<ExecuteItem URI="Led:EXP39-1-10-ORANGE=on"/>
<ExecuteItem URI="Led:EXP39-1-11-RED=on"/>
<ExecuteItem URI="Led:EXP39-1-37-RED=on"/>
<ExecuteItem URI="Led:EXP39-1-38-GREEN=on"/>
</YealinkIPPhoneExecute>
--------------------------------------------------
I've seen conflicting info on whether this phone will get V71/V72 firmware or if it will be stuck at V70 firmware. Is there a definitive answer?
I am also interested in being able to do this. Has anything been done to fix the bug?
Reference URL's