WBEA HTML5 Desktop Application wrapper.

Built a cool app using CEF that you'd like to share with the community? Talk about it here.

WBEA HTML5 Desktop Application wrapper.

Postby drclue » Wed Jan 05, 2011 12:29 pm

I'm sorta surprised that our kindly host here (Marshall Greenblatt) has not tooted his own horn
about the WBEA AsterClick Desktop Component he put together for
our Asterisk PBX project, so I'll play a few notes of gratitude for him
and tell you all about our project and the role that CEF is playing in it.

The Asterisk PBX (for those who don't know) is a server application that turns a computer into a
a powerful telephone switchboard system capable of routing VOIP and land line phone calls ,
operating phone queues , teleconferencing and all sorts of other nifty stuff.

About a year ago we set about developing the AsterClick system, which is an interface that allows the
creation of robust Asterisk PBX applications using nothing more than HTML5. We have finally achieved an Alpha
version of the AsterClick server and we are pretty excited about it.

What really makes AsterClick unique is that all the communications are based upon HTML5 webSockets that
afford Javascript applications a continuously connected bi-directional communications channel. Prior
to webSockets event driven web applications for Asterisk were impossible and those web applications that did
exist relied on polling , where the browser applications had to make constant and repeated requests
to the server and could often miss events.

Now while HTML5 support (especially webSockets) is really good in Chrome, other browsers (as expected) are
a hit and miss proposition in their implementation of those standards. Of course for other reasons (including securing of code)
some sorta resist the idea of developing Asterisk and other applications in a browser.

When we first started considering the idea of somehow using CEF to support the AsterClick project, the idea had
some drawbacks as while CEF is indeed a great tool , our goal was to make developing AsterClick executable
desktop applications accessible to the masses , and developing with CEF did not exactly fit that goal.

So we had Marshall create WBEA for us as a happy middle ground and thus far it looks to be just about everything
we and potential AsterClick developers could hope for. It provides a fairly naked generic desktop application where
everything is stripped away to the bare bones.

Small extensions to Javascript allow the HTML5 applications to manipulate that bare bones application window
so as to populate and respond to the application menu bar, close the application and things of that nature.

The WBEA is also setup so that one can rename it from the default "wbea.exe" to whatever cool name they like

To protect the HTML5 related source code from prying eyes , the WBEA system uses an externally encrypted .zip file to hold the HTML5 application and decrypts the file into memory at run time. The use of encryption is optional
but an important selling point for folks wanting to protect their work. that .zip file shares the same base filename
as whatever the developer renamed the "wbea.exe" to, so one can have as many WBEA based applications as they
like without them running into each other.

Marshall has done a great job for us on this and kept the coding clean enough that WBEA
not only runs on Windows , but also runs well on Linux. I'm sure we'll be back for upgrades as time goes on.

While the WBEA application was commissioned specifically for the AsterClick project , there is nothing in it
specifically related to AsterClick or Asterisk development , so it has a great deal of value as a generic Desktop Application tool
for any HTML5 based application. For many it could present an interesting middle ground allowing the creation of desktop executables without all the hassles of full blown C++ development.

I'm just finishing up the documentation for WBEA on the AsterClick site and as soon as that is done I'll be making
the WBEA source and binaries available to everyone.
drclue
Newbie
 
Posts: 9
Joined: Thu Jul 22, 2010 1:51 pm

Re: WBEA HTML5 Desktop Application wrapper.

Postby magreenblatt » Thu Jan 06, 2011 1:37 am

Hi Doc,

Thanks for the horn tooting -- I'm looking forward to seeing WBEA go public :-).

Regards,
Marshall
magreenblatt
Site Admin
 
Posts: 12379
Joined: Fri May 29, 2009 6:57 pm

Re: WBEA HTML5 Desktop Application wrapper.

Postby drclue » Fri Jan 14, 2011 9:46 pm

magreenblatt wrote:... I'm looking forward to seeing WBEA go public :-).


Actually , you might want to scope out the initial web documentation
for WBEA and see if I managed to mention everything.
http://asterclick.drclue.net/WBEA.html

I'm sure I'll probably need to refine the documentation some,
but folks can already download .zip files for both the source and executable
there.

Aside from WBEA's use in the AsterClick project, I think it really
does present a nice compromise for folks wanting to deploy
their HTML5 creations as executable desktop applications without
having to get into C++ development.
drclue
Newbie
 
Posts: 9
Joined: Thu Jul 22, 2010 1:51 pm

Re: WBEA HTML5 Desktop Application wrapper.

Postby custa1200 » Mon Jan 17, 2011 2:35 am

Is there any eta on when the Websockets might make their way back into CEF from this project?
custa1200
Techie
 
Posts: 32
Joined: Wed Oct 27, 2010 2:34 am

Re: WBEA HTML5 Desktop Application wrapper.

Postby magreenblatt » Mon Jan 17, 2011 9:36 am

Is there any eta on when the Websockets might make their way back into CEF from this project?

WebSockets should currently be working in CEF. You can test it here: http://jimbergman.net/websocket-web-browser-test/
magreenblatt
Site Admin
 
Posts: 12379
Joined: Fri May 29, 2009 6:57 pm

Re: WBEA HTML5 Desktop Application wrapper.

Postby jpc » Mon May 30, 2011 8:06 am

The WBEA app looks really great. I would love to use it in a project but I to communicate with some hardware (USB) devices I need to be able to start a helper application (a USB-WebSocket bridge server).

I looked through the source code and I did not find a way to do this. I assume your Asterix WebSockets server is running 24/7 somewhere and does not need to be running on the client computer, right?
jpc
Newbie
 
Posts: 1
Joined: Mon May 30, 2011 7:35 am

Re: WBEA HTML5 Desktop Application wrapper.

Postby magreenblatt » Tue May 31, 2011 9:28 am

jpc wrote:The WBEA app looks really great. I would love to use it in a project but I to communicate with some hardware (USB) devices I need to be able to start a helper application (a USB-WebSocket bridge server).

I looked through the source code and I did not find a way to do this. I assume your Asterix WebSockets server is running 24/7 somewhere and does not need to be running on the client computer, right?

How would you start the helper application normally? How do you know when the helper application has started successfully?

The correct place to perform internal actions that must complete before WBEA loads content is via the task in wbea.cpp WbeaHandler::LoadArchive(). So, for example, you could launch the helper application using spawn (http://msdn.microsoft.com/en-us/library ... 71%29.aspx) and block until the helper application has completely loaded. Alternately, you could create an external wrapper for WBEA that launches your helper application, waits for it to load, and then runs WBEA.
magreenblatt
Site Admin
 
Posts: 12379
Joined: Fri May 29, 2009 6:57 pm

Re: WBEA HTML5 Desktop Application wrapper.

Postby drclue » Thu Jun 09, 2011 10:26 pm

jpc wrote:The WBEA app looks really great. I would love to use it in a project but I to communicate with some hardware (USB) devices I need to be able to start a helper application (a USB-WebSocket bridge server).

I looked through the source code and I did not find a way to do this. I assume your Asterix WebSockets server is running 24/7 somewhere and does not need to be running on the client computer, right?


The AsterClick server runs 24/7 either on your Asterisk server or another remote server that can
access your Asterisk server. The client side is just HTML5, with WBEA being basically
a chrome browser engine gift wrapped in a desktop executable. Of course there is the value add in WBEA that it can encrypt your HTML5 source code.

An AsterClick HTML5 client application itself could even run in a cell phone's web browser

Currently FireFox 4 , Opera 11.11, Safari ,Chrome and of course WBEA can support
AsterClick HTML5 applications.

As to your USB issue, perhaps you could provide a little more detail about what you
are aiming to do with the USB as HTML5 has a lot of interesting tricks
up it's sleeve.

Being as I wrote the AsterClick server and had some small part in the design of WBEA
I might be able to find you a creative solution if I have enough understanding of what
your actually trying to achieve.
drclue
Newbie
 
Posts: 9
Joined: Thu Jul 22, 2010 1:51 pm

Re: WBEA HTML5 Desktop Application wrapper.

Postby macmaina » Fri Oct 04, 2013 1:48 am

hi drclue

I would like the documentation of WBEA but seems this site: http://asterclick.drclue.net/WBEA.html is down!
macmaina
Newbie
 
Posts: 3
Joined: Fri Oct 04, 2013 1:39 am

Re: WBEA HTML5 Desktop Application wrapper.

Postby Czarek » Sun Oct 06, 2013 7:45 am

macmaina wrote:I would like the documentation of WBEA but seems this site: http://asterclick.drclue.net/WBEA.html is down!

This website seems to be down since a few months.
Maintainer of the CEF Python, PHP Desktop and CEF C API projects. My LinkedIn.
User avatar
Czarek
Virtuoso
 
Posts: 1927
Joined: Sun Nov 06, 2011 2:12 am

Next

Return to Apps Discussion

Who is online

Users browsing this forum: No registered users and 2 guests