Communication between multiple remote flash instances

I am relatively new to Flash development, but need to create a simple application that will essentially function as a remote slideshow broadcast service. One presenter will see the show (full screen) and will be able to proceed to the next slide, all other attendees will only see the show (no control) and will see the next slide when the presenter proceeds. I have a Flash Media Interactive Server which can be utilized. I understand that no one will be able to walk me through actual the development process, but was wondering whether someone could tell me what the best approach would be and where I could find tutorials to get started.
Thanks a lot! Any help is greatly appreciated.

UPDATE: I am particularly confused about what kind of communication method to use. I heard about Socket, SharedObjects, HTTPService, RTMP, RTMFP, etc. could someone advise which would be the best for this situation. I only need to send a very small bit of data.
Thanks.

Similar Messages

  • Communication between multiple JVMs

    We have a Java toolkit that is shipped as a JAR file. The toolkit is ported from a C++ DLL running on Windows. Therefore, in both instances (Java and C++), we can't control who loads us or when.
    I need to communicate between different JVMs running on the same machine. The communication is very simple: "Is this user logged on in your JVM?" I send a string to the other JVM and I get back a boolean. I don't need to worry about crossing machine boundaries. Also, I'm not expecting to have a huge number of JVMs running. Maybe 3 or 4 could be likely. However, the solution does need to scale in case there are more than that. I'm not setting a limit on the number of JVMs either.
    The C++ code handled this situation very easily and elegantly. It created a named system semaphore (mutex) whenever a user logged on. The name of the mutex was the username. So, if there were multiple instances of the DLL running in separate processes (EXEs), we could easily tell if this user was logged on in another instance. We'd try to create the system semaphore - it would fail saying the name already exists. Therefore, we'd know the user was already logged on. The named system semaphore provided the means for a machine-global list - which is exactly what we wanted. It also had this extra benefit: if the process terminates normally or abnormally, the system semaphore is removed from memory. This means: the application is terminated, the user is no longer logged on, and we can relog this user on.
    Therefore, I have 2 requirements:
    1) A machine-global list where we can place a string. Keep in mind, it doesn't absolutely have to be a machine-global list. A suitable means to talk to other JVMs is acceptable too.
    2) If the process exits normally or abnormally, the string(s) get removed (for this JVM) from the list. Abnormal termination is the more important one to focus on because lots of people of varying skill levels use our toolkit. Abnormal terminations can be common.
    The first thought is to store these in a file. That solves #1, but not #2. I've seen the JIPC package. However, I'm not too crazy about requiring 3rd party developers to start up another program (JIPC) before they start up their application. As I said, we're just a toolkit so we can't control when or who loads us. It's not totally out of the question, but I'd prefer something else.
    I have a fairly involved solution that involves sockets. The first JVM creates a ServerSocket on a specific port and becomes the server. Subsequent JVMs also try to create the ServerSocket on the same port. They get a BindException because the ServerSocket already exists, so they know they're clients. Then, they create a client socket and talk to the server that way. This gets a little hairy when the server goes away. The clients will scramble to become the server and then all the other clients need to reconnect to the new server.
    This proposed solution sounds like it will address both requirements. However, I'm looking for something simpler. I'm asking this forum for help in case there's an easier way to do this. I don't have the breadth of experience with Java yet to know if there's a simpler way to fix this. If I have to go with the socket solution, I will. I just didn't want to overlook something simple that is already built into Java.
    Thanks for any tips or suggestions

    Thanks for the response.
    FileLock. We still have to target JDK 1.3 so we can't use FileLocks (at this point)
    JNI: That's an interesting idea. I suspect many people are using our software on Windows. Therefore, we could probably fix it in Windows the same as in the C++ code. If they're not on Windows, we could use the Sockets approach.
    I also had another idea: how about hashing the username string into some integer (or long) value. Then use the hashed value to lock some other resource: like the port number passed to ServerSocket. I know ServerSocket only accepts 0 - 0xFFFF so this obviously won't work. But is there some other system-wide thing we could lock given an integral value?

  • Adobe AIR - is what I need for communication between C++ and Flash?

    Hello,
    We currently have a C++ desktop application running on Windows and Mac. We want to support web-enabled (launching from the web browser) and moving UI into Flash. I am looking for a communication package that can use with VC++ 6.0 and CodeWarrior 8.0 (Xcode later). This communication package will handle messages between C/C++ app (process) and Flash. The communication need to execute fast (no delay).
    I searched online about this and came across LocalConnection class and Adobe AIR but not getting enough info to have an answer. I am hoping posting this message will get more information.
    Thanks,
    -Thanh

    Thanks Kalisto for a kind offer. We are using old compilers, CodeWarrior 8.0 compiler on the Mac and VC++ 6.0 in Windows. It is nice if I can find a package that will work with both compilers (platforms). Since we want to communicate in realtime, AIR is probably a best option to go for Windows. I am still looking for the answer on the Mac side of how to communicate from C++ to Flash. I'll ask for your help on AIR when time come.
    Again, thanks.
    -Thanh

  • Multiple Remote Panel Instances

    Hello all,
    I am interested in adapting some simulation VIs for a distance learning application. The VIs demonstrate some of the basics of control theory, and I would like the students to be able to access via the web. Playing around with the web builder wizards I managed to get it working. However, the single user control behaviour is not suitable for classroom teaching etc.
    This example http://zone.ni.com/devzone/cda/tut/p/id/4041 and relevant templates http://zone.ni.com/devzone/cda/epd/p/id/2440 seems like it might offer a solution. However, seeing as this was written for an older version of labview and my knowledge of html/cgi scripting is essentially zero, I was wondering if anyone had experience with using something this? Or have found a different solution to the multiple instances problem? I think this may not be a trivial amount of work, so I was hoping someone could offer advice as to whether this avenue is worth investigating. 
    Thanks very much in advance!
    Regards,
    James

    From your description I'm assuming that you have your simulation running in desktop LabVIEW on some machine and your trying to make a web UI that connects to that simulation through a web service. If you want the kind of instancing that remote panels provide you either have to make your web service more complex or you have to move your simulation into Web UI Builder diagrams so the web service is not needed.
    Each window that views your web UI will be running an independent copy of your web UI VIs. So if everything is implemented as web UI VIs, then there is no sharing and you can open as many instances as you want. If you can implement the simulation entirely in these VIs, then your problem is solved.
    If you need the simulation to run in desktop LabVIEW, then the solution is different. LabVIEW web services do not maintain a connection with their clients, so they don't have any way to recognize a request as being from the same machine as some previous request. If you need that, you will need to add that capability to your web service. You could have a web service call to start a session. That could start a simulation and return some identifier to the web UI. Each time the web UI called another part of the web service, it would provide this identifier so the web service would know which instance of the simulation to operate on. The client could call another web service entry point to stop the simulation, but you won't be able to count on that. The user could navigate away from the UI page or close the browser without the program having a chance to tell the server to stop. To avoid running out of memory, the server would probably need to have some cleanup task to shut down simulations that had not been accessed for some period of time.

  • GPIB Communication between multiple devices

    Hello, 
    I am trying to build an application in C# which will be able to send commands to more than one device on the GPIB BUS.
    For example I have 3 devices connected to the computer with addresses as:"GPIB0::18::INSTR","GPIB0::19::INSTR","GPIB0::28::INSTR"
    Now, I know how to communicate with a single device. 
    But is there a way I can send commands to multiple devices. So far I have the following. 
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using Ivi.Visa.Interop;
    namespace Step_Attenuator
    public partial class Form1 : Form
    ResourceManager rMgr = new ResourceManager();
    Ivi.Visa.Interop.FormattedIO488 ioobj = new FormattedIO488();
    object resources = null;
    string address1 = "GPIB0::18::INSTR";
    string address2 = "GPIB0::19::INSTR";
    string address3 = "GPIB0::28::INSTR";
    public Form1()
    InitializeComponent();
    private void PsaComm()
    private void Form1_Load(object sender, EventArgs e)
    private void button1_Click(object sender, EventArgs e)
    ioobj.IO = (IMessage)rMgr.Open(address1);
    ioobj.WriteString("*RST");
    But now If I want to send a RST command to say device on address2, do I have to again open the session and send it?
    There are going to be a lot of commands to these devices. I am sure there is a much simpler way to do it. 
    Please pardon me if this seems to be a silly question. 
    Thank You. 

    Hi nmedelec,
    I made a research about “Ivi.Visa.Interop.FormattedIO488” and it seems that it is related with Ivi.Visa.Interop which is a third party product. If you have any issue about a third party, I would recommend you go to the office site for help.
    Thanks for your understanding.
    Best Regards,
    Edward
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

  • Communication between multiple processes

    Hi there!
    I have once again a problem concerning paralel processing in ABAP.
    The problem is that:
    I want to write a programm which invokes a process that can recursive invoke another process and so on.
    Let me try to picture it out:
    -> means invokes
    Main Program -> Thread1
    Thread 1 -> Thread 2
    Thread 2 -> Thread 3
    Thread 2 -> Thread 4
    Thread 4 -> Thread 5
    Thread 5 -> Thread 6
    As you can see I have several Threads invoking another Thread. The structure of Threads invoking each other will be dynamic. Now I face the following problem:
    I want just a few threads to run at the same time (let's say for now 3) and there are dependencies between the Invoker and the invoked Thread (e.g. Thread 3 needs some information from Thread 2).
    How can I let my Main Program know that all the data is ready? Does the WAIT UNTIL statement also applies for these nested threads?
    How does Thread 5 e.g. know that there are already too much processes running and he has to wait?
    Is there a possibility how I can queue these processes?
    sth like:
    Thread 1 - Thread 2 - Thread 3 - Thread 4 - Thread 5 - Thread 6
    If prerequisites for Thread 3 are not fullfilled it would look like:
    Thread 1 - Thread 2 - Thread 4 - Thread 5 - Thread 6
    and so on...
    The problem is the communication over the bounds of Threads. This dynamic structure is neccessary due to the large data amount that I have to handle. Due to restrictions I can only use a function group and a report. No database tables or stuff like that is allowed.
    I hope I was able to point out my problem. If it was to unclear please let me know it, then I will try to specify it more.
    Thank you in advance for your help.
    Best Regards,
    Sebastian

    @ Sandeep:  Thanks for your answer I am going to have a look at that
    @ Thomas: These nested Calls would be useful because of the amount of data that has to be processed. Think about a Tree with over 200.000 entries. For each entry there is the requirement for Check if corresponding dataset is right, if necessary Adapt data and Update on the database.
    The approach with the nested threads would check a single node, looks whether there are child nodes and if so starts a thread for processing the child nodes. These would check each child node and if neccessary starts another thread and so on. Child nodes can only be changed if parent change was successful so I have the dependency right here.
    Yesterday I had another idea that should work:
    My Main Programm first checks the root node and then the direct childs of the root node (1st hierarchy level). Then invokes a thread for each child node which has again child nodes and for which changes applied (2nd hierarchy level. Each thread 'returns' a list of nodes for which once again the main program should invoke another thread and so on. (This would build up a queue for processing within the Main Program)
    It is a similar approach to the think with nested threads but the control structure is more clear and there is no nesting of threads neccessary.
    Thanks and Best Regards,
    Sebastian

  • Communication Between Multiple Executables

    I'm building a system that needs to communicate with several different external executables (all were programmed in LabVIEW) at approximately the same time.  I say several because this number is not known until runtime, and I say approximately the same time because all of the executables will be communicating asynchronously.  Essentially I need to receive commands from each executable, put them in a queue of some sort, run a test with my system in the order the commands were received, and then send a result back to each executable.
    Because the number of external executables is not known until runtime, I was thinking about using a network published variable that would be an array of clusters.  I could then tell each executable which array element it should use to communicate with and then when data needs to be sent back and forth I could update or read from this array element in each executable as necessary.  In my VI, I would simply build a watcher that would constantly watch the array to see if new data came in, put this data in a queue, and then process it as necessary.  The communication back to the executables would be handled in the same way (perhaps with a second network published variable only to be used for results).
    The problem with this approach is that I would need to lock the network published variable (a functional global would really help here) while I'm writing to it from each of the executables so I could be sure that I wouldn't miss data.  The number of commands won't be high, but there is a chance that 2 commands could arrive at the same time.  I've played around with this in the Shared Variable Properties dialog ("Single Writer" and "Use Buffering"), but can't seem to get it right.
    I know that I could open a TCP communication port for each executable and then use that port to communicate directly between my program and the executable, but I was wondering if anyone had any other suggestions.  If you've got a suggestion, I'd love to hear about it.  Thanks.

    You can use a network queue. The attached code works very well for us. It is a modified version from some code I got from LAVA several years back. Just unzip this file into your user.lib directly. The queues work like normal queues except they work over TCP. This means your messages will be added to the receiving queue in the order they were sent. Simply dequeue the commands and execute them.
    Mark Yedinak
    "Does anyone know where the love of God goes when the waves turn the minutes to hours?"
    Wreck of the Edmund Fitzgerald - Gordon Lightfoot
    Attachments:
    Network Queue Class.zip ‏361 KB

  • Communication between multiple VPN Sites

    Hello,
    i used 3 CEs and 2 PEs, build a hub and spoke MPLS VPN topology as follow, two the overlapped addresses 100.100.100.100 reside separately in VPN1 of R1 and VPN2 of R2. But traffic initiated by 100.100.100.100 from VPN1 toward VPN3 was always redirected through R5 to VPN2. Is there any solution of this issue?
    thanks!

    Hi
    You can not have overlapping addresses in a scenario like this, where You are leaking between vpn:s.
    When traffic is arrived towards 100.100.100.100 on r4 et0/0 there are no way for r4 to know wich of the 2 (r1 or r2) that the traffic is intended to go.
    /Mikael

  • Communication between multiple page flow portlets

    Hi, I am working on weblogic portal 8.1.
    I've been struggling to communicate between different page flow portlets,
    I have a login page flow portlet and i need to submit login details to indeex page after login action is done.
    I am able to do this by using PageUrl class and RequestDispatcher's forward method using definition label of the index page flow portlet.
    but it is not happening again when i logged out.
    If anybody have worked on it, please let me know the soltution.
    Thanks,
    Vidya sagar

    Not sure whether you tried this option(I tried it works for me).
    configuration has to be done is portlet-2:
    =========================
    Create an custom event namely(messageCustomEvent) and also add an action for it for invoking a portlet method getMessage in Portlet-2.
    //Place this method in Portlet-2
    public void getMessage(ActionRequest request, ActionResponse response,
    Event event) {
    CustomEvent customEvent = (CustomEvent) event;
    String message = (String) customEvent.getPayload();
    response.setRenderParameter("message0", message);
    configuration has to be done is portlet-1:
    =========================
    when click on Login in portlet1, in the pageflow code you fire an custom event as shown below
    PortletBackingContext context =
    PortletBackingContext.getPortletBackingContext(getRequest());
    context.fireCustomEvent("messageCustomEvent", form.getMessage());
    return new Forward("success");
    Thanks & Regards,
    Murali.
    ============

  • Communicating Between Multiple LabVIEW Executables on different computer using Shared Variables

    hi,
    I need to develop some executables which will be launched on different computer of a LAN. Some DATA are common. I need to share the data using shared variables.
    I usually used LabVIEW so I 'm familiar with shared variables but in this case, the RT target is a part of my
    project.
    I do I need to procceed in my case?
    thanks

    Ok but it's not my configuration and I haven't found my answer in the tutorial.
    You speak of a case where there is a computer and a RT target under the same LabView project. As I said earlier, I often use labview RT and shared variable between computer and RT target. But I assume here it's different.
    My question is : how do you acces to the SVE from 3 computers (without any RT target)? 
    1. If I create 3 labview projects using the same Shared Variable, do I need to use the same .lvlib on each project?
    2. Is it possible? 
    3. How can I configure where the SVE should be? When I use a RT target, It only depends where I put my Lvlib. But here there is 3 projects. 
    James
    Attachments:
    Sans titre.JPG ‏9 KB

  • Communication between multiple vrf context on fwsm

    i have 2 vrf context on fwsm of 6509 switch. i want to reach from vrf context1 inside to vrf context inside. how can i do it?
    vrf_context1_inside----6509_fwsm----vrf_context2_inside
    vrf_context1_inside must reach to vrf_context2_inside

    Thanks for the response.
    FileLock. We still have to target JDK 1.3 so we can't use FileLocks (at this point)
    JNI: That's an interesting idea. I suspect many people are using our software on Windows. Therefore, we could probably fix it in Windows the same as in the C++ code. If they're not on Windows, we could use the Sockets approach.
    I also had another idea: how about hashing the username string into some integer (or long) value. Then use the hashed value to lock some other resource: like the port number passed to ServerSocket. I know ServerSocket only accepts 0 - 0xFFFF so this obviously won't work. But is there some other system-wide thing we could lock given an integral value?

  • How exchange messages between two user-bean instances?

    Hi,
    I would like to let several user to log-in my web site (I'm using tomcat) and then let them exchange some messages until they are logged-in. Is there a way using JSF?
    I was thinking about implementing a list of messages inside each user-bean. The user should know that other users are logged-in, that could be listed in a table, and click on its name. I would like that the click action create an item in the list valiable of the selected user. Is that possible using JSF? I didn't find any of such kind of communication between two user-bean instances.
    Do you have any hints? Is that the right way or is there other possibilities?
    Thanks

    You could get hold of a map of sessions in the application scope. Make use of HttpSessionListener to add/remove sessions to/from the map.
    JSF is just another component based MVC framework on top of JSP/Servlet. Everything which you can do in JSP/Servlet is just still possible. You only need to understand how JSF works under the hood.

  • Can 1 instance of Windows 8.1 ENTERPRISE host multiple Remote Desktop connections?

    I am shopping for the components for building a machine with fair, high-performance hardware. I have Windows 8.1 Professional. I wanted to know if either Windows 8.1 Professional or Windows 8.1 Enterprise can support multiple remote connections
    from users outside the local network. For example, my brother is based in San Diego, CA and has an underpowered laptop. Is there any way to make a remote connection over that much distance, from San Diego to Northern Virginia, from a RDP client running Windows
    8.1 Professional to a RDP "server" Windows 8.1 Professional/Enterprise machine, and run a modern, single- or multiplayer- game over smoothly that connection? At the very least, is it possible to run common
    apps (e.g. Microsoft Office 2013 IE 11, Adobe Acrobat XI) smoothly on a Windows 8.1 Pro RDP client connected to a Windows 8.1 RDP "server" located 2250+ miles away?
    Would upgrading my installation from Professional to Enterprise improve the responsiveness and display quality for my remote users?
    I know Windows Server R2 2012 has features specific for handling remote connections, but I am trying to keep a Windows 8.1 user experience. Still, if anyone can show some evidence that Windows Server 2012 R2 Remote Desktop Services (RDS)  improves display
    and responsiveness over long-distances for remote (RDS) connections, then I will shop for Windows Server 2012 R2 Standard instead. The huge drawback of Windows Server 2012 R2 Standard CALs is the enormous cost to enable 3-5
    remote connections for family, non-commercial use.
    Has anyone attempted to host long-distance remote access, non-commercially, for 3-5 connections? Has it worked well? What, in general, is required?
    T. Webster

    Hi,
    It depends on the quality of the network connection to run the software smoothly throuth RDP.  And I don't think the quality would be better if you upgrade to Windows 8.1 Enterprise.
    Windows 8.1 allow only one session of RDP, the Remote Desktop Server in Windows other than the Windows Server edition has a limitation to allow only one concurrent user per session by default, i.e. if someone remotely connects to the computer over RDP then
    whoever was logged in at that moment will be automatically logged off, even if that user is physically present at the computer. This is by design.
    Regarding more information about RDP, please take a look at the following articles:
    Remote Desktop app help
    Remote Desktop Connection: frequently asked questions
    Best regards
    Michael Shao
    TechNet Community Support

  • Communication between RAC instances

    Hi,
    I see different answers for this Communication between RAC instances in google.
    1. UDP
    2.Distributed Lock Manager (DLM)
    which one of is correct?

    both of them are correct on different layers. The IP protocol used over the interconnect is udp and one of the protocols/mechanism implemented above that is DLM.

  • Communication between RAC instances in google.

    Hi,
    I see different answers for this Communication between RAC instances in google.
    1. UDP
    2.Distributed Lock Manager (DLM)
    which one of is correct?

    Pl do not post duplicate threads - Communication between RAC instances
    Srini

Maybe you are looking for