Author: bklaas
Date: Wed May 19 09:33:15 2010
New Revision: 8785

URL: http://svn.slimdevices.com/jive?rev=8785&view=rev
Log:
Fixed Bug: 15663
Description: in AlarmSnoozeApplet, self.server was being erroneously set to 
mysb.com regardless of which server the player was actually connected to.
Move the setting of self.server into the notify_playerConnected() method, and 
only set it for the notification for the local player
add more logging options for debugging WOL issues

Modified:
    
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/AlarmSnooze/AlarmSnoozeApplet.lua
    7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/SlimServer.lua

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/AlarmSnooze/AlarmSnoozeApplet.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/AlarmSnooze/AlarmSnoozeApplet.lua?rev=8785&r1=8784&r2=8785&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/AlarmSnooze/AlarmSnoozeApplet.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/AlarmSnooze/AlarmSnoozeApplet.lua
 Wed May 19 09:33:15 2010
@@ -57,6 +57,7 @@
                timeToAlarm = 86400000
        end
        self.debugRTCTime = timeToAlarm
+       self.debugWOLTime = 0
        self.RTCAlarmTimer = Timer(timeToAlarm,
                        function ()
                                log:warn("RTC ALARM FIRING")
@@ -70,6 +71,8 @@
                                if self.server then
                                        log:warn('WOL packet being sent to ', 
self.server)
                                        self.server:wakeOnLan()
+                               else
+                                       log:warn('WOL timer has been hit, but 
no self.server is available to send to')
                                end
                        end,
                        true
@@ -83,11 +86,29 @@
                        log:warn('**** status.audioState:           ', 
status.audioState)
                        log:warn('**** self.localPlayer.alarmState: ', 
self.localPlayer:getAlarmState())
                        log:warn('**** RTC fallback running?:       ', 
self.RTCAlarmTimer:isRunning())
+                       log:warn('**** self.server:                 ', 
self.server)
+                       if self.server then
+                               log:warn('**** self.server.mac:                 
', self.server.mac)
+                       end
                        if self.RTCAlarmTimer:isRunning() and self.debugRTCTime 
and self.debugRTCTime > 0 then
                                local timeToAlarm = self.debugRTCTime / 1000
                                log:warn('**** RTC time:       ', timeToAlarm)
                                if self.debugRTCTime > 0 then   
                                        self.debugRTCTime = self.debugRTCTime - 
1000
+                               end
+                       end
+                       if self.RTCAlarmTimer:isRunning() and self.debugRTCTime 
and self.debugRTCTime > 0 then
+                               local timeToAlarm = self.debugRTCTime / 1000
+                               log:warn('**** RTC time:       ', timeToAlarm)
+                               if self.debugRTCTime > 0 then   
+                                       self.debugRTCTime = self.debugRTCTime - 
1000
+                               end
+                       end
+                       if self.wakeOnLanTimer:isRunning() and 
self.debugWOLTime and self.debugWOLTime > 0 then
+                               local timeToWOL = self.debugWOLTime / 1000
+                               log:warn('**** WOL timer:       ', timeToWOL)
+                               if self.debugWOLTime > 0 then   
+                                       self.debugWOLTime = self.debugWOLTime - 
1000
                                end
                        end
                end,
@@ -250,7 +271,7 @@
 
 
 function notify_playerPower(self, player, power)
-        if player ~= self.player then
+        if player ~= self.localPlayer then
                 return
         end
         log:debug("notify_playerPower(): ", power)
@@ -267,9 +288,6 @@
 
 function notify_playerCurrent(self, player)
        log:info("notify_playerCurrent(", player, ")")
-       if player == self.localPlayer then
---             self:_alarm_sledgehammerRearm('notify_playerCurrent')
-       end
 end
 
 
@@ -284,6 +302,10 @@
        log:warn('notify_playerConnected: ', player, ' ', self.alarmInProgress)
        if player == self.localPlayer then
 --             self:_alarm_sledgehammerRearm('notify_playerConnected')
+               self.server = player:getSlimServer()
+               log:warn("notify_playerConnected(): setting self.server to: ", 
self.server)
+       else
+               log:info('notify_playerConnected(): this notification player: 
', player, ' not for local player: ', self.localPlayer)
        end
 end
 
@@ -303,9 +325,6 @@
        self.localPlayer = Player:getLocalPlayer()
 
        log:info('notify_serverConnected: ', server, ' is now connected')
-
-       -- self.server is used for WOL purposes
-       self.server = server
 
        if self.localPlayer then
                log:info('local player connection status is ', 
self.localPlayer:isConnected())
@@ -670,13 +689,15 @@
                local wolLeadTime = 1000 * 60 * 5 -- 5 minutes
                if sleepMsecs > wolLeadTime then
                        self.wakeOnLanTimer:setInterval(sleepMsecs - 
wolLeadTime)
+                       self.debugWOLTime = sleepMsecs - wolLeadTime
                        if self.wakeOnLanTimer:isRunning() then
                                self.wakeOnLanTimer:restart()
                        else
                                self.wakeOnLanTimer:start()
                        end
-               -- if it's withing 5 minutes, send a WOL packet as a best effort
+               -- if it's within 5 minutes, send a WOL packet as a best effort
                elseif self.server then
+                       log:warn('SEND WOL NOW')
                        self.server:wakeOnLan()
                end
        end

Modified: 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/SlimServer.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/SlimServer.lua?rev=8785&r1=8784&r2=8785&view=diff
==============================================================================
--- 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/SlimServer.lua 
(original)
+++ 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/SlimServer.lua Wed 
May 19 09:33:15 2010
@@ -603,10 +603,11 @@
 
 function wakeOnLan(self)
        if not self.mac or self:isSqueezeNetwork() then
+               log:warn('wakeOnLan(): SKIPPING WOL, self.mac: ', self.mac, ', 
self:isSqueezeNetwork(): ', self:isSqueezeNetwork())
                return
        end
 
-       log:debug("Sending WOL to ", self.mac)
+       log:info("wakeOnLan(): Sending WOL to ", self.mac)
 
        -- send WOL packet to SqueezeCenter
        local wol = WakeOnLan(self.jnt)
@@ -700,6 +701,7 @@
                if err then
                        log:debug("arp: " .. err)
                else
+                       log:info('self.mac being set to---->', self.mac)
                        self.mac = chunk
                end
        end)

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins

Reply via email to