Expand my Community achievements bar.

Learn about Edge Delivery Services in upcoming GEM session

Connecting via AS2 - Any chance at all?

Avatar

Level 3

I'm currently planning a project which requires a mobile client in addition to a desktop client. The mobile client uses Flash Lite which is still AS2 based. Is there any chance at all that a connection to AFCS can be made via AS2?

I really want to use AFCS for this project, and my browser based prototype built in Flex works. However if the mobile client cannot be connected to AFCS then we will have to fall back on FMS which would allow for the collaboration of a browser based app with a mobile Flash Lite client (and that will be pretty neat).

All we need is to receive audio (we know this works with FMS), share one data property and maybe hook up a text chat. That's all. Do we stand any chance with AFCS or should we wait for Player 10 on devices before AFCS will extend to that platform?

Cheers

Stefan

14 Replies

Avatar

Former Community Member

Hi Stefan,

I'm pretty sure there's no reason connecting via AS2 couldn't work - what would be necessary is to take the existing AS3 source and back-port it. We've thought about this in the past, but don't really want to take the step of officially supporting another codebase. The most important thing is making sure the Lite Player can do netconnection.call as well as receive calls from FMS (I know it doesn't support SharedObjects, for example, but I think NetConnection is ok).

If you're up for that sort of challenge, we'd certainly be happy to help guide you through any issues you hit, and could help determine the least number of classes it would take to get the features you need.

hope that helps

nigel

Avatar

Level 3

very helpful, thanks Nigel.

Sorry, did I get this part right: Flash Lite does not support remote SOs, even on FMS? Not sure if that's what you meant.

What I know for sure is that FL can make FMS connections fine (I think it will do nc.call and ns.send too), and it can receive streaming video and audio. That part I am 100% sure of.

I'm basically trying to figure out if it's even worth trying to connect to AFCS. And then if that works what feature a mobile client may be able to support. We're looking to build a cut down version of the browser app, but still want to connect to the same 'session', sharing data from browser to mobile.

It may just be one step too far right now and we may have to settle for FMS simply for compatibility's sake. But back porting some base classes would be pretty neat too...

Cheers

Stefan

Avatar

Former Community Member

Hi Stefan,

Yeah, it was my impression (caveat, I might be wrong) that RSOs weren't supported in Flash Lite, even on FMS.

In theory, all of AFCS session/sharedModel/sharedManagers should be doable with Flash Lite, since we only use nc.call for all communications. There shouldn't be any compatibility issue.

nigel

Avatar

Employee

Well, for the life of me I cannot find a straight answer about NetConnection.call being supported in FlashLite

I know for sure that up to FlashLite 2 NetConnection was only usable to initiate a streaming session, and no data messaging was supported.

With FlashLite 3 I was promised that some form of messaging was added, and we assumed it was NetConnection.call (while remote shared objects are still unsupported) but I can't find anything written about that.

Maybe I'll see if I can give it a try, at least with the simulator, but again, if this is supported at all is going to be only for devices with FlashLite 3.

Avatar

Level 3

thanks, I'd be keen to find out. It's quite crucial that data messaging of some kind can be made to work with FL - version 3 is fine.

Cheers

Stefan



Avatar

Level 3

Nigel, it would be great to get an idea from your perspective on which base classes need to be ported to get a simple connection and maybe a shared property working with AS2/FL.

Cheers

Stefan



Avatar

Former Community Member

Sure - now, I'll warn you that this list will look intimidating, but in reality a lot of these classes should be able to port with little to no work involved.

All of this is under /com/adobe/rtc

/authentication : Abstract and AdobeHSAuthenticator

/messaging : All of it

/session : All of it, except SessionManagerLocalConnection, ConnectSessionContainer, and SessionContainerProxy

/sharedManagers : All of it

/sharedModel : CollectionNode and UserQueue (if you want to support RoomManager knocking, if not, comment out of RoomManager).

/util : RootCollectionNode, likely URLParser

You might find more dependencies, but this is about it. For now I'd change any namespaces (session_internal, message_internal) to public and be done with it.

If you have any questions, let us know!

nigel

Avatar

Level 3

You are right, that is intimidating. No doubt I'd get to know the framework intimidly

I'll have a look into it. Not sure if my skillls are up to such a task. Backporting to AS2... I must be mad just for considering that

Cheers

Stefan

Avatar

Level 3

Just one more thing: is AMF3 going to be a problem at all when it comes to Flash Lite and/or AS2? I mean there's no inherent incompatibility is there?

Regards,

Stefan

Avatar

Former Community Member

I think you're asking the wrong people =). I haven't tried, and in fact for the longest time we stuck to AMF1 just to be safe - so for sure AFCS works fine with old AMF or new. Don't know what FL3 supports though.

nigel

Avatar

Level 3

Sorry

I guess I should start testing with FL and FMS in the good old fashioned way. Then I can you all what's what.

Cheers

Stefan

Avatar

Employee

So, I did give this a try with the FlashLite simulator and calls do seem to go through. Don't have a phone with me (having moved to "the Phone" ) so I can't try on the real device until Friday (unless I can run my test on a Chumby )

But I did found a couple of problems:

- XML.load doesn't seem to follow redirects. I am sure it should work, but I'll need to do more investigations

- RTMPS doesn't seem to work, but RTMP does work. This may be were you will have to give up AFCS (we only support RTMPS) and use your own server

- I get onStatus messages for a connection success, but not for connection close

Again, all this is on the simulator, so on a real device it may be completely different, but if it works...

Avatar

Level 3

thank you, that's very helpful. RTMPS may indeed be a show stopper there, but it's great to know that RTMP in general seems to work. I also have the jesus phone but also got access to an N73 which I believe may be usable for testing. I actually have no clue how to get up and running with that, I'll have to read up on FL.

Cheers

Stefan



Avatar

Employee

The Nokia smartphones should come with FlashLite preinstalled (but I lost track of which version is on which phones), otherwise you can download FlashLite 3.1 from Adobe labs. Once installed you just drop your SWF on the phone (I used to send it via Bluetooth) and it should appear as a regular application (or you can run it via the Flash player)