<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Example-VoiceProfile</title><link>https://sourceforge.net/p/libreacs/wiki/Example-VoiceProfile/</link><description>Recent changes to Example-VoiceProfile</description><atom:link href="https://sourceforge.net/p/libreacs/wiki/Example-VoiceProfile/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 04 Jul 2014 14:46:42 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/libreacs/wiki/Example-VoiceProfile/feed" rel="self" type="application/rss+xml"/><item><title>Example-VoiceProfile modified by Peter Lambrechtsen</title><link>https://sourceforge.net/p/libreacs/wiki/Example-VoiceProfile/</link><description>&lt;div class="markdown_content"&gt;&lt;h1 id="voice-profile"&gt;Voice Profile&lt;/h1&gt;
&lt;p&gt;This script queries the CPE to see if a Voice Profile exists, and if it doesn't create it otherwise continue onto the next script and set TR104 Parameters. After the script TR104 is successful backup all the CWMP values from the CPE using BackupCWMPTree. If the Voice Profile wasn't successfully created return an error.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="c1"&gt;//Voice Profile&lt;/span&gt;
&lt;span class="c1"&gt;//Check to see if the cpe has a Voice Profile, and if they don't add it.&lt;/span&gt;

&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;xGPVvals&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;Array&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;xGPVvals&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mh"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt;&lt;span class="n"&gt;InternetGatewayDevice&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;VoiceService&lt;/span&gt;&lt;span class="mf"&gt;.1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;VoiceProfileNumberOfEntries&lt;/span&gt;&lt;span class="p"&gt;';&lt;/span&gt;
&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;xGPVResponse&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;cpe&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GetParameterValues&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xGPVvals&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// ------------------------------------------------------------------------------&lt;/span&gt;
&lt;span class="c1"&gt;// Set output with RPC response value.  &lt;/span&gt;
&lt;span class="n"&gt;xVoiceProfileCount&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;xGPVResponse&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mh"&gt;0&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xVoiceProfileCount&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="mh"&gt;0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// Add a voice profile as one doesn't already exist &lt;/span&gt;
    &lt;span class="c1"&gt;// If successful xVoiceProfileCount will not be 0&lt;/span&gt;
    &lt;span class="n"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xLogPrefix&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt; &lt;span class="n"&gt;AddVoiceProfile&lt;/span&gt;&lt;span class="p"&gt;');&lt;/span&gt;
    &lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;xTr104obj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;Object&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="n"&gt;xTr104obj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt;&lt;span class="n"&gt;InternetGatewayDevice&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;VoiceService&lt;/span&gt;&lt;span class="mf"&gt;.1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;VoiceProfile&lt;/span&gt;&lt;span class="p"&gt;.';&lt;/span&gt;
    &lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;xResponse&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;cpe&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;AddObject&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xTr104obj&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;&amp;quot;AddCommandKey&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="c1"&gt;//Update Profile Count.  Expected response is '1' when VoiceProfile.1. is created&lt;/span&gt;
    &lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;xVoiceProfileCount&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;xResponse&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;InstanceNumber&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xVoiceProfileCount&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="mh"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;

    &lt;span class="c1"&gt;// ------------------------------------------------------------------------------&lt;/span&gt;
    &lt;span class="c1"&gt;// Populate the TR 104 data elements&lt;/span&gt;
    &lt;span class="n"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xLogPrefix&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt;&lt;span class="nl"&gt;Call:&lt;/span&gt; &lt;span class="n"&gt;SetTR104Parameters&lt;/span&gt;&lt;span class="p"&gt;');&lt;/span&gt;
    &lt;span class="n"&gt;call&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;SetTR104Parameters&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xLogPrefix&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt;&lt;span class="nl"&gt;Call:&lt;/span&gt; &lt;span class="n"&gt;SetTR104Parameters&lt;/span&gt; &lt;span class="n"&gt;Successful&lt;/span&gt;&lt;span class="p"&gt;');&lt;/span&gt;

    &lt;span class="c1"&gt;//Check if successfully updated as the xResult value is set in the script just called.&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xResult&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="mh"&gt;0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// ------------------------------------------------------------------------------&lt;/span&gt;
        &lt;span class="c1"&gt;// As Voice Profile successfully updated.  &lt;/span&gt;
        &lt;span class="c1"&gt;// Update ACS with CWMP values from CPE.&lt;/span&gt;
        &lt;span class="n"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xLogPrefix&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt;&lt;span class="nl"&gt;Call:&lt;/span&gt; &lt;span class="n"&gt;Backup&lt;/span&gt; &lt;span class="no"&gt;CWMP&lt;/span&gt; &lt;span class="n"&gt;Tree&lt;/span&gt;&lt;span class="p"&gt;');&lt;/span&gt;
        &lt;span class="n"&gt;cpe&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;BackupCWMPTree&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="n"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xLogPrefix&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt;&lt;span class="nl"&gt;Call:&lt;/span&gt; &lt;span class="n"&gt;Backup&lt;/span&gt; &lt;span class="no"&gt;CWMP&lt;/span&gt; &lt;span class="n"&gt;Tree&lt;/span&gt; &lt;span class="n"&gt;Successful&lt;/span&gt;&lt;span class="p"&gt;');&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;  &lt;span class="c1"&gt;// SetTR104Parameters successful&lt;/span&gt;

&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="c1"&gt;// xVoiceProfileCount == 1&lt;/span&gt;
&lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// ------------------------------------------------------------------------------&lt;/span&gt;
    &lt;span class="c1"&gt;// Adding Voice Profile was unsuccessful&lt;/span&gt;

    &lt;span class="n"&gt;xMessage&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;&amp;quot;Voice profile creation failed&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="n"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xLogPrefix&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;xMessage&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="n"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;xLogPrefix&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;'&lt;/span&gt;&lt;span class="n"&gt;End&lt;/span&gt; &lt;span class="n"&gt;VoiceProfile&lt;/span&gt;&lt;span class="p"&gt;');&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Peter Lambrechtsen</dc:creator><pubDate>Fri, 04 Jul 2014 14:46:42 -0000</pubDate><guid>https://sourceforge.net00577ab789f8ee9f996af00dfa3dc4c348fa8129</guid></item></channel></rss>