Jump to content


Homey-GER

Member Since 13 Nov 2011
Offline Last Active 10 Oct 2012 17:39
-----

#304343 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 5 October 2012 - 19:13

Hey!

I am still around here somewhere. And yeah still using OpenWebif! It's right that I've lost interest after I had so much fun with the project, primary because I got a new fulltime job as webdesigner/softwaere developer for a big company with 4 letters everyone probably already used for shopping ;) and secondly I got a lot of bad bashing mails from here because I am a "bad guy from the dark side". :huh:

But if you need help somewhere, just let me know. The new MultiEPG looks great and yeah it's too small! I've already updated some stuff here to get full screen support for my 1920px monitor, but I have no clue if everyone would like it, it also has some benefits to have a fixed small width. So the question is, do we really want to have the full webinterface on dynamic width like I have done it for me? Or do we only want the MultiEPG to be larger? Some time ago I was a big fan of fixed widths ... but as soon you have a 27" Full HD Monitor ... everything looks so small !

I have an updated CSS file for a dynamic webif width, but it's not perfect yet and needs some more finetuning and fixes for the CURRENT epg toolbar, it has some hardcoded CSS Stuff that needs to get improved and fixed and probably some other layout changes need to be made on other screens to make it look nice, even on wide screen

BTW: Didnt even know someone is missing me here, I thoght you are happy about that after all those "nice" feedback mails from here, but well ... who cares!! :P

If you need help, just tell me what needs to be done! I prefer getting stuff to do on a list and then just do it ;)

/usr/lib/enigma2/python/Plugins/Extensions/OpenWebif/public/css/style.css

Attached Thumbnails

  • openwebif.jpg

Attached Files




#235791 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 1 December 2011 - 19:19

I also would open one bouquet by default. The first one or the current one that is selected on the TV where a channel selected


#235788 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 1 December 2011 - 19:13

Yeah I like it too! Good job!

Probably one thing I would optimize is the height of the main container so that we don't have to scroll there too if there are many channels in a bouquet. Because I have 2 scrollbars for the entire screen and one for the bouquets. Have to scroll down on 2 scrollbars to see the bottom. I would prefer to see the whole channellist without a scrollbar, at least in the bouquet-view. What you think?

Just wondering: What was the reason that patching jquery ui was required? Usually this should not be required, but maybe you can tell me what and why this was required ;)


#234378 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 24 November 2011 - 22:39

I've commited basic version for a mobile version of the webif. Just use the /mobile/ url ... it currently has an iPhone CSS File only, not sure if and how it works on other devices, but except the iPhone Style it should work on all popular devices. And yes, not much can be done there yet, I've just added the basic structure and screens.

Feedback welcome!


#234128 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 23 November 2011 - 22:13

That should also be possible for sure (opkg remove enigma2-plugin-extensions-webinterface), but you still have to change the port of OpenWebif then to Port 80 because by default it runs on port 8088


#234117 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 23 November 2011 - 21:50

Would it be beneficial to get jquery from a CDN?

No it

No, it wouldn't help to reduce the load on the box or whatever. Javascript gets completly executed in the client browser, not on the box. The only thing the box has to do is to transfer the file to the browser, which is not a big problem. It's about 100kb and will get cached by the browser anyway.

---
When we talk about Mobile Devices, I forgot to say that this is one of the main reasons I am working here and for sure I want a mobile version of the webif for my iPhone and Galaxy. I already have some screen ready for my iphone, but nothing what I want to commit yet. Maybe later this week when I can finish some of the screens. I am using jQuery-Mobile which is very nice because you can do a lot of stuff without writing much code, most of the stuff is done by jQuery-Mobile for me and it works with all popular devices (iOS, Android etc). I have a small iphone.css file included now with around 50 lines of CSS code for background and general iphone feeling of buttons etc and can later add more css files for other systems like android or whatever. I kept the HTML very simple, just a few DIV Containers and the other stuff is done by CSS and jQuery so it should work fine on many different platforms.

The main question is: What do we need in the mobile version of Open Webif?

Currently I only have Channellists, Timers, Screenshot and Remote+POwer Control on my ToDo List. Is there something else you want me to create, I know there are some APPS out there that we also could easily implement into the OpenWebif so we don't need all kind of Apps to control our box and can do everything within the mobile webif.

Small Preview from my Mobile Webif Screens (looks better on iphone then in firefox; but well)

Attached Thumbnails

  • openwebif.mobile.png



#233214 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 20 November 2011 - 14:28

I've committed most of my stuff today so we have something to play with :)

For sure I will update those screens I've commited in the next days again and optimize the code, make it nicer, more error-handling etc.


#232801 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 19 November 2011 - 14:03

Hey there

So I had finally some time this morning to develop some stuff.
I've created some screens and stuff:
- I've created an feed containing volume, mute status, current channel and standby mode (using skamans json api)
- This feed is used in javascript and fetched every 15 seconds to update the volume control and sets current channel-name in the header
- A simple Power-Control Screen for restart and power on/off buttons
- An experimental bouquet screen to watch channellists. The HTML Table is created via javascript on the client completly based on the json channellist feed (also json api from skamans). The Full Channellist loads in about 2 seconds now, instead 5-6 when using the old method where the box has to render HTML completly with cheetah tpl engine.
- Movielist Screen already finished days ago.
- Currently working on "Send Message" and Sreenshot Screens which should be also finished an hour or so.


#232015 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 16 November 2011 - 18:31

grr cant even edit my postings ...

Just make sure you also try it on a Nokia N97 or similarly slow device.
Processor speed and resources on mobile devices are very often
comparable or even less than satellite boxes, not to speak of the
sometimes awkward browsers used on these devices.


Yes for sure this needs to be checked. But I dont have a N97 but an old and very slow iPhone 3G. I will see how it performs when it has to create the channelist via javascript inside the browser. What's also good about json is that we only need to transfer 10% of the Data via Internet. Specially if you are not at home and want to use the webif on your phone via internet, it can help a lot of we don't have to transfer so much data via internet. For example the ALL Bouquet has currently a size of 800kb. With JSON format it's only 80kb. Much faster to transfer this via Internet ...


#232010 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 16 November 2011 - 18:23

Sorry I am limited here to make postings due to forum restrictions for new accounts.

So ... let's make a ToDo List so I know what needs to be done and what I can do from it.[list]
[*]An Status Ajax-Feed (JSON prefered) where we grab informations from current running-state (Volume, MuteStatus, Current Channel, StandBy Mode and maybe other information that we need)
[*]Use this Feed to set current Volume, Channel in Header and other things (all this can be done via jQuery when Ajax Fetch done; we should grab this feed every x seconds and update information in WebIf)
[*]BoxInfo Tab: Look why Chipset is "unknown" on my DM800se
[*]Movies: Get my Movielist Stuff into GIT
[*]TV Bouquets: For Testings purposes I want to create an JSON Channel List and render the HTML via jQuery in the Browser
[*]Box Control: Send Message, Power-Control and Screenshot Support (shouldn't be much work)
[*]Box Control:Timers and Remote Control (much work)
[*]Radio List
[*]WebTV: TV Live Stream Support
[/list]
I can create the first 5 things within the next few days, but if someone else wants to create one of this, let me know.


#231544 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 14 November 2011 - 22:17

Okay so last but not least for today I made a quick bencharmk with my "ALL Bouquet" to see how long it takes to load it.

my all bouquet contains around 1500 channels if I remember right.

It takes around 30 seconds on the original webinterface ...

And around 6 seconds currently in the OpenWebif. One second is for the python part (getChannels()) and around 4-5 seconds to generate the template and html code.

Without the template stuff and directly outputting JSON Object it takes around 2 seconds. So thats more then 2x faster than letting the box creating the full html code for 1500 channels. Might be worth to take a look at it, specially on slower boxes like the old DM800 it could be much more faster then.

Benchmark Results:
1.) Just Python Stuff
2.) Output Data as JSON Object
3.) Current Webif Call (let the box create full html)

Attached Thumbnails

  • benchmark.png



#231536 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 14 November 2011 - 21:48

Here a simple JS to make it possible to mute/unmute by clicking the Speaker:

$('#volimage').click(function(){
  if (mutestatus == 0) {
   mutestatus = 1;
   $.ajax("web/vol?set=set0")
   $("#volimage").attr("src","/images/volume_mute.png");
  } else  {
   mutestatus = 0;
   $.ajax("web/vol?set=set" + $("#amount").val())
   $("#volimage").attr("src","/images/volume.png");
  }
});

And a "var mutestatus = 0;" global variable definied at the top of openwebif.js

For sure can be done better (we need to know mute status on the box for example). Just a quick way to make my friend happy and give him his mute button ;)

Yes we talked with skaman about this possibility but we are not so expert in javascript so feel free to try any solution that can speed up performance with json.


Okay then I will create a test bouquets-list within the next days, JSON based and the HTML rendered by the Browser and jQuery. It's not that complicated with jQuery, but I guess that's easy to say for me because I am working with jQuery and Javascript and Ajax Calls like this 8 hours per day in my job :)

Let's just try it out one time to see if it makes a big difference between letting the browser or box creating the ready html for this. I think that template engine does a good job and if it's not much big difference we can keep it the current way. But I am interested to know how quick it can be if we just fetch an json object with the channels and let the Browser then render the HTML with jQuery. Then we can do some benchmarks and see what performs better and makes more sense.


#231506 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 14 November 2011 - 20:20

Looks very nice! I like that!

There is a lot of nice stuff that can be done with javascript, specially jQuery. I am working in my job all the day with it because most of the stuff we do with jQuery. So go with that!

Like already said, my movielist is basicly ready to release, just 1-2 more things that I will finish tomorow.

Maybe you guys also have some ideas and suggestions what we could do there? Some new features, some nice effects? It's currently very simple, but if you have some ideas of what else I could implement there!?

movies.png

Just one more thing I would like to say:
About performance when fetching bouquets, movielist etc.
I didnt had time to benchmark the cheetah template engine and bouquet fetches and also see the performance is already very very nice, but there is maybe one last thing we could do better. Instead letting the Box creating the template and full html for the ajax call, we could minimize it and just fetch the channellist via AJAX as a JSON String. Less Overhead because the box does not need to create the full HTML for it. We could just fetch an JSON Object/Array with the channeldata and create the HTML with jQuery. This is a common practice today to keep load low on webservers, just push out json with the required data and let the client (browser) of the user create the full HTML. This is usually much faster then fetching XML Feeds or letting the server/box creating the full HTML.


#231473 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 14 November 2011 - 18:26

DMMs are custom made ​​home-GER Multimediathek plug only, Vuplus, Xtrend, Azbox to put devices such as clone. Does this open-source?
Now trying to help have come here, it does not need the software developers, software Let it go DMMs.


I've created and released around 20 plugins, all of them work fine on your boxes. Except that MultiMediathek Plugin. It's not even the plugin which is protected, it's my webserver feeds which are protected and I had very good reasons for it to protect those feeds because many people were grabbing stuff from those feeds, too many for me and my server. But I don't like to explain this in detail now why I have decided to protect illegal feeds on my server. If you look back to VU Forums I was also looking for a solution to get you guys onboard but it ended it a flamewar so I was not interested anymore and I don't really have to care.

But hey, that's up to you. If I am not welcome here I can leave you alone again. I am just looking for a simple place where I can develop and release plugins together with other people and don't really care about all those flamewars between different communities, all I want is creating plugins.

BTW: I have finished the HDD Movielist for the Webinterface including Streaming and Downloading, just missing the Delete function but that's just a few lines of code left. So it's now the question if we want to discuss and attack each other or if I just can continue to work on OpenWebif and other plugins and release them here. If it starts like this, I can go very quick again. I thought this new OpenE2 Plugin Project is for every Developer who wants to create Open E2 Plugins for everyone. If I was wrong, then just let me know! Like said: I am really not interested to discuss everything I do with guys like you. All I want is developing and releasing plugins. That was not possible in the IHAD anymore so I am looking for a new place where I can leave all this discussion crap behind me and just code stuff and make people happy with my code. If this is the wrong place here for that, let me know and I will leave you alone again, I don't really care.


#231234 OpenWebif [E2OpenPlugins]

Posted by Homey-GER on 13 November 2011 - 18:36

Hey there,

if you need some help let me know. I would really like to help with OpenWebif and maybe other plugins later. I am talented Webdeveloper with a lot of experience in html/xhtml and javascript/jquery and I also know a lot about python plugins on my dreambox. I would like to help a little bit with the OpenWebif to get it finished as fast as posssible. Today I spend an hour to create a Movielist on my installed OpenWebif, not finished completly yet and still missing download and stream support but I also could take a look at it.

Just want to make sure no one else is already working on it, no need to waste time on something that someone else is currently working on.

So ... if you need help, just let me know!