ecleese / plexwatchweb Goto Github PK
View Code? Open in Web Editor NEWA web front-end for plexWatch.
A web front-end for plexWatch.
I understand that it is pulling this image from the Plex Server and can't if its been deleted, but as an improvement, could this be some sort of stock media image instead?
I have PlexWatch group everything that is User = jsgiacomi and Device = Roku 2 XS then group as "Tahoe". This was a feature that was asked for in the forums and delivered in Plex Watch. Is there a way to carry it over to PlexWatchWeb?
$user_display = {'REAL_USER1' => 'Frank',
'jsgiacomi+Roku 2 XS' => 'Tahoe',
'REAL_USER2' => 'Rob & Carrie',
'REAL_USER2+Roku 3' => 'Family Room',
'REAL_USER2+Roku' => 'Family Room',
'REAL_USER2+iOS' => 'Rob',
The Home, Users, and Charts pages are working on my install and look pretty good. There are some image loading issues, but that's addressed with another open issue.
The problem I'm having, is that the History page is coming up blank. The odd part is, if I go into Charts and then select an episode, it displays the history for that episode without incident.
Some information about my setup: I'm running this from IIS7 with Php installed.
I'm so glad someone is working on a website like this, I love it!
As the plexWatch database grows the potential for plexWatch/Web to lag when table data is possible.
Implement server side based processing to rectify this.
When someone clicks on User in the upper right corner I propose the interface look something like the below. It is much more valuable to see a snap shot in this way then just a bunch of circles with names IMHO.
It would be a great way to see all your users in one place and how much they are using the streaming service and how recently they used it. I would imagine a toggle at the top so that you can look at the data by TOTAL TIME WATCHED or by TOTAL NUMBER OF THINGS WATCHED (count #). Not sure if it is possible to get MB streamed, but that would be really cool. Probably far fetched, but the other stuff should be pretty easy. What do you think?
PS: because this is discussing the landing page of Users I view this as a separate enhancement than the user stats page shown when you click on a specific user.
This probably affects other areas to, but I noticed this in the charts page.
Example:
Movie: Iron Man 3
Section: Movies (ratingKey: 7675)
Section: 3d Movies (ratingKey: 8787)
The history will show a play count of lets say 11, however the linked item is only for rating key 7675, which only has one play. The rest of the plays were in 8787.
I was playing around with it, and it looks like we might want to pass info.php?id=7675|8787 and handle multiple rating keys for the same title. I have a working example for passing multiple keys, but I haven't worked on actually obtaining the multiple keys before being passed. You might have better ideas since it's your code :)
if you update images in Plex/Web and then save, the updated images appear in PMS but not in plexWatchWeb.
Since this is my first PHP project I'm pretty much a newbie at the language. I'd like to get some feedback from others more knowledgeable then me on how the code can be better written, optimized and verified that what I've written doesn't have security vulnerabilities like SQL injection.
As a simple example, I realize I can jump in and out of <?php statements. Are there any performance benefits to doing this over how I have it currently written staying mostly inside of it?
Any thoughts on this would be much appreciated.
$results = $db->query("SELECT * FROM processed WHERE session_id LIKE '%metadata/".$id."%' ORDER BY time DESC");
This query has the potential to give multiple results using "LIKE". For example, a query for metadata/12 could give a result of:
metadata/12,
metadata/120,
metadata/1200
even, metadata/1203_ would be a result.
I have tried using "=" and "MATCH" but was unsuccessful. The only solution I have found currently is to have the sqlite tables formatted for "FTS" or Full Text Search.
.... Everything was working fine. I updated the plexwatch and your web. the home page works. watched now shows up. and recently added. but, any other tab has errors.
Warning: SQLite3::querySingle(): Unable to prepare statement: 1, no such table: grouped in C:\xampp\htdocs\plexWatchWeb\history.php on line 99
Warning: SQLite3::query(): Unable to prepare statement: 1, no such table: grouped in C:\xampp\htdocs\plexWatchWeb\history.php on line 100
Failed to access plexWatch database. Please check your settings.
that was history tab.
Warning: SQLite3::query(): Unable to prepare statement: 1, no such table: grouped in C:\xampp\htdocs\plexWatchWeb\users.php on line 99
Failed to access plexWatch database. Please check your settings.
profile tab.
Warning: SQLite3::query(): Unable to prepare statement: 1, no such table: grouped in C:\xampp\htdocs\plexWatchWeb\charts.php on line 110
Failed to access plexWatch database. Please check your server and config.php settings.
Charts tab.
I dont know what i could of done wrong. the home page all works so it is getting access to the db. Thanks a bunch!
Chris
p.s. i do get this in status but, everything shows up fine
Warning: fsockopen() expects parameter 2 to be long, string given in C:\xampp\htdocs\plexWatchWeb\index.php on line 99
I would like the ability to reorder the sections on the front page. I don't see a lot of use of the "Plex Status" section and would like the ability to either disable it or move it to the bottom.
Add myPlex support so Images work from wherever you visit :)
Found a bug in the dev build (v1.5.0.8)
When looking at the watching history for a specific movie or tv show, it doesn't display the correct duration. It always shows 0 mins.
Duration shows up fine in the Logs under the History page. All the other details are correct and match 100%.
Ref:
https://forums.plex.tv/index.php/topic/82819-plexwatchweb-a-web-front-end-for-plexwatch/?p=543570
Running on OS X 10.9
plexWatch/Web Version: v1.4.0.8 dev
plexWatch Version: v0.1.6
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /Applications/XAMPP/xamppfiles/htdocs/plexWatch/history.php:54) in /Applications/XAMPP/xamppfiles/htdocs/plexWatch/includes/functions.php on line 4
Fatal error: Call to undefined method SQLite3::busyTimeout() in /Applications/XAMPP/xamppfiles/htdocs/plexWatch/includes/functions.php on line 52
Any Ideas?
you can pull the watched history with a query including the xml as a search key.
Example: True Blood ( key=9020 )
SELECT xml,title,time,user,orig_title,orig_title_ep,
episode,season,datetime(time, 'unixepoch') AS time
FROM grouped
where xml like '%grandparentRatingKey="9020"%'
edit: if that is somehow slow, which it seems not to be, including something like " and season is not null " could help
current types completed:
add:
User registration and authentication framework to better secure plexWatch/Web when accessed from remote networks
I don't know how other users feel about this, but I feel like Stats belong on their own page. The history page should just be the log table showing whats going on, nothing more. At the moment you have to scroll past the stats. I think it'd be better to just have log table, and then set the default number of entries to 25 as you have more screen real estate without having to scroll. I know this just comes down to personal preference so it'd be nice for other users to chime in and let us know their thoughts.
Hey guys, love PlexWatchWeb a whole lot, works great for me about 99% of the time.
However, recently (starting Nov. 18th), my PlexWatchWeb History page seems to have simply stopped recording the play history for my media server. The Hourly Plays graph is always completely empty (no graph in shows up, just blank space). My Daily Plays graph stops at November 17th, and I have not once seen it display data for a more recent day since Nov. 17th. Please see my included screenshot for reference.
Additionally, the Watching History is messed up. It successfully shows the videos currently being watched, but those history items never stick around, as the next most recent item is from (you guessed it!) Nov. 17th. I have included a screenshot for reference as well.
Is anyone else experiencing this issue as well? Is this perhaps due to an update in the Plex or PlexWatch code that PWW simply hasn't been updated to support yet? It's worth noting that while these issues persist on the History page, the rest of PWW seems to keep track of and remember what has been watched, even since Nov. 17th. So a user's history page does show me (I believe) the correct and most recent watched history.
Thanks in advance for any help! Screenshots for reference below.
I propose 2 solutions. First, in the History tab, if a user is CURRENTLY streaming we should designate it in some way. Maybe put a green play button next to the movie/show in a new column? Second we should leave the "Stopped" time blank.
Thoughts?
Hello! Just another few stat requests that I think would enhance plexWatchWeb.
Thanks!
I may have to permanently move away from using this provider for geo location information since it continues to experience a lot of downtime.
If a video is playing and plexwatch crashes or get's "stuck" you might get a history item that shows you watched it for lots of minutes that you didn't actually watch it for (I have a 20 minute episode showing 900+ minutes). I would be awesome to be able to edit or delete them from the web interface.
The new users page (in the Dev build) looks great, but I would add one extra column: 'Total Duration'. 'Total Plays' don't always provide accurate representation of utilisation. Some users may have watched lots of short TV shows, or just select clips from movies, compared to other users who watch full length movies. Adding duration to the summary table would give a useful glance of utilisation per user.
I see the hourly plays are for the last 24 hours. What do you think about keeping that, and labelling it so people know it's last 24 hours and then adding another graph for Max Hourly Plays?
Query: SELECT strftime('%Y-%m-%d %H', datetime(time, 'unixepoch', 'localtime')) as date, COUNT(title) as count FROM grouped GROUP BY strftime('%Y-%m-%d %H', datetime(time, 'unixepoch', 'localtime')) ORDER BY count(title) desc limit 10
I really like the new icons for the players but i notice that when i use the Samsung SmartTV Plex app, there is no icon. It just shows the generic "icon missing" icon. Any plans to add icons for Samsung?
As an enhancement to the Top 10 Charts, it would be nice if we could have them broken down by Media Sections from PMS.
E.g.:
I realise that some people have tons of sections and everybody organises their library differently, so to prevent the page from becoming messy and too busy, maybe leave the current view as default and have a user-selectable drop down list of choosing another section?
Not sure how feasible this is but I thought I'd propose the idea nonetheless and see where it goes. Let me know what you think.
I had issue installing on FreeBSD. Look through my apache logs showed I did not have the following installed:
php-sqlite3
php-simplexml
For FreeBSD these are in the ports repository:
/usr/ports/databases and /usr/ports/textproc
In my case, I have php5.5 installed, so I used php55-sqlite3 and php55-simplexml
It would be good to include these in the read me for what libraries are required, in addition to php-curl
i am getting this about 20 times under history.
Warning: Division by zero in C:\xampp\htdocs\plexWatchWeb\history.php on line 163
Warning: Division by zero in C:\xampp\htdocs\plexWatchWeb\history.php on line 163
Warning: Division by zero in C:\xampp\htdocs\plexWatchWeb\history.php on line 163
Warning: Division by zero in C:\xampp\htdocs\plexWatchWeb\history.php on line 163
Plex Media Server /status/sessions always reports "Plex/Web (Chrome)". Break this out and differentiate between Plex/Web (Chrome) and Chromecast using the field.
I like the --stats that plex watch outputs. I was thinking you could add the following to the user page so when you bring up a user it displays the following:
HH:MM watched in the last 24 hours (1 day)
HH:MM watched in the last week
HH:MM watched in the last month
HH:MM watched All Time
Good stats to have handy when assessing usage....should be pretty easy to add to the top. Let me know what you think.
I just installed and noticed these. Probably a really easy fix but I haven't looked at the code yet. I'm betting that as soon as these have a count of 1 or more these php errors will go away. I will copy and paste the errors below and a link to a screenshot:
Notice: Undefined variable: userStatsDailyTimeViewedTimeRowLength in /Users/zeus/Sites/d4rk.co/plexWatch/user.php on line 197
Notice: Undefined variable: userStatsWeeklyTimeViewedTimeRowLength in /Users/zeus/Sites/d4rk.co/plexWatch/user.php on line 234
Notice: Undefined variable: userStatsMonthlyTimeViewedTimeRowLength in /Users/zeus/Sites/d4rk.co/plexWatch/user.php on line 271
Enhancement: I think we should add the ability to change the time zone to reflect the users current time zone.
This one looks like a bug. On the Users page, when you try and sort by 'last seen', it only sorts by value, not taking into account that 1 day is longer than 2 hours.
http://i12.photobucket.com/albums/a248/SkuiD87/ScreenShot2014-01-04at203708_zps1383f713.png
include some real-time statistics about the plex server. load, processes, drive space, etc. If possible, this should be compatible with linux, windows and mac.
I need to read more about the licensing for what I've come up with to ensure it can be distributed before a commit but here is an example screenshot.
It would be great if they multiple users could leave notes on a general notice board that other users can read, recommend shows or movies or even request new ones through polls etc.
https://forums.plexapp.com/index.php/topic/88728-feature-request-noticeboardnotes/
Would be great to add stats that show 'Total usage by hours in a day'. Not just for the last 24 hours, but the total of all plays at any given hour.
This would be useful for us to monitor which time of day the PMS is being utilised most.
This could also be extended to 'days in a week', or 'months in a year'
Ref for examples:
https://forums.plex.tv/index.php/topic/82819-plexwatchweb-a-web-front-end-for-plexwatch/?p=542880
Have distinction for 'sort' and 'display'. The date column should always sort by "Y/m/d", but I'd like dates to be displayed as "d/m/Y".
Looks like the floodgates are open now that the plex forum post is live.
Here is an error that I get in 0.0.3 that does not exist in the master fork.
Warning: simplexml_load_file(http://192.168.1.15:/status/sessions) [function.simplexml-load-file]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /Applications/XAMPP/xamppfiles/htdocs/plexWatch/index.php on line 67
Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external entity "http://192.168.1.15:/status/sessions" in /Applications/XAMPP/xamppfiles/htdocs/plexWatch/index.php on line 67
Failed to access Plex Media Server. Please check your server and config.php settings.
How secure is it to leave PlexWatchWeb open to the internet? Would be great to get SSL and have it protected by a Username and password. That might be asking a lot but thought I would add it to the list for implementation one day. Right now Sickbeard, SABNZBd are both password protected from the outside.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.