Re: [Freevo-devel] switching to pynotifier and pymbus
On Wednesday 08 September 2004 14:54, Rob Shortt wrote: Apache+PHP == bloat. We used to use apache, now we have an extremely lightweight webserver that is part of Freevo. It goes along the same lines as why we don't use MySQL. OK. Fine with me, IMO implementing a web-frontend in python should be much more enjoyable than doing so in PHP anyways... ;-) As I said, my main concern is security here (who will audit the Freevo webserver?), but probably this can be secured on a network-level (either no access from outside at all, or hidden with strange ports or - even better - some portknocking techniques). -- Ciao, / /.o. /--/ ..o / / ANS ooo --- This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170 Project Admins to receive an Apple iPod Mini FREE for your judgement on who ports your project to Linux PPC the best. Sponsored by IBM. Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
Re: [Freevo-devel] switching to pynotifier and pymbus
On Wed, 8 Sep 2004, Hans Meine wrote: On Wednesday 08 September 2004 12:56, Florian Demmer wrote: just a thought: if there were a way to access the smbus system using php, apache/php could simplifly creation of a stable and fast web part of freevo... I'd suggest something lightweight instead of apache. I've been using webfs (www.bytesex.org) as a small fast http server, I'm sure there's others. There are many pro's and con's of an integrated webserver vs. a separate one. Probably this has been discussed before? Aspects would be: Security, ease of installation, runtime efficiency(?) Agreed. ATM I can come up with slightly more advantages than disadvantages of the Apache-way. (Apache/PHP are well-maintained, security-supervised, but also more likely to be attacked. It can be started by inetd, so memory requirements / startup time are no arguments. Many people will be familiar with PHP development and can help maintain the Freevo webserver. Installation is not more difficult than setting up the current webserver to start at boottime.) Question: do we want to have multiple languages for freevo development? I know there's a case for using the right tool for the right job T.C. Wan Tat Chee (Lecturer) School of Computer Sciences, Univ. of Science Malaysia, 11800 USM, Penang, Malaysia. Rm.625 Ofc Ph: +604 653-3888 x 3617 NRG Lab Admin: +604 659-4757 Rm.601-E Ofc Ph: +604 653-4396 Internet: [EMAIL PROTECTED]Web: http://nrg.cs.usm.my/~tcwan GPG Key : http://nrg.cs.usm.my/~tcwan/tcwan-nrg-20040805.asc F'print : 4B2E F0BF AAD7 2F51 CB41 4386 F72B 7859 8278 BDC4 --- This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170 Project Admins to receive an Apple iPod Mini FREE for your judgement on who ports your project to Linux PPC the best. Sponsored by IBM. Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
Re: [Freevo-devel] switching to pynotifier and pymbus
On Tue, 07 Sep 2004 20:51:46 -0400, Michael Ruelle [EMAIL PROTECTED] wrote: Dischi, The only reservation i have is leaving a stable webserver. [...] just a thought: if there were a way to access the smbus system using php, apache/php could simplifly creation of a stable and fast web part of freevo... Florian --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
Re: [Freevo-devel] switching to pynotifier and pymbus
Florian Demmer wrote: just a thought: if there were a way to access the smbus system using php, apache/php could simplifly creation of a stable and fast web part of freevo... Apache+PHP == bloat. We used to use apache, now we have an extremely lightweight webserver that is part of Freevo. It goes along the same lines as why we don't use MySQL. -Rob --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
Re: [Freevo-devel] switching to pynotifier and pymbus
On Wednesday 08 September 2004 12:56, Florian Demmer wrote: just a thought: if there were a way to access the smbus system using php, apache/php could simplifly creation of a stable and fast web part of freevo... There are many pro's and con's of an integrated webserver vs. a separate one. Probably this has been discussed before? Aspects would be: Security, ease of installation, runtime efficiency(?) ATM I can come up with slightly more advantages than disadvantages of the Apache-way. (Apache/PHP are well-maintained, security-supervised, but also more likely to be attacked. It can be started by inetd, so memory requirements / startup time are no arguments. Many people will be familiar with PHP development and can help maintain the Freevo webserver. Installation is not more difficult than setting up the current webserver to start at boottime.) Actually, security would be the most important point for me, since it's so convenient to be able to schedule recordings while not being at home. On the other hand, I don't know how many Freevo users actually do that. Ciao, / /.o. /--/ ..o / / ANS ooo --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
Re: [Freevo-devel] switching to pynotifier and pymbus
On Mon, 2004-09-06 at 18:19, Dirk Meyer wrote: Hi, some already know because I told it on IRC, but here the official request for discussion: I don't like twisted. Why? It's a huge monster, including not only stuff we need like xmlrpc and a web server but also stuff we don't need and a main loop that is too complex. I saw in the code that it waits for dead children not started by any part of twisted .. Hey, that are my children, don't touch them! The next problem is, that we have one xmlrpc server in the recordserver. But when the schedule changes, Freevo has to ask the recordserver for a new schedule, the recordserver can't send it to Freevo because a) freevo has no xmlrpc port and b) if you have more than one freevo, how should the server know that? And we need a way to send stuff to Freevo, like the webserver may want to say 'start this audio playlist please'. A solution to all this (and more): we use pymbus. Mbus is a protcol for host or link local communication. As the name says, it's a bus. So every programm on the bus can get the messages (you can also send a message directly). For detailed information, please look at http://www.mbus.org. A brief summary: o mbus is secure, it uses encryption on the bus. o mbus is plain ascii (after decrypted), so every app with the key can read it very easy and apps like mspy can be used for debugging and apps like mbussh can be used to send commands to an app o you get notice when an app joins / leaves the bus o you can define names for apps so you understand what they do o you have events _and_ client server rpc communiaction. o Bindings for C/C++/Perl/Python Very good, and after reading some more about mbus i found out the communication protocol is highly optimized for small messages, they have made a huge effort to decrease the encryptation overhead. In my opinion most of the messages passing between freevo and helpers are very small (commands in fact) so, its a good protocol framework for freevo. snip And we can also remove the bad hacked network interface, you can send events directly to Freevo: app-Freevo: Button 'DISPLAY' is pressed or app-Freevo: Event(OSD_MESSAGE, arg='hi') Erms.. not so sure about this.. do you really want to introduce the communication overhead for this kind of events? Mbus sounds great to communicate with external helper, but it seems a little bit inefficient to spread all kind of events to OSD or from critical helpers such as mplayer. But i don't know, some benchmarking should speak for itself. That's what mbus can do, and much more. Read the rfc on mbus if you want to know more. The second lib pynotifier is a simple (!) main loop. The author of pynotifier and the current maintainer of pymbus (also using Freevo) also has a simple webserver and non blocking http client. Seems a good base to start rewriting the webserver. Dischi Bruno --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-devel] switching to pynotifier and pymbus
Hi, some already know because I told it on IRC, but here the official request for discussion: I don't like twisted. Why? It's a huge monster, including not only stuff we need like xmlrpc and a web server but also stuff we don't need and a main loop that is too complex. I saw in the code that it waits for dead children not started by any part of twisted .. Hey, that are my children, don't touch them! The next problem is, that we have one xmlrpc server in the recordserver. But when the schedule changes, Freevo has to ask the recordserver for a new schedule, the recordserver can't send it to Freevo because a) freevo has no xmlrpc port and b) if you have more than one freevo, how should the server know that? And we need a way to send stuff to Freevo, like the webserver may want to say 'start this audio playlist please'. A solution to all this (and more): we use pymbus. Mbus is a protcol for host or link local communication. As the name says, it's a bus. So every programm on the bus can get the messages (you can also send a message directly). For detailed information, please look at http://www.mbus.org. A brief summary: o mbus is secure, it uses encryption on the bus. o mbus is plain ascii (after decrypted), so every app with the key can read it very easy and apps like mspy can be used for debugging and apps like mbussh can be used to send commands to an app o you get notice when an app joins / leaves the bus o you can define names for apps so you understand what they do o you have events _and_ client server rpc communiaction. o Bindings for C/C++/Perl/Python Example: Freevo starts, joins the bus and ask: Freevo: I need recording informations. Anyone here can provide them? Case a: recordserver is running: RS: sure, I'm a recordserver, I can record dvb and analog. Here is my current schedule. Case b: no recordserver, Freevo still has no schedule and will never aks again. When the recordserver starts: RS: Hi, I'm a recordserver, here is my schedule. Freevo knows there is a recordserver with the name RS on the bus and the user wants to schedule something. Freevo-RS (unicast): RS, please record xy RS no everyone: my schedule changes: here is a new schedule RS-Freevo: done! Next is the webserver knowing that Freevo is running: WS-Freevo: please play playlist xy You have an isdn watcher and a new call comes in. It doesn't know about Freevo at all: ISDN: in case someone wants to know this: the telephone is rinning. A special Freevo plugin notice that and mutes the background audio playback. And we can also remove the bad hacked network interface, you can send events directly to Freevo: app-Freevo: Button 'DISPLAY' is pressed or app-Freevo: Event(OSD_MESSAGE, arg='hi') That's what mbus can do, and much more. Read the rfc on mbus if you want to know more. The second lib pynotifier is a simple (!) main loop. The author of pynotifier and the current maintainer of pymbus (also using Freevo) also has a simple webserver and non blocking http client. So, there is no need for twisted, mbus is the future[1]. And the author of pynotifier will include pynotifier in Freevo when he has a free weekend. Comments? Someone with a good argument against it? Dischi Footnotes: [1] I better say it before you find out yourself: mbus was developed at the UCL in London and the University of Bremen. I also work at the University in Bremen and mbus was developed in our working group. -- Atheism: A non-prophet organization. --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
Re: [Freevo-devel] switching to pynotifier and pymbus
On Tue, 2004-09-07 at 01:19, Dirk Meyer wrote: Hi, some already know because I told it on IRC, but here the official request for discussion: I don't like twisted. Why? It's a huge monster, including not only stuff we need like xmlrpc and a web server but also stuff we don't need and a main loop that is too complex. I saw in the code that it waits for dead children not started by any part of twisted .. Hey, that are my children, don't touch them! The next problem is, that we have one xmlrpc server in the recordserver. But when the schedule changes, Freevo has to ask the recordserver for a new schedule, the recordserver can't send it to Freevo because a) freevo has no xmlrpc port and b) if you have more than one freevo, how should the server know that? And we need a way to send stuff to Freevo, like the webserver may want to say 'start this audio playlist please'. does mbus run over IP? ie, I think it would be a treat to be able to have recordserver run on a PC anf freevo gui on an xbox or somethign along those lines.. I don't think this will work right now, but if mbux has the potential to support this then its a step in the right direction.. Mick --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
Re: [Freevo-devel] switching to pynotifier and pymbus
Dirk Meyer wrote: I don't like twisted. Why? It's a huge monster, including not only stuff we need like xmlrpc and a web server but also stuff we don't need and a main loop that is too complex. I saw in the code that it waits for dead children not started by any part of twisted .. Hey, that are my children, don't touch them! The next problem is, that we have one xmlrpc server in the recordserver. But when the schedule changes, Freevo has to ask the recordserver for a new schedule, the recordserver can't send it to Freevo because a) freevo has no xmlrpc port and b) if you have more than one freevo, how should the server know that? And we need a way to send stuff to Freevo, like the webserver may want to say 'start this audio playlist please'. Regarding Twisted, it is a very good network application framework, it supports many protocols, good design, and other stuff. Twisted made it very convenient to impliment recordserver and webserver. Well, webserver was a bit of a hack in an effort to reuse the old CGI code. So, Freevo has come a long way since then and we need something more. Well, we need something different. I am a huge fan of systems with multiple processes that communicate with a bus over the network. Even more so with asynchronous design. A solution to all this (and more): we use pymbus. Mbus is a protcol for host or link local communication. As the name says, it's a bus. So every programm on the bus can get the messages (you can also send a message directly). For detailed information, please look at http://www.mbus.org. A brief summary: o mbus is secure, it uses encryption on the bus. o mbus is plain ascii (after decrypted), so every app with the key can read it very easy and apps like mspy can be used for debugging and apps like mbussh can be used to send commands to an app o you get notice when an app joins / leaves the bus o you can define names for apps so you understand what they do o you have events _and_ client server rpc communiaction. o Bindings for C/C++/Perl/Python This all sounds wonderfull. :) Example: Freevo starts, joins the bus and ask: Freevo: I need recording informations. Anyone here can provide them? Case a: recordserver is running: RS: sure, I'm a recordserver, I can record dvb and analog. Here is my current schedule. Case b: no recordserver, Freevo still has no schedule and will never aks again. When the recordserver starts: RS: Hi, I'm a recordserver, here is my schedule. Freevo knows there is a recordserver with the name RS on the bus and the user wants to schedule something. Freevo-RS (unicast): RS, please record xy RS no everyone: my schedule changes: here is a new schedule RS-Freevo: done! Next is the webserver knowing that Freevo is running: WS-Freevo: please play playlist xy This is the kind of two-way (n-way!) communication that we need. You have an isdn watcher and a new call comes in. It doesn't know about Freevo at all: ISDN: in case someone wants to know this: the telephone is rinning. A special Freevo plugin notice that and mutes the background audio playback. Hey, stop stealing my ideas! ;) Also with this architecture I forsee more Freevo helpers, and more programs outside of Freevo interoperating with each other... And we can also remove the bad hacked network interface, you can send events directly to Freevo: app-Freevo: Button 'DISPLAY' is pressed or app-Freevo: Event(OSD_MESSAGE, arg='hi') That's what mbus can do, and much more. Read the rfc on mbus if you want to know more. The second lib pynotifier is a simple (!) main loop. The author of pynotifier and the current maintainer of pymbus (also using Freevo) also has a simple webserver and non blocking http client. I want to know more. I will go read... So, there is no need for twisted, mbus is the future[1]. And the author of pynotifier will include pynotifier in Freevo when he has a free weekend. Sounds good. Comments? Someone with a good argument against it? Even though I wrote most of the twisted stuff you'll have no argument from me. I really like this kind of architecture. -Rob --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel