<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>LoadRunner TnT &#187; MMS</title>
	<atom:link href="http://www.loadrunnertnt.com/tag/mms/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.loadrunnertnt.com</link>
	<description>Performance Testing, LoadRunner Tips &#38; Tricks</description>
	<lastBuildDate>Mon, 08 Mar 2010 07:57:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>undeclared identifier ‘LRMMS_PACKET_QUALITY’</title>
		<link>http://www.loadrunnertnt.com/errors/action-c-10-undeclared-identifier-%e2%80%98lrmms_packet_quality%e2%80%99/</link>
		<comments>http://www.loadrunnertnt.com/errors/action-c-10-undeclared-identifier-%e2%80%98lrmms_packet_quality%e2%80%99/#comments</comments>
		<pubDate>Tue, 30 Sep 2008 04:57:39 +0000</pubDate>
		<dc:creator>TnT Admin</dc:creator>
				<category><![CDATA[Errors]]></category>
		<category><![CDATA[MMS]]></category>

		<guid isPermaLink="false">http://www.loadrunnertnt.com/?p=167</guid>
		<description><![CDATA[Action.c (10): undeclared identifier ‘LRMMS_PACKET_QUALITY’
If you happened to try out the mms_get_property API on a Media Player (MMS) and Web (HTTP/HTML) script, you may get the above error if you missed out on an include entry for the globals.h file. The compilation error is caused with constant, LRMMS_PACKET_QUALITY is not found in the globals.h file. [...]]]></description>
			<content:encoded><![CDATA[<p>Action.c (10): undeclared identifier ‘LRMMS_PACKET_QUALITY’</p>
<p>If you happened to try out the mms_get_property API on a Media Player (MMS) and Web (HTTP/HTML) script, you may get the above error if you missed out on an include entry for the globals.h file. The compilation error is caused with constant, LRMMS_PACKET_QUALITY is not found in the globals.h file. The following snippet of the codes that resulted in the error that occurred was used, based on the Function Reference on mms_get_property API.</p>
<p><span id="more-167"></span>vuser_action()<br />
{<br />
int pack_quality,time_quality,pack_count,pack_rate;</p>
<p>pack_quality=mms_get_property(LRMMS_PACKET_QUALITY);<br />
time_quality=mms_get_property(LRMMS_TIME_QUALITY);<br />
pack_count=mms_get_property(LRMMS_STREAM_COUNT);<br />
pack_rate=mms_get_property(LRMMS_STREAM_RATE);</p>
<p>return 0;<br />
}</p>
<p>What do we need to do to resolve it? You’ve to include mic_media.h in the multi-protocol script in order for it to recognise the constants. A snippet of the globals.h can be found as followed:</p>
<p>#ifndef _GLOBALS_H<br />
#define _GLOBALS_H</p>
<p>//——————————————————————–<br />
// Include Files<br />
#include “lrun.h”<br />
#include “web_api.h”<br />
#include “lrw_custom_body.h”<br />
#include “mic_media.h”</p>
<p>//——————————————————————–<br />
// Global Variables</p>
<p>#endif // _GLOBALS_H</p>
]]></content:encoded>
			<wfw:commentRss>http://www.loadrunnertnt.com/errors/action-c-10-undeclared-identifier-%e2%80%98lrmms_packet_quality%e2%80%99/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Error: C interpreter run time error: vuser_init.c (4): Error — Unresolved symbol : ..</title>
		<link>http://www.loadrunnertnt.com/errors/error-c-interpreter-run-time-error-vuser_init-c-4-error-%e2%80%94-unresolved-symbol-mms_play/</link>
		<comments>http://www.loadrunnertnt.com/errors/error-c-interpreter-run-time-error-vuser_init-c-4-error-%e2%80%94-unresolved-symbol-mms_play/#comments</comments>
		<pubDate>Tue, 08 Jul 2008 19:02:53 +0000</pubDate>
		<dc:creator>TnT Admin</dc:creator>
				<category><![CDATA[Errors]]></category>
		<category><![CDATA[MMS]]></category>

		<guid isPermaLink="false">http://www.loadrunnertnt.com/?p=155</guid>
		<description><![CDATA[Error: C interpreter run time error: vuser_init.c (4): Error — Unresolved symbol : mms_play
Lately, we’ve talk about using Media Player (MMS) protocol with Web (HTTP/HTML) in &#8220;Combining non-standard protocols in a single script that are not listed in Multi-Protocol selection&#8221;. The above error message is a compilation error that I forgotten to mentioned. This error [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>Error: C interpreter run time error: vuser_init.c (4): Error — Unresolved symbol : mms_play</p></blockquote>
<p>Lately, we’ve talk about using <strong>Media Player (MMS)</strong> protocol with <strong>Web (HTTP/HTML)</strong> in <a title="Combining non-standard protocols in a single script that are not listed in Multi-Protocol selection" href="http://www.loadrunnertnt.com/?p=91" target="_blank">&#8220;Combining non-standard protocols in a single script that are not listed in Multi-Protocol selection&#8221;</a>. The above <strong>error</strong> message is a compilation error that I forgotten to mentioned. This error occurs when Media Player (MMS) is not included as part of the multiple protocol. From the error message, this may happened with the following context.<span id="more-155"></span></p>
<ol>
<li>Only Web (HTTP/HTML) protocol was selected.</li>
<li>Media Player (MMS) was not selected to be included in the Multi-protocol script.</li>
<li>mms_play API was added in the single Web (HTTP/HTML) protocol script.</li>
</ol>
<p>Of course, this also occurs for other <strong>protocols</strong>. Example, if you put in a FTP function related API in Web (HTTP/HTML) protocol script, the error will occur in a different context where it will alert the unresolved symbol for the FTP API.</p>
<p>What do you need to do to resolve this error? Ensure that the API you are including is part of the protocol you’ve selected with the Function Reference.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.loadrunnertnt.com/errors/error-c-interpreter-run-time-error-vuser_init-c-4-error-%e2%80%94-unresolved-symbol-mms_play/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing Media Player (MMS) protocol in LoadRunner!</title>
		<link>http://www.loadrunnertnt.com/concepts/267/</link>
		<comments>http://www.loadrunnertnt.com/concepts/267/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 04:42:51 +0000</pubDate>
		<dc:creator>TnT Admin</dc:creator>
				<category><![CDATA[Concepts]]></category>
		<category><![CDATA[LoadRunner]]></category>
		<category><![CDATA[MMS]]></category>

		<guid isPermaLink="false">http://www.loadrunnertnt.com/?p=267</guid>
		<description><![CDATA[Media Player (MMS) protocol allows the load testing of video streaming application, in particularly for this protocol, Windows Media Server.
Before we start off, I want to put forward that this is Media Player (MMS) protocol from the Web 2.0 Bundle license, and not MMS (Multimedia Messaging Service) which is from the Wireless Bundle license. This [...]]]></description>
			<content:encoded><![CDATA[<p>Media Player (MMS) protocol allows the load testing of video streaming application, in particularly for this protocol, Windows Media Server.</p>
<p>Before we start off, I want to put forward that this is Media Player (MMS) protocol from the Web 2.0 Bundle license, and not MMS (Multimedia Messaging Service) which is from the Wireless Bundle license. This is a little bit confusing in the names they used (for me) but I guessed we have to make do with it. When you are looking for function help, you can differ both protocols with their prefixes; take note that Media Player (MMS) uses mms_ prefixes for its APIs while MMS (Multimedia Messaging Services) uses mm_ prefixes.<span id="more-267"></span></p>
<p>Media Player (MMS) protocol actually works only on replay. That’s to say, you won’t be able to record anything from the browser or the Media Player Client. What you need to do is to code the entire script to access the MMS videos at its URL (e.g. you will have to provide the full URL <em>mms://aries/happy.wmv</em> in the mms_play function). The supported video types are those utilizing the MMS protocol to stream.</p>
<p>As you will be providing the URL directly, the script is actually sending request to the Windows Media Server publishing point for it to send in the streams without going though any application. Therefore, if you need to go through some activities on a web page or application before reaching the video URL, in the replay, all the activities will not be executed <strong>EXCEPT</strong> accessing the video URL. Example:</p>
<ul>1. User access application (http://aries/default.aspx)<br />
2. Login Page loads and user logins (http://aries/default.aspx)<br />
3. Home Page loads and user access Video Page (http://aries/home.aspx)<br />
4. Video Page loads and user access happy.wmv from the list of videos (http://aries/video.aspx)<br />
5. Window Media Player launches and starts playing on the client machine (mms://aries/happy.wmv)</ul>
<blockquote><p>Note:<br />
For [5], it may deviate depending on how the application is designed to play streaming videos. It can be in the conventional Windows Media Player or it can be in the form of <strong>browser plugin</strong>.</p></blockquote>
<p>When you are scripting, you are actually touching on [5] where the script plays the video URL directly. So, the steps from [1] to [4] is executed in the script.<br />
<!--adsensestart--><br />
Before you perform any replay, you will also need to ensure that <strong>WMLoad.asf</strong> is included in the <em>ASFroot</em> directory (or the directory that you stored the videos) or <em>%systemdrive%/WMpub/WMroot</em>. I know it’s a little vague here but I will fill that in a subsequent article. Instructions for creating WMLoad.asf can be found in HP Software Support, <a href="http://support.openview.hp.com/selfsolve/document/KM178905" target="_blank"><span style="text-decoration: underline;"><span style="color: #0066cc;">Error: “-17999: MMS Check : Host access denied, mms:///wmload.asf not available or missing”</span></span></a> The basic concept of this file is, it acts like a security feature to prevent “unauthorized” personnel to load the <strong>Window Media Server</strong> with requests. You can refer to <a href="http://www.microsoft.com/windows/windowsmedia/howto/articles/loadsim.aspx" target="_blank"><span style="text-decoration: underline;"><span style="color: #0066cc;">Checking Server Performance with Windows Media Load Simulator</span></span></a> for more information with <strong>WMLoad.asf</strong>.</p>
<p>If you are working in a closed environments or Intranet where there is a high level of security control on the ports, you will need to have all streaming ports opened from the <strong>Load Generators</strong> (LG) to the <strong>Windows Media Server publishing point</strong> (treat the LG like a normal user location). The incoming <strong>TCP 80</strong>, <strong>554</strong>, and <strong>1755</strong>, <strong>UDP 1755</strong> and <strong>5005</strong>, while for outgoing <strong>UDP 1024</strong> through <strong>5000</strong> and <strong>5004</strong> needs to be opened. More information on the ports can be consulted with Microsoft, <a href="http://support.microsoft.com/kb/827562" target="_blank"><span style="text-decoration: underline;"><span style="color: #0066cc;">“How to configure firewalls and Network Address Translation (NAT) for Windows Media Services 9 Series”</span></span></a>.</p>
<p>In summary,</p>
<ul>
<li>Do not get confused with Media Player (MMS) with Multimedia Messaging Service (MMS).</li>
<li>Media Player (MMS) only works on playback. No recording feature for this protocol.</li>
<li>Media Player (MMS) replays directly on the Window Media Server.</li>
<li>WMLoad.asf needs to exist on the Windows Media Server in order for load testing to work.</li>
<li>Treat the LG like a normal user accessing the Windows Media Server with the necessary ports opened.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.loadrunnertnt.com/concepts/267/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Combining non-standard protocols in a single script that are not listed in Multi-Protocol selection</title>
		<link>http://www.loadrunnertnt.com/how-tos/combining-non-standard-protocols-in-a-single-script-that-are-not-listed-in-multi-protocol-selection/</link>
		<comments>http://www.loadrunnertnt.com/how-tos/combining-non-standard-protocols-in-a-single-script-that-are-not-listed-in-multi-protocol-selection/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 01:37:30 +0000</pubDate>
		<dc:creator>TnT Admin</dc:creator>
				<category><![CDATA[How-Tos]]></category>
		<category><![CDATA[HTTP/HTML]]></category>
		<category><![CDATA[LoadRunner]]></category>
		<category><![CDATA[MMS]]></category>
		<category><![CDATA[Protocols]]></category>

		<guid isPermaLink="false">http://www.loadrunnertnt.com/?p=91</guid>
		<description><![CDATA[Have you ever wanted a combination of two separate protocols that were unavailable in the list of multi-protocol? For example, part of the web application has streaming video component and the activities to be recorded requires you to login, conduct some verification before you have the video link for the user to click. If you [...]]]></description>
			<content:encoded><![CDATA[<p>Have you ever wanted a combination of two separate protocols that were unavailable in the list of multi-protocol? For example, part of the web application has streaming video component and the activities to be recorded requires you to login, conduct some verification before you have the video link for the user to click. If you need to test the entire flow, you may want to have <strong>Media Player (MMS)</strong> with <strong>Web (HTTP/HTML)</strong> combined together to emulate the activities.<span id="more-91"></span></p>
<p>By default, when you are about to select the protocols from Multi-Protocol selection, you won’t be able to combine both of them together as illustrated below. (Click on image to enlarge).</p>
<p><img class="aligncenter" title="New Multiple Protocol" src="http://loadrunnertnt.com/images/new_multi_protocol.png" alt="" width="593" height="412" /></p>
<p>However, there are means to do that! Basically, what you need to do is to enable the protocol to be displayed in the <em>“New Multiple Protocol Script”</em> list when creating a <em>“New Virtual User”</em>. Let’s go through the technical overview:</p>
<ul>1. Go to {installation}\dat\protocols. By default, it’s C:\Program Files\LoadRunner\dat\protocols<br />
2. Open the desired protocol file that has the<em>.lrp</em> file extension. (E.g. <em>mms.lrp</em>)<br />
3. Amend parameter, <em>Multi</em> in the .lrp file from <em>0</em> to <em>1</em>. E.g. <em>Multi=0</em> to <em>Multi=1</em><br />
4. Open Vugen for a new vuser script and you should be able to see the enabled protocol in the list “New Multiple Protocol Script”.</ul>
<p>You should be able to see the enabled protocol similar to the following screenshot. (Click on image to enlarge).</p>
<p><img class="aligncenter" title="New Multiple Protocol Amended" src="http://loadrunnertnt.com/images/new_multi_protocol_amended.png" alt="" width="593" height="412" /></p>
<p>Click on the link if you need a sample of the files; You need to rename the file to <em>mms.lrp</em> and place it in <em>{installation}</em>\dat\protocols if you want to use it</p>
<ul>
<li><a href="downloads/mms-original.lrp" target="_blank"><span style="color: #800080;"><span style="text-decoration: underline;">Original <em>mms.lrp</em> file </span></span></a></li>
<li><a href="downloads/mms-amended.lrp" target="_blank"><span style="text-decoration: underline;"><span style="color: #0066cc;">Amended <em>mms.lrp</em> file<br />
</span></span></a></li>
</ul>
<blockquote><p>Note:</p>
<p>Having provided the above, you will still need a basic understanding on how the combined script will be executed. Both protocol will execute as it is of it’s own where (1) <strong>Web (HTTP/HTML)</strong> will still allow the <strong>HTTP</strong> sends and receives when the Web (HTTP/HTML) APIs are executed and (2) Media Player (MMS) will make a direct connection to the Media Server (or publishing point) that will stream the video down when executing the <strong>Media Player (MMS)</strong> APIs. HTTP communication will stop from there till the streaming completes. You can refer to a previous article, &#8220;<a title="Introducing Media Player (MMS) protocol in LoadRunner!" href="http://www.loadrunnertnt.com/?p=267" target="_blank">Introducing Media Player (MMS) protocol in LoadRunner!</a>&#8220;.</p></blockquote>
<p>I’ve only tried with Web (HTTP/HTML) and Media Player (MMS). I’ve yet to try other combination of protocols. If you do have given a try before, it will be great to hear from too! As for the licensing, I’m not too sure if this is a breach in the <strong>license</strong>. Will be great to hear from the experts or vendor on this!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.loadrunnertnt.com/how-tos/combining-non-standard-protocols-in-a-single-script-that-are-not-listed-in-multi-protocol-selection/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
