SyncLounge - n05urpr1532-MHA-Team/PTS-Team GitHub Wiki

SyncLounge (Previously PlexTogether) is a tool to sync Plex content across multiple players in multiple locations.

How it works SyncLounge aims to keep multiple viewing sessions in sync regardless of whether the clients are in the same room or across the globe. To do this SyncLounge utilizes a middle-man server to communicate between each of the SyncLounge clients. Users choose their Plex client, decide on a SyncLounge Server and Room name and join up. Your friends/family can do the same. Whoever joins the room first will become the host.

The host has complete control over a room. Commands they send to their client will be sent through to other people in the room (Play, Pause, Seek, etc). If the host starts playing something different, SyncLounge will search all of your available Plex Media Servers for an equivalent copy, even if it is not from the same Plex Media Server as the Host.

Features Syncing between Plex Clients over the Internet SyncLounge Player Plays content directly within SyncLounge. Built specifically for syncing. Settings to tune SyncLounge to your environment Client Polling Interval - Sets how frequently SyncLounge will poll the client for new information. Sync Flexibility - Sets the acceptable distance away from the host in milliseconds. Sync method: Clean seek - Seeks straight to where the host is. Skip ahead - Seeks 10 seconds ahead, pauses and then resumes 10 seconds later. Plex Media Server blocking - allows you to restrict the servers SyncLounge searches for content. Autoplay content SyncLounge will automatically search all of your available Plex Media Servers for content that is similar to the Host. Plex Media Server Browsing - find, search and fling content to Plex Clients from within SyncLounge. Metadata fetching from Plex Media Server Chat to others in your room Password locked rooms Invite others via a generated short link Movies and TV Shows (Music not supported) FAQ I have to log in to Plex.tv on the site, how come?

SyncLounge uses your Plex account to fetch details about your Plex Clients and Media Servers to use within the app. Won't you have access to my username, password and Plex account?

All of your details are stored client-side (in your browser). Absolutely none of your confidential data is sent to our server. You can verify this by inspecting the Network tab within Chrome developer tools or if you would like you can deploy SyncLounge yourself - read the 'Building and deploying' section below. What is sent then?

When you've connected to a SyncLounge room, a few details are sent back and forth to the SyncLounge Server to enable syncing. The data sent contains the following: Plex Username Plex User Thumbnail URL Content playing title (Eg. Lord of the Rings: The Fellowship of the Ring) Current timestamp (Eg. 00:35:02) Maximum timestamp (Eg. 03:48:18) Host content ratingKey Host machineIdentifier Playerstate (Eg. paused, stopped, playing) Client response time (ping time between you and your Plex Client) SL Server address, SL Server Room and SL Server Room Password are sent to the WebApp when you join a room to create shortened invite links. What about the public server provided by SyncLounge? Is my data safe?

We log absolutely nothing to disk. Data is kept within the room instance until you leave or the server restarts. We have enabled SSL on our public servers but if privacy is a concern for you, we strongly suggest running your own server. For more details read the 'Building and Deploying' section below. Speaking of SSL, why isn't the site served over HTTPS?

By default, SyncLounge is server via HTTP. While we do offer HTTPS, doing so forces modern browsers into blocking all HTTP connections. This effectively stops all communication with Plex Clients which are all HTTP.

Original Project: https://github.com/samcm/synclounge