<div dir="ltr">Hi Ben,<div><br></div><div>So ParaViewWeb is not using the iPython network channel.</div><div>In fact, the interpreter of iPython is used via another thread for ParaViewWeb to start its own web server. And the iFrame just connect to that other web server port.</div>
<div><br></div><div>But you could come up with a different setup, where you ask iPython to remotely start a ParaViewWeb process (not in the same interpreter and not in parallel) and rely on an Apache on the front to mix the 2 web contents into the same domain using https.</div>
<div><br></div><div>Then you use an iframe to connect to the freshly ParaviewWeb process, started by you.</div><div><br></div><div>I know it is confusing but there is so much ways to setup your environment to have something working that we can not document them all. It is really depending on what you tried to achieve.</div>
<div>For instance, in the explained used case, we target live in-situ visualization of data computed by the MPI iPython engines where we want to share the data in-memory between iPython and ParaViewWeb.</div><div><br></div>
<div>I'm not sure that I managed to help you out, but hopefully I helped you understand it a little bit more. ;-)</div><div><br></div><div>Seb</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Feb 10, 2014 at 11:31 AM, Ben Bales <span dir="ltr"><<a href="mailto:bbbales2@gmail.com" target="_blank">bbbales2@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><font face="courier new, monospace">Oh! So I didn't realize that example was sharing data between IPython and Paraview.</font><div>
<font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">I wasn't able to get it to work (some vtk import errors), but when I saw the <iframe> I just got excited and stole that little bit of code out :D, so maybe I did things wrong.</font></div>



<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">I just had a closer look, and is that example running traffic through the IPython web connections?</font></div><div><font face="courier new, monospace"><br>

</font></div><div><font face="courier new, monospace">Let me draw some diagrams (convert this to a monospaced font if it isn't :D)</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">I -> IPython</font></div>

<div><font face="courier new, monospace">P -> Paraview</font></div><div><font face="courier new, monospace">S -> Secure layer</font></div><div><font face="courier new, monospace">U -> User</font></div><div><font face="courier new, monospace"><br>

</font></div><div><font face="courier new, monospace">When I have the two servers running separately, and just include an iframe from one to another, I am doing:</font></div><div><font face="courier new, monospace"><br></font></div>

<div><font face="courier new, monospace">I--------->U</font></div><div><font face="courier new, monospace">P--------->U</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">What I was asking about doing in the last e-mail was:</font></div>

<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">I----->S---->U</font></div><div><font face="courier new, monospace">P--/</font></div><div><font face="courier new, monospace"><br>

</font></div><div><font face="courier new, monospace">(Where IPython and Paraview both go through the same secure layer). You say this is something I can set up with Apache, right? When I look at a system like this, I get scared of rewriting stuff. How does U know to ask S to route data to P? Is that what this documentation describes: <a href="http://www.paraview.org/ParaView3/Doc/Nightly/www/js-doc/index.html#!/guide/apache_setup" target="_blank">http://www.paraview.org/ParaView3/Doc/Nightly/www/js-doc/index.html#!/guide/apache_setup</a>?</font></div>

<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Now I've had a closer look at the script here (<a href="http://www.paraview.org/ParaView3/Doc/Nightly/www/js-doc/index.html#!/guide/ipython" target="_blank">http://www.paraview.org/ParaView3/Doc/Nightly/www/js-doc/index.html#!/guide/ipython</a>), and I'm wondering, does the Paraview server there use the IPython communication channels?</font></div>

<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">P---->I---->U</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">In which case I could just:</font></div>

<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">P---->I---->S---->U</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Sorry if I'm being a dunce here! This web technology can get complex :D!</font></div>

<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Thanks,</font></div><div><font face="courier new, monospace">Ben</font></div><div><div class="h5"><div class="gmail_extra">
<font face="courier new, monospace"><br>
<br></font><div class="gmail_quote"><font face="courier new, monospace">On Mon, Feb 10, 2014 at 8:12 AM, Sebastien Jourdain <span dir="ltr"><<a href="mailto:sebastien.jourdain@kitware.com" target="_blank">sebastien.jourdain@kitware.com</a>></span> wrote:<br>

</font><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><font face="courier new, monospace">Hi Ben,</font><div>

<font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">there is several ways to integrate ParaViewWeb into iPython and the documentation highlight a distributed/in-situ one. (Which is by far the less obvious one ;-)</font></div>

<div><font face="courier new, monospace">In fact, if you are not expecting ParaViewWeb to use directly the in-memory objects of your iPython MPI engines, you might just deploy a ParaViewWeb on the side which will naturally allow you to also have it embedded inside your iPython integration.</font></div>


<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">For that you will need an apache on the front to do the relay in https/wss. This should solve the security error.</font></div>

<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Regarding the overhead of the server side rendering, we did not wrote any specific analysis or documentation.</font></div>


<div><font face="courier new, monospace">Do you still have render calls when you switch to WebGL on the client side? Do you have them when you interact with the scene? If so, you can adjust the JS of the WebVisualizer and disable the camera synchronization of the WebGL renderer, which will prevent the client to send camera update to the server. But if you do so, if your data change, your view will revert back to the original server side camera position.</font></div>


<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Hope that helped you in some ways,</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Seb</font></div>

</div><div class="gmail_extra"><font face="courier new, monospace"><br><br></font><div class="gmail_quote"><div><div><font face="courier new, monospace">On Sat, Feb 8, 2014 at 4:10 PM, Ben Bales <span dir="ltr"><<a href="mailto:bbbales2@gmail.com" target="_blank">bbbales2@gmail.com</a>></span> wrote:<br>


</font></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div dir="ltr"><font face="courier new, monospace">Hello,</font><div>

<font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">I have two questions concerning ParaViewWeb.</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">1. I want to embed the ParaViewWeb visualizer in iPython. This page (<a href="http://www.paraview.org/ParaView3/Doc/Nightly/www/js-doc/index.html#!/guide/ipython" target="_blank">http://www.paraview.org/ParaView3/Doc/Nightly/www/js-doc/index.html#!/guide/ipython</a>) suggests the standard way of doing that is embedding an iframe that references a ParaViewWeb Visualizer instance.</font></div>



<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">My iPython instances are handled over an https connection, so embedding an http iframe from a separate server will throw security errors in my browser.</font></div>

<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Is there any easy solution to get around this? I'd like to keep authentication on my servers, but I'd also really like to use the embedded Visualizer (cause it's super super cool :D)</font></div>



<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">2. Is there any documentation on the overhead of the server-side rendering for ParaViewWeb? I noticed by default Paraview still spawns an X renderer for every rendering that is happening on the client.</font></div>



<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Ideally I'd just like Paraview to not try to render stuff server-side, and the client just handle the drawing with WebGL, but I probably am missing some critical point about the paraview architecture.</font></div>



<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">Thanks,</font></div><div><font face="courier new, monospace">Ben</font></div></div>
<font face="courier new, monospace"><br></font></div></div><font face="courier new, monospace">_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the ParaView Wiki at: <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br>
<br></font></blockquote></div><font face="courier new, monospace"><br></font></div>
</blockquote></div><br></div></div></div></div>
</blockquote></div><br></div>