Jump to content

Emby Server Status on Rainmeter Skin help


Taurec

Recommended Posts

Taurec

@ Chef,

thats fine..... ok .

I am working on a skin for Rainmeter.

I put a option skn in.

At the xml file i can see that the infos for:

; <ApplicationVersion>
; <Client>
; <DeviceName>
; <UserName>
; <d3p1:SeriesName>
; <d3p1:Name>
 

are available.

Do you grab this data also?

Or only the Client and Username like the first "edition"

Now it is late, i have go sleeping :)

 

cu Taurec

P.S: thx

Link to comment
Share on other sites

chef

you can make it look however you wish.

 

You just have to create any style of skin in rainmeter. Which is actually kind of cool.

Link to comment
Share on other sites

chef

@@Taurec

 

When you make requests to the API for sessions, you will get that information back, yes.

 

You will get all user info, what they are viewing, session IDs, etc.

 

But, keep in mind that not all devices/clients will return all information.

 

Example is Xbox one DLNA, this doesn't return user info but will return everything else.

 

In this instance you will see only that Xbox one is in session and playing something (if it is playing something).

 

You would have to make a separate call to the API to get info for the NowPlayItem (since all that is returned us the NowPlayingItemID)

 

Hope that makes sense...

Edited by chef
Link to comment
Share on other sites

Taurec

@ Chef

Ok I understand :)

At the moment it looks like that the information sufficient to the API call.

You know when you started it, it is hard to stop it.

I started with a Rainmeter skin.
In the first alpha pre version you can see which options of data I want to display.
 
The Main skin
( i like to expand the skin height depend on User)
 
572f4431d43d4_Emby.jpg
 
 
The Userinfo skin:
(the skin appears with the blue info btn at the Username)
 
572f444ad30c4_Emby_Userinfo.jpg
 
 
The Option Skin
(selection witch data are shown at the main skin)
 
572f44626fd84_Emby_Option.jpg
 
 
At first this has to work, Then we take a look what is possible to do :)
 
 
cu Taurec

P.S. hope your session grabber

  • Like 1
Link to comment
Share on other sites

chef

That is beautiful @@Taurec! Nice job.

 

What I did today was build an emby plugin which updates session info with emby event arguments.

 

Where should I point the text file to save information for you to parse for the rainmeter skin?

 

It has to be a text file, parsing dynamic XML with regular expressions will only cause trouble.

 

If your skin can read a text file, and put each line in your skin In The proper place, I can get the emby plugin to write each session and its proper information in the order you request.

 

Also, because it is a plugin for emby, we don't have to authenticate users, which is sweet.

Link to comment
Share on other sites

Taurec

@ Chef,

i thing it must be possible to insert a path for the destination folder where the plugin save the file.

(e.g.  \\ server \ share folder \ Emby \ 20160507_2222017_sessiongrabber.txt )

Fine it will be a filename with date_time_name for sorting

 

The Rainmeter can read files. at the end, it is the question how to disassemble the file.

 

Is it possible that you show the content of the file, so that i can start to prepare the skin?

 

cu Taurec

P.S. thx, for the meaning of skin, it is the first alpha version and i have to spend a lot of time.

      I have to solve some probs with the color selection and to work on the design and and and .....  :)

 

 

 

@speechless

I have a similar problem with the xml file of Plex, you can help me?

it works for me but it is not well implemented.
Please let me know if you have the time to help me.
  • Like 1
Link to comment
Share on other sites

@@Taurec, yeah sure...

 

This entire eggdrop script requires regexp:

http://forum.egghelp.org/viewtopic.php?t=13586&postdays=0&postorder=asc&start=0

 

This one is an eggdrop regexp parser for websites:

http://forum.egghelp.org/viewtopic.php?t=16819

 

These scripts require irc + eggdrop, but they should show you that I know my way around a regular expression or two. What did you need?

 

Sent from my Nexus 7 using Tapatalk

Edited by speechles
  • Like 1
Link to comment
Share on other sites

Taurec

@@speechles

 

I have the following problem

I try the movie name to extract clean ("The First Avenger Civil War (2016).mkv")

The second item is the Username ("Taurec")

 

With follow Regex= (?siU)<Part .*/([^/]*).\w{5,6}".*<User id=.*title="(.*)".*

i get=

1= The First Avenger Civil War (2016).mkv" id="

2= Taurec

 

I have to cut the id=" at the end of the filmname

 

e.g.

Source:
<Video><Media aspectRatio="1.78" audioChannels="2" audioCodec="ac3" bitrate="5196" container="mkv" duration="8837104" height="1080" id="52162" videoCodec="h264" videoFrameRate="NTSC" videoProfile="high" videoResolution="1080" width="1920"><Part container="mkv" duration="8837104" file="/share/DATA/Video Filme/The First Avenger Civil War (2016).mkv" id="52293" key="/library/parts/52293/file.mkv" size="5739289517" videoProfile="high">
<Stream bitDepth="8" bitrate="4900" cabac="1" chromaSubsampling="4:2:0" codec="h264" codecID="V_MPEG4/ISO/AVC" default="1" duration="8837104" frameRate="29.970" frameRateMode="cfr" hasScalingMatrix="0" height="1080" id="123455" index="0" level="40" pixelFormat="yuv420p" profile="high" refFrames="4" scanType="progressive" streamType="1" width="1920" />
<Stream audioChannelLayout="stereo" bitDepth="16" bitrate="192" bitrateMode="cbr" channels="2" codec="ac3" codecID="A_AC3" default="1" dialogNorm="-31" duration="8837088" id="123456" index="1" language="Deutsch" languageCode="ger" samplingRate="48000" selected="1" streamType="2" />
</Part></Media><User id="1" thumb="https://plex.tv/users/edd6821977792b12/avatar"title="Taurec" /></Video>

 

 

 

That bothers me, I want to extract the Filmname clean without additional manipulation.

Do you have any idea

 

 

cu Taurec

P.S: thx for help :)

Edited by Taurec
Link to comment
Share on other sites

CashMoney

Following this thread with great interest, keep up the good works guys!

Link to comment
Share on other sites

@@speechles

 

I have the following problem

I try the movie name to extract clean ("The First Avenger Civil War (2016).mkv")

The second item is the Username ("Taurec")

 

With follow Regex= (?siU)<Part .*/([^/]*).\w{5,6}".*<User id=.*title="(.*)".*

i get=

1= The First Avenger Civil War (2016).mkv" id="

2= Taurec

 

I have to cut the id=" at the end of the filmname

 

e.g.

Source:

<Video><Media aspectRatio="1.78" audioChannels="2" audioCodec="ac3" bitrate="5196" container="mkv" duration="8837104" height="1080" id="52162" videoCodec="h264" videoFrameRate="NTSC" videoProfile="high" videoResolution="1080" width="1920"><Part container="mkv" duration="8837104" file="/share/DATA/Video Filme/The First Avenger Civil War (2016).mkv" id="52293" key="/library/parts/52293/file.mkv" size="5739289517" videoProfile="high">

<Stream bitDepth="8" bitrate="4900" cabac="1" chromaSubsampling="4:2:0" codec="h264" codecID="V_MPEG4/ISO/AVC" default="1" duration="8837104" frameRate="29.970" frameRateMode="cfr" hasScalingMatrix="0" height="1080" id="123455" index="0" level="40" pixelFormat="yuv420p" profile="high" refFrames="4" scanType="progressive" streamType="1" width="1920" />

<Stream audioChannelLayout="stereo" bitDepth="16" bitrate="192" bitrateMode="cbr" channels="2" codec="ac3" codecID="A_AC3" default="1" dialogNorm="-31" duration="8837088" id="123456" index="1" language="Deutsch" languageCode="ger" samplingRate="48000" selected="1" streamType="2" />

</Part></Media><User id="1" thumb="https://plex.tv/users/edd6821977792b12/avatar"title="Taurec" /></Video>

 

 

 

That bothers me, I want to extract the Filmname clean without additional manipulation.

 

Do you have any idea

 

 

cu Taurec

P.S: thx for help :)

You need to break the regular expression up.

 

To get the filename you have to make parsing easier. You cannot get the filename out easily in a single regexp.

 

First issue this regexp: (?siU)Part.*?file="(.*?)"

After it has the entire path/to/filename then use this second regexp on the capture from the first regexp: .*/(.*?)$

Now it will get everything after the last / and capture it. This will be your filename.ext.

 

Then catch the user title the same way you already are: (?siU)<User id.*?title="(.*?)"

Edited by speechles
Link to comment
Share on other sites

Taurec

@ speechles

 

OK, i understand.

I understand. I will try it tomorrow. It's a bit too late for that. :)

Thanks for the note.

 

 

@ Chef

 

i have done a little bit at the rainmeter skin.

I hope I can fill the data correctly.

 

Rainmeter Emby v0.1

5733b2ae7bc3d_Emby_v01.png

 

 

 

cu Taurec

  • Like 1
Link to comment
Share on other sites

Taurec

@ Chef

 

hope you feel good ;)

 

Please let me know how far are the Plugin is.

 

@ Luke

 

there is the possibility that you inflict some values in the Status.xml.
Or some values to change?
For example, the values of the current session as an int
In one session, a value for the current status (watching downloading, etc.

 

Unfortunately, I understand structure of xml file not quite.
e.g. The node <NowPlayingItem closes when no data are included with />
when data are included with </ NowPlayingItem>
Why not always with </ NowPlayingItem> ?

 

cu Taurec

Edited by Taurec
Link to comment
Share on other sites

  • 3 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...