PDA

View Full Version : Mezzmo server sometimes takes 10-20 mins to show up



RMerlin
03-19-2010, 04:24 PM
Configuration:

Server: Windows 7 64-bit running MezzMo 2.1.4 Trial (wired network)
Client: Sony PS3 (wired network)
Client: Windows 7 32-bit laptop (Windows Media Player, Wifi 802.11n network)

Router: Linksys WRT310N (running the DD-WRT v24preSP2 firmware)

All LAN IPs are static leases on the router's DHCP service.

Problem: sometimes, when I open either the PS3 or WMP, the Mezzmo server will show immediately on the list. But sometimes the Mezzmo server won't show up. On the laptop if I keep WMP open, Mezzmo eventually shows up on the list of available servers - it can take 10-20 mins for this to happen.

The server desktop is using the native Windows firewall - all ports seem to have been properly opened in it by the installer (and since Mezzmo works perfectly the rest of the time, I doubt it's a firewall issue)

The issue is difficult to reproduce, because it seems to happen if Mezzmo has been running for a few hours with no client connected to it. I have enabled server logging tonight, will have to wait until I can reproduce the issue tomorrow to see if the log contains any useful info. In the mean time, anyone has any idea?

Service is still running, and restarting it will make it reappear immediately on either of the two clients.

My first impression is, it's as if there was a problem discovering the Mezzmo server, or the Mezzmo server stopping responding for a long (at least 10-20 mins) period of time.

For a while I still ran another media sharing program on my desktop - that one was still showing up even when Mezzmo wasn't. I have since uninstalled that program in case there were any conflict between the two.

Another bit of info: I never shutdown the desktop computer - I put it to sleep while I'm not home. I know the problem isn't caused by sleep mode itself (I had that issue with another media sharing program - had to restart the service when coming out of sleep) since most of the time when I come home, turn the PC on, and then the PS3 on, and Mezzmo immediately shows up just fine on the PS3. However if I try to access Mezzmo again later during the evening (either with the laptop or the PS3) then Mezzmo is MIA.

Paul
03-22-2010, 08:32 AM
Hello,

We have made some changes to network connectivity/discovery in the server (not released yet), if you are interested in trying a patched version, please e-mail to support and I'll send you one to see if it makes a difference.

Dennis

RMerlin
03-22-2010, 09:39 AM
Thank you. Email sent, along with debug logs generated while the issue was reproduced with the 2.1.4 build.

RMerlin
03-27-2010, 08:06 AM
Just as a follow-up in case anyone else has the same issue: it seemed to be related to sleep mode. What I did was to configure a scheduled task that would restart the Mezzmo service after the computer has been awaken. This worked fine under Windows 7 and should also work under Windows Vista (but NOT Windows XP). If anyone needs instructions just let me know, and I will post the details on how to create such a scheduled task.

Paul
03-29-2010, 08:54 AM
I think it would be a great idea if you could post the details of your work-around here - I'm sure someone will use and appreciate it. Thanks!

RMerlin
03-29-2010, 01:44 PM
The following procedure works only under Windows Vista (untested) and Windows 7 (what I use). It will NOT work under Windows XP, as it lacks required features with the Task Scheduler. This procedure will create a new scheduled task that will be executed every time your computer awakes from sleep, stopping and restarting the Mezzmo service. This procedure solved the issues of the Mezzmo server disappearing (or taking up to 20 mins to appear on the media player).

1) Create a file named RestartMediaServer.bat, and put it in a location that is easy to access (for example, C:\ProgramData\Conceiva\Mezzmo\ . In this file, put the following two lines:


sc stop Mezzmo_(PCNAME)
sc start Mezzmo_(PCNAME)

PCNAME is usually your computer's name. If unsure what's the name of your Mezzmo service, start Mezzmo, go into "Media Server -> Media Server Settings", and see what's the name there for your Media Server Name, replacing spaces with an "_").

2) Create a temporary file located in an easy to access location (such as C:) named "task.xml", and containing the following:


<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<Triggers>
<EventTrigger>
<Enabled>true</Enabled>
<Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="System"&gt;&lt;Select Path="System"&gt;*[System[Provider[@Name='Microsoft-Windows-Power-Troubleshooter'] and (Level=4 or Level=0) and (EventID=1)]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription>
</EventTrigger>
</Triggers>
<Principals>
<Principal id="Author">
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals> <Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>false</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
<IdleSettings>
<StopOnIdleEnd>true</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>false</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>P3D</ExecutionTimeLimit>
<Priority>7</Priority>
</Settings>
<Actions Context="Author">
<Exec>
<Command>D:\RestartMediashare.bat</Command>
</Exec>
</Actions>
</Task>


3) In that file, edit the line containing the <Command> block (near the end) to match the path pointing to the .bat file you create in the first step.

4) Open a command prompt with elevated privileges. To do so, go into your Start Menu -> All Programes ->Accessories ->Command Prompt. RIGHT click on Command prompt, and select "Run as Administrator".

5) In the command prompt, type the following command (specifying the correct path to where you located your task.xml file created in step 2 and 3):


schtasks /create /XML c:\task.xml /RU SYSTEM /TN RestartMezzmoOnWake

You should see the following response:


SUCCESS: The scheduled task "RestartMezzmoOnWake" has successfully been created.

If not, double check the path to your task.xml file.

6) You can now delete the task.xml file, as it is no longer required.


If this procedure actually resolved your issue, please reply to this thread - this will confirm that it actually works for other persons than myself.

Paul
03-29-2010, 01:55 PM
It's a great tutorial - thank you very much for sharing it!

Frank Hagan
04-26-2010, 08:11 AM
I wonder if this would work with Windows Home Server (based on Windows Server 2003)? I have trouble with Mezzmo not showing up on my WDTV Live, and it started after I scheduled the WHS to go to sleep each night between 1am and 6am. Mezzmo is still listed as "started" in services.msc when I check, but without starting and stopping the service manually, it won't show up on the WDTV Live.

RMerlin
04-26-2010, 08:20 AM
Unfortunately, no. WHS is based on 2003 Server/XP, which still uses the older, less advanced Task Scheduler. Your best bet would be to create the batchfile as I did, and put a shortcut on your desktop so you can easily launch it manually whenever you wake your computer up.

Frank Hagan
04-28-2010, 02:52 AM
I'll have to play with this. Perhaps I could use Task Scheduler to run the batch file every morning at 6 AM after the server wakes up.

RMerlin
04-28-2010, 06:38 AM
Sounds like a good idea. You can also set the task to run if it missed the last run time because the PC was off/asleep, so that way even if you were to awake the PC later than usual, the task would still run.