plexWatch - Windows Branch

Thanks for this tool - this is very useful whilst I wait (impatiently) for parental controls to be implemented. I did struggle a bit with the install which I think is due to the Linux 'language' rather than Windows so I did a short 'what I did' description for install that others may find useful. I'm using this along with plexwatchweb to display the results. OP = please correct  / edit / remove if you want;

Plexwatch Install (Windows 7)

For this example, I installed Plexwatch on the same PC as my PMS running Windows 7

  1. Download all files into c:\plexwatch
  2. Download notepad++ for editing
  3. Rename config.pl-dist-win32 to config.pl
  4. Edit config.pl (using notepad++) and make the following changes
    1. $server_log – change folder to location of plex files using format c:\\users\plex\appdata\local\plex\logs [note the double \\ and use the folder location on your system]
    2. $server – change if installing on a PC that is not running PMS
  5. Open a command prompt in the c:\plexwatch folder
  6. Run plexwatch.exe [note –  you need to specify the EXE otherwise the system will run a VB script; should not return any data
  7. View some media & run plexwatch.exe again; should return data
  8. Add the scheduled tasks for plexwatchnotify.vbs & plexwatchrecentlyadded.vbs
    1. Schedule to run at logon & repeat indefinitely
    2. Run these in the system context irrespective is a user is logged on or not

The VBS scripts ‘watch’ for recent activity and need to be run at a short interval to keep them current & accurate – the delay between running them could be increased but would make the results less accurate but as they use almost no system resource, the short interval shouldn't cause any issues.

Thanks for those great instructions.

How you can make if you have two server plex to tell you in ios from what server is showing a movie?

If you are pointing to the same account boxcar

I'm hoping someone can help me out getting PlexWatch to account for paused shows. I have as the last line of my config.pl

$count_paused = 0; ## included paused time in time watched ( probably do not want this )

and am running the latest version of PlexWatch and Plex but it always counts paused time. I've had this set like this for quite a while and never had the pause function working. Any ideas? Thanks.

Hey, Ijunkie! PlexWatch is still running great, with no problems. I have a question, though:

You list that a user+platform can be specified, which I'd love to implement. I have an iPhone, an iPad, PHT running at my work computer, and a Roku 3 in my living room, and I'd like to manually define each platform and device. I've already defined real names instead of userID in the config file, but the only problem I'm having is figuring out what the "platforms" are called. Is there a list of platform syntax somewhere?

The reason I'd like to do that is because I'd like to override the "on platform" display. In other words:

From this:   tycho1974 Watching Family Guy on Plex Home Theater

To this:       RealName Watching Family Guy on work computer

Actually, more like:

From this:   tycho1974 Watching Family Guy on Plex Home Theater

To this:       RealName (PHT work) Watching Family Guy

                  RealName (iPad) Watching Family Guy

                  RealName (Living Room Roku) Watching Family Guy

                  etc...

I tried to captures ip and I get this error whtn I exectute plexWatch.exe

C:\plexWatch>plexWatch.exe
Mon Dec 16 14:39:40 2013: warning: $server_log is specified in config.pl and C:\
Users\Administrator\AppData\Local\Plex Media Server\Logs does not exist (require
d for logging of the clients IP address)
 
 
do you know what is the reason. I know the path for the server logs is correct
 
this is the data
 
$data_dir = 'c:\\plexWatch'; ## to store the DB, logfile - can be the same as this script
 
$server_log = 'C:\\Users\\Administrator\\AppData\\Local\\Plex Media Server\\Logs'; ## used to log IP address of user (alpha)
$log_client_ip = 1; ## requires $server_log to be available too. (requires File::ReadBackwards)

$server_log must be the full path to the server log file, not the directory.


I tried to captures ip and I get this error whtn I exectute plexWatch.exe
 
 
C:\plexWatch>plexWatch.exe
Mon Dec 16 14:39:40 2013: warning: $server_log is specified in config.pl and C:<br>Users\Administrator\AppData\Local\Plex Media Server\Logs does not exist (require
d for logging of the clients IP address)
 
 
do you know what is the reason. I know the path for the server logs is correct
 
this is the data
 

$data_dir = ‘c:\plexWatch’; ## to store the DB, logfile - can be the same as this script
 
$server_log = ‘C:\Users\Administrator\AppData\Local\Plex Media Server\Logs’; ## used to log IP address of user (alpha)
$log_client_ip = 1; ## requires $server_log to be available too. (requires File::ReadBackwards)

I got it workin

PlexWatch v0.1.9

  • Paused Time on plexWatch/Web did not work when "grouping" is enabled

 

Upgrade instructions:

  • replace plexWatch.exe
  • cmd
  • cd c:/plexWatch/
  • plexWatch.exe --backup    ( this will update the grouped table immediately -- otherwise it will fix itself in 24 hours )

PlexWatch v0.1.9

  • Paused Time on plexWatch/Web did not work when "grouping" is enabled

 

Upgrade instructions:

  • replace plexWatch.exe
  • cmd
  • cd c:/plexWatch/
  • plexWatch.exe --backup    ( this will update the grouped table immediately -- otherwise it will fix itself in 24 hours )

Great, tested the fix and it's now showing paused time in PlexWatch/Web. It still includes the paused time in duration as you mentioned is expected behavior. 

Exactly. That is on the plexWatch/Web side of things and how eleese wants to handle things. It could be odd either way you look at it, but again, that can be dealt with on the plexWatch/Web side now. 

Great, tested the fix and it's now showing paused time in PlexWatch/Web. It still includes the paused time in duration as you mentioned is expected behavior. 

PlexWatch v0.1.9

  • Paused Time on plexWatch/Web did not work when "grouping" is enabled

 

Upgrade instructions:

  • replace plexWatch.exe
  • cmd
  • cd c:/plexWatch/
  • plexWatch.exe --backup    ( this will update the grouped table immediately -- otherwise it will fix itself in 24 hours )

Installed, tested, and looks to be working as expected regarding Paused streams now. Thanks!

Great, tested the fix and it's now showing paused time in PlexWatch/Web. It still includes the paused time in duration as you mentioned is expected behavior. 

Hm, after looking quickly over some recent playbacks I´m seeing the correct duration, aka without the paused time.

Hm, after looking quickly over some recent playbacks I´m seeing the correct duration, aka without the paused time.

In plexWatch/Web or the cli? The cli with --watched I know is correct.

In plexWatch/Web or the cli? The cli with --watched I know is correct.

Web. 

Kf3AF8R.png

hmm, this is interesting. Ever since I dropped the new plexWatch.exe into the plexWatch folder the vbs doesn't seem to be running it anymore

Actually, Its not working. It is working on a windows 7 machine that I have, but the windows 8 machine that i have it running on isn't working. It just creates more Microsoft Windows Base Script Hosts instances that don't go away and it never runs the plexWatch.exe

update:

I think i fixed it. I had to uncheck "Always ask before running this application" dialog box for the new plexWatch.exe

Web. 

Kf3AF8R.png

Isn't this with the paused time? 9 minutes total, 4 mins was paused so duration should be 5 mins but it shows 9? 

Isn't this with the paused time? 9 minutes total, 4 mins was paused so duration should be 5 mins but it shows 9? 

Erm.. Yeaah. I really do not know how I calculated this earlier. Must be all this candy filling my head. Yeah, let's go with that.

when I run plexwatch.exe it shows this message:

The locale codeset (cp950) isn't one that perl can decode, stopped at /Encode/Locale.pm line 94, line 176.

please help, thx.

Looks like a language issue. Not sure how I’m going to fix this. Can you PM me your plexWatch.db? Hopefully there is some info I can test in there.

Anyone here bilingual and able to test plexWatch which the locale set to Chinese?

eversince replacing the config and .exe i am getting an error. I did edit the config file. failed to get the request 192.168.1.12:32400/status/sessions/ the result cannot connect to 192.168.1.12:32400 (timeout) data line 176......i also tried to change it to localhost and still a no go.