Ruby :: Combine Websocket Server With An AIR Client?
Feb 28, 2012
I'm working on what should become a quiz-like mobile app. The idea is to combine a Ruby websocket server (or preferably Juggernaut as the app has chat functionality) with an AIR client.In the past few days I've been trying different web socket servers with multiple Flex code snippets but I can't get any of the clients functioning. Looks like the connection is made but I get the idea that the client is unable to perform the handshake correctly (and subsequently disconnects). A lot of the Flash/Flex code snippets I found are a few years old so my guess is that the web socket protocol has evolved in the mean time without the Flash/Flex code bases getting these updates.
We're writing a flash application that can download a MP3 file, convert it to a Sound object, get the raw data and make some processing (like adding sounds, change octaves). After the processing, we want to send the data back to the server in chunks, so the server will be able to glue the data together and recover the new generated file. The problem is: if we send to the server "wav" pieces of sound, we are able to glue them together without any problem in the generated file. However, if we convert each wav piece to a mp3 file (so we can send a smaller file to the server) and join the mp3 files at the server, the result is a sound with some problems at the merge point.
This is how we load the mp3 file from the server:
sourceSnd.load(new URLRequest("sample url to mp3")); sourceSnd.addEventListener(Event.COMPLETE, carregou);
This is how we convert each piece of mp3 to bytearray and wav:
how can I find on fms server that client disconnected if if client disconnected due to power cut off. I client manually close the application then onDisconnect on server is called but if due to power cut off it does not called.
I am wondering if I can somehow combine these two functions into one server call. The problem I have is that I have 2 different data types that I need to send. One as a ByteArray and one via URLVariables.
Code:
// this works on it's own function callServer():void { var urlRequest:URLRequest = new URLRequest("echo.php");[code]..././.
i have a small LAN of about 8 computers all of which are running windows 7. I have installed FMS and XAMPP webserver on one of the machines. I want to stream live from one PC to all the other PCs on the LAN. I have a webpage with jwplayer embedded in it on my XAMPP webserver that is able to see the live stream when i start it locally. I mean the live stream works fine on the machine with the servers on it. But when i want to view the live stream from another machine in the LAN by accessing the webpage that has the jwpalyer from another machine, The jwplayer returns "server not found:rtmp://192.168.10.1/live" error. I was thinking that maybe a firewall is blocking the 1935 port but i have turned off the firewall of every PC on the LAN. I have unistalled any antivirus program on all the PCs. But i still get the same error when i try to access the live stream from another PC on the LAN.When i run netstat -a -n|find ":1935" i get 192.168.10.2:49184 192.168.10.1:1935 SYN_SENT and i think the request for the stream is sent but the conection is rejected.
This is the code for the webpage with jwplayer embedded in it. maybe it: <html>head> <title>JW FLV Media Player</title> <script type="text/JavaScript" src="swfobject.js"></script>
i am new on steaming & flash server; when we try to use RTMP over HTTP the outside client gets the internal IP address of the FMS server instead of the NAT one or public IP address, how can we solve this.
I have created a script for an Adobe FMS application to broadcast a playlist of video files as a live stream. (internet tv)
I am now working on a custom Flash-based video player to play my stream.
How do I send information from my server-side FMS application (main.asc) to the client-side video player? (e.g: title, duration of current video player)
I understand how clients use bandwidth detection etc to dynamically switch streams via client calls with ns.play2( ... ), but I was wondering if it's possible to only ever use 1 initial ns.play( ... ) call on the client side, but let FMS server side logic that I write dictate which client sees what content. For example, I have 3 clients connected to my FMS server, all watching a live stream. I then decide I want clientA to see 'recordedMovieA.flv', clientB to continue seeing the live stream, and clientC to watch 'recordedMovieB.flv'.
i am currently playing around with a flash media server trial in combination with the flowplayer.All in all i am testing the performance and general functionality for the company i work for.Anyways, i am trying to search a way to check the bandwidth of a client ( server sided ) and redirecting him to the right video stream.Sure this could be done by the backend flash application, but its out intention to perform this check server sided.
I m working in flex3.0 and i just want to know that how can i call a function from fms server to my AS3.0 (Client Side) code.i tried the syntax client.call(methodname,null,null); but my flex code throw exception unable to call the method.here can i use clientobject.call (methodname,null,null) and is there some special way to declare that method at client side.
No I have installed fms4.5, but I can't find good docs how to set something like this up. In Learning section I saw a lesson, but this one isn't ready.So I want to publish using flash and the subscribers to the livestream can be iPhones or Browsers.
I have a working TCP/IP socket server that loads 3-flash files in succession. How can I unload previous files and eliminate the garbage build up? 2-Flash clients are active, 1-the loader, 2-the next Flash file being loaded, however "the Flash files don't unload." Maybe there's a "put - kill" method or something similar to addChild removeChild in as3.
I heard of XMPP, websocket. I'm confused about what to use. For example let's say I'm a financial broker and distribute real time quotes to client platforms on the web and on desktop in Flash, .NET or PHP. What should I use ?
can someone please provide an example of WebSocket implementation in Android, iOS(iPhone/iPad) and Flash (not flex!).I found some libraries but none of that work :). My browser WebSocket implementation is working great using Socket.IO, now I would like to dig also into Android, iPhone and Flash. I tried to implement a Android webview pointing to a website where sockets are implemented, but it doesn't work. I would be great to have some native library for that.
where I can find a tutorial or source files of an AS3 chat client with VB.net server.I know there are AS3 Client and Java servers, but to put it bluntly, I have no experience with Java and am more familiar with VB. If no such thing exists then I would have to learn Java which would be nice but could take a while.
Below is the code. When the swf is connected to FMS(the connection is successful) I use this application.user_so.send("enterContestGroup"); to call the client side mothed. You can see that in the client side I have defined the "enterContestGroup" mothed. However the fact is it doesn't call that mothed. Can anybody tell me what the error is
How to call a particular client from fms.Actually i m making a private chat application in which text messg send from one client to another specific client through FMS.So i m confused how gms recognize a particular clients.I am avoiding application .client[] array that contains all the connected users references.becoz it changes at the time of connection and disconnection of client from fms.
1. The basic problem I would like to solve is detecting when a connection to the Flash Media Server fails.Our client-side application establishes a persistent NetConnection and publishes a number of video/audio streams to the FMS.After publishing some videos, some clients find that recording no longer works. I need to add code to let them know that there's a connection problem. I've studied the NetConnection class and can't find an built-in method that can help alert the user if the connection is broken.
2. Also, I'm having trouble tracking these events in the FMS logs. Are there any key statements I should look for that would tell me if the FMS has experienced a sudden loss of connectivity with a client?I was thinking of using the onAppShutdown (?) event to detect when an application closes normally, so I can then get an idea of when it's closed down in other circumstances.
I'm trying to be able to see all the connected users to my swf. I know how to trace it out server side but how do I send it back to my swf so I can see it? I get a success responder but my value is null.[code]
I'm wondering if it's possible to have a server-client networking, based on a UDP or other fast protocol, suitable for fast paced multiplayer game?Server side code doesn't have to be written in actionscript, but it would be good that I don't go out of flash borders. The most important is that client must not install any plugins or other stuff, except flash player itself and client code must work in a browser, so no desktop apps like adobe AIR.
We are currently in the process of trying to connect a c# server from a flash app. This hasnt been a problem so far - we have simply used the Socket class.We now have a requirement to encrypt the stream using SSL/TLS. This is no problem in c#, but much more problematic on the flash side. So far we have found two options: As3crypto lib, and AIR 2.0 SecureSocket. However, neither option has proved to be successful.
As3Crypto - TLSSocket
Using this method when we execute the code, the server throws an exception - this appears to be due to As3Crpyto's PARTIAL support of TLS.
AIR 2.0 - SecureSocket
We are currently using the latest Flex 4 SDK. We have imported AirGlobal.swc to alllow us to create a SecureSocket in a similar manner to the TLSSocket. The code builds but does not run - some File Not found error or something - probably because SecureSocket is not found in the runtime. I assume this is because AIR is intended for desktop applications rather than apps embedded in a browser.
So, now we're stuck. We have the option of encrypting the data instead using some PGP algorithm available in the As3Crypto lib. However, we would much prefer to encrypt the stream using something like TLSSocket or SecureSocket.