More info about "better profile support"?

  Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
mmnumbp Offline
Junior Member
Posts: 6
Joined: Apr 2012
Reputation: 0
Post: #1
On the Kodi wiki, one of the Team-Kodi project ideas is Better Profile Support:
Quote:Profile support inside Kodi remains extremely hacked together. Improving profile projects would likely be broken down into smaller chunks to make each chunk truly achieveable in a summer.

I'm interested in persuing this idea. What are some of the things that need to be done to improve profile support?
(This post was last modified: 2015-03-15 02:47 by Ned Scott.)
find quote
Montellese Offline
Team Kodi Developer
Posts: 4,834
Joined: Jan 2009
Reputation: 72
Location: Switzerland
Post: #2
I don't have a complete list or anything and I haven't really discussed this with the rest of the team but here are some things that come to mind:
  • Allow addons to be installed per profile. Right now all addons are stored in the same place and are used by all profiles but every profile has its own addon database so addons can be enabled/disabled per profile.
  • Better support for library sharing like independent watched states. Right now when a library is shared every property of the library items is shared including watched state and resume positions etc.
  • Library sharing with specific filters applied (e.g. for parental control) similar to Plex Home: https://blog.plex.tv/2014/11/20/introducing-plex-home/
  • Improved integration in the UI
  • Improved integration in the code. Right now there are a lot of hacks all over the place to handle some of the profile features but it is often forgotten when writing new code. Therefore a consistent framework/interface that can be used by other core code to handle shared libraries etc would go a long way.
I'm sure there's more and new ideas are obviously welcome as well.

Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
find quote
da-anda Offline
Team-Kodi Member
Posts: 5,777
Joined: Jun 2009
Reputation: 77
Location: germany
Post: #3
IMO we should first redo the DB layout in general before fixing profiles, because it will simplify parts of the improved profile support. It's ofc no necessity
(This post was last modified: 2015-03-04 14:18 by da-anda.)
find quote
Montellese Offline
Team Kodi Developer
Posts: 4,834
Joined: Jan 2009
Reputation: 72
Location: Switzerland
Post: #4
We are talking about re-doing the DB layout for three years now and I haven't seen a single line of code in that direction so I'm not gonna hold out on that one for anything. Furthermore some of the above features don't necessarily need any adjustments in the library databases.

Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
find quote
jjd-uk Offline
Team-Kodi Member
Posts: 6,192
Joined: Oct 2011
Reputation: 152
Post: #5
It would be nice to more easily switch profiles by have a Action ID to call the profile login screen so it can be mapped to a remote button.
find quote
wyrm Offline
Skilled Skinner
Posts: 1,291
Joined: Nov 2007
Reputation: 19
Location: Perth, Australia (GMT +8)
Post: #6
(2015-03-04 14:57)jjd-uk Wrote:  It would be nice to more easily switch profiles by have a Action ID to call the profile login screen so it can be mapped to a remote button.
@jjd-uk,

Not wanting to thread jack, but you already have an one. Logoff. Will log you out and then show the login screen.

Wyrm (AppTV)
find quote
RockerC Offline
Posting Freak
Posts: 1,485
Joined: May 2011
Reputation: 28
Post: #7
(2015-03-04 05:18)mmnumbp Wrote:  On the Kodi wiki, one of the Team-Kodi project ideas is Better Profile Support:
Quote:Profile support inside Kodi remains extremely hacked together. Improving profile projects would likely be broken down into smaller chunks to make each chunk truly achieveable in a summer.
I'm interested in persuing this idea. What are some of the things that need to be done to improve profile support?
From a users experience point-of-view of user profiles and specially multi-user support I suggest to checkout these discussion threads for ideas

http://forum.kodi.tv/showthread.php?tid=208350
http://forum.kodi.tv/showthread.php?tid=216941
http://forum.kodi.tv/showthread.php?tid=198597
http://forum.kodi.tv/showthread.php?tid=201890
http://forum.kodi.tv/showthread.php?tid=217147
http://forum.kodi.tv/showthread.php?tid=153978

User profiles and multi-user support also closely relates indirectly and directly to Parental Control so it might be worth researching that too

http://forum.kodi.tv/showthread.php?tid=181979
http://forum.kodi.tv/showthread.php?tid=210312
http://forum.kodi.tv/showthread.php?tid=7394

From a developers under-the-hood view I think that you will want to read through this thread a couple of times as well

http://forum.kodi.tv/showthread.php?tid=200911
find quote
Tolriq Online
Donor
Posts: 3,043
Joined: Jun 2009
Reputation: 101
Location: France
Post: #8
One thing that really was discussed but never put and mandatory is Webserver configuration during profile selection screen Smile

This is asked since a long time and AFAIK still not present so users can't connect with remotes and that kinda suxx if I may say that.

And even if you say no db change for that, if there's watched / resume point per profile please take time to think about proper ways via JSON to handle that Smile
find quote
poplap Offline
Senior Member
Posts: 195
Joined: Dec 2012
Reputation: 1
Location: The Underworld
Post: #9
Has anyone claimed this, I was thinking of trying GSoC this summer and this sounds like a good project to do. I know I have an interest in having something like this plus it would help me to better understand how Kodi works (you know for future help Big Grin ) I have more experience with C then C++ as I have primarily worked on robots (Flockbots - A bit outdated right now) but I am quick at picking up new languages.

I really like the idea of implementing a proper structure for multi user idea, very much like Netflix, and as a long term goal make it syncable between machines. Also with Retroplay it would be cool to have multi user login at the same time kind of like how consoles do now, but again thats a long term goal. Mostly what I want to do is set it up for future expansion and improvements by providing a better back end to work with.

Name: Poplap
Summary: Improve multi profile functions in Kodi by laying down a better framework that extends and cleans up the current state of profiles. Providing a better way to isolate user data and configurations such as addons and their data, as well as watch states and currently playing. As well provide an avenue to further extend the profile feature set in the future.
How will I achieve this: I will first design and implement, in C++, a framework that provides a standard interface for user data and profiles.
What will the project focus on: Development of an internal structure, as well as cleaning up the current state of user profiles.
Benefits: A better user experience for multi user HTPCs as well as hopefully improving how developers interact with user data.
Goals: 1. Get a better handle on how data is stored on the backend. 2. clean up the hacks and provide a bit more of a standard. 3. Lay the groundwork for future expansion and API improvements (JSON integration, etc)
What does it touch in Kodi: This will probably touch quite a bit, but for sure userdata, profiles, database, settings, addons, JSON and a few other areas.

Raspberry Pi Model B 2 1024MB @ 1.0Ghz w/OSMC
--Decommissioned-- Raspberry Pi Model B 512MB @ 1.0Ghz w/ 3TB USB Drive Running Open Media Vault
find quote
dhead Offline
Donor
Posts: 696
Joined: May 2010
Reputation: 3
Post: #10
Here's another idea to add to the list:

Multiple users on video playing now session.
In other words user A can login with its profile (or generic "Family profile") and when starting to play a video user B can add itself to the list of users watching the video.
The idea this would be handles by Kodi (and not 3rd party solution like Trakt.tv).
This could be done from Kodi interface, mobile app, or even from an 3rd party hardware solution like NFC reader (media room couches/sits with NFC reader for every sit, users could just put the phone or NFS token) or little touch screen.
find quote
natethomas Offline
XBMC Chief and Kodi Project Manager
Posts: 6,232
Joined: Apr 2008
Reputation: 128
Location: Kansas
Post: #11
poplap, I suggest you start a new thread with your proposal, just so we can be sure to keep it separate from any others.
find quote
poplap Offline
Senior Member
Posts: 195
Joined: Dec 2012
Reputation: 1
Location: The Underworld
Post: #12
@dhead: thats not a bad idea, should also be easy enough to do. Just allow multiple user's watch states to be updated. Log on function would be to add to the JSON API so allowing more than one user to log on shouldn't be too much of a problem (I say that now XP ) as well as adding a simple menu to the OSD for remote based setup.

@natethomas: I will do that, thanks.

Raspberry Pi Model B 2 1024MB @ 1.0Ghz w/OSMC
--Decommissioned-- Raspberry Pi Model B 512MB @ 1.0Ghz w/ 3TB USB Drive Running Open Media Vault
find quote
RockerC Offline
Posting Freak
Posts: 1,485
Joined: May 2011
Reputation: 28
Post: #13
(2015-03-14 10:20)dhead Wrote:  Here's another idea to add to the list:

Multiple users on video playing now session.
In other words user A can login with its profile (or generic "Family profile") and when starting to play a video user B can add itself to the list of users watching the video..
That is basically how Profiles works in Netflix interface from the end-user perspective to help track facility Watched Status when multiple users are watching something at the same time.

https://help.netflix.com/en/node/10421

Netflix does anyway have a nice way to mark a movie or show as watched for multiple user profiles when you viewing a movie or show together with your whole family.



More info:
http://www.technologyguide.com/news/netf...-accounts/
http://www.engadget.com/2013/08/01/netfl...worldwide/
http://www.cnet.com/news/netflix-tweak-l...-profiles/
http://anewdomain.net/2013/08/25/set-net...e-gallery/
http://www.techreport.com/blog/25229/net...-profiling

Screenshot:
[Image: Netflix-User-Profiles.png]

Again see previous discussions about similar suggested ideas here

http://forum.kodi.tv/showthread.php?tid=208350



(2015-03-14 10:20)dhead Wrote:  The idea this would be handles by Kodi (and not 3rd party solution like Trakt.tv).
Yes I agree. However adding the part of pushing the watched data to online tracking sites would probably a whole separate summer project on its own.

Ultimately I think best would be if Kodi also had an universal media "Scrobbling" framework in Kodi's core with a common API that can push (and pull) this tracking data from scrobble client plugins as service addons.

¨I have suggested this as an idea before in this other thread here http://forum.kodi.tv/showthread.php?tid=130917

Such a "Scrobbling" framework and API inside Kodi's core could be used not only for movies and tv shows but for music and games too.

For reference, the term for this function is scrobble http://en.wiktionary.org/wiki/scrobble as originally defined by Last.FM http://www.last.fm/help/faq?category=99

And since it was Last.FM who basically invented this concept once idea would be to to try to find someone who have already revered engineered the Last.FM framework and API and reuse that code if released as open source.

Another suggestion would be to look into if STOMP messaging protocol could be used as a reference for the API

http://stomp.github.io
https://github.com/stomp/stomp-spec
find quote
hades200082 Offline
Junior Member
Posts: 1
Joined: Jul 2015
Reputation: 0
Post: #14
Can we add something simple to the list? Like the ability to login to a profile using the iOS/Android remotes?

This seems like a pretty basic feature for profiles that's missing.
find quote
Tolriq Online
Donor
Posts: 3,043
Joined: Jun 2009
Reputation: 101
Location: France
Post: #15
This is already the case, api covers that Smile

The only problem is the one reported earlier about webserver not activated on profile selection since the Team needs to make a decision about how to handle that (no profile = no webserver configuration so either needs the master profile one or another specific config), not really profile related, but having a common decision seems hard to take Smile
find quote