Skip to main content
Participant
February 8, 2010
Answered

Interactive application with rtmpte, swf verification, interacitive messages

  • February 8, 2010
  • 1 reply
  • 1349 views

Hi all, I have many questions on creating a real complex application on FMIS.

1) in the way to speed up connections behind proxies, is it possible to configure FMIS to support only rtmpte communications?

2) if I create many functions in the application SWF verification will be verified for each function?

3) if I have an swf (application A) that load another swf (application B) [see http://www.adobe.com/livedocs/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000354.html]  and application B call a FMIS under swf verification wich of the two application will be verified?

4) If I configure an application to use only RTMPE all the data communication between server and client will run under RTMPE?

Thanks a lot

LP

    This topic has been closed for replies.
    Correct answer SE_0208

    Hi,

    Yes, SWF Verification happens only at the time on conenct and not for each call. Its assumed that if SWF which is connected is authentic one then there is no need to authenticate each call its making , it will simply hit performance - hope you agree with me.

    Yes, i would suggest use connection URI with rtmpte at the start itself , otherwise when you rtmpe and 1935 is blocked it will do port scanning and hence will result in delay. And as you would be aware rtmpte would a bit slower than rtmpe for obvious reason of it being tunneling protocol.

    Hope above answers your queries.

    1 reply

    Participating Frequently
    February 9, 2010

    I shall answer your question one by one:

    1. in the way to speed up connections behind proxies, is it possible to configure FMIS to support only rtmpte communications?

    Ans: Not that fine tuned , but you can block rtmp and say rtmps. Say now you want only rtmpte so you will need to have following entry:

    <DisallowedProtocols>rtmp,rtmps </DisallowedProtocols>

    You can find above tagin Application.xml. Above entry would allow only rtmpe and rtmpte (so here you will have to allow rtmpe as you want rtmpte - you have to block both of them or allow both of them - but that should be fine I suppose)

    2.If I create many functions in the application SWF verification will be verified for each function?

    Ans: What do you mean by functions, if you mean AS2 or AS3 functions written i.e. code of client , then answer is NO. FMS will verify whole SWF and not individual function , but say for example you change any function in the swf and you have old swf present on server, it will fail to authenticate that swf as its changed.

    3.if I have an swf (application A) that load another swf (application B) [seehttp://www.adobe.com/livedocs/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.h tm?context=LiveDocs_Parts&file=00000354.html]  and application B call a FMIS under swf verification wich of the two application will be verified?

    Ans: Both would be verified provided they both connect to FMIS. Say if your case only application B connects to FMIS , then only application B would be verified.

    4. If I configure an application to use only RTMPE all the data communication between server and client will run under RTMPE?

    Ans: Did not get your question right when you say data communication between server and client. When you use RTMPE , the channel used for communication between server and client would be encrypted under RTMPE.

    Hope i have answered your questions

    Participant
    February 9, 2010

    Thanks a lot for your helpful answers!

    Only another question because my question weren't enough clear and some considerations that I hope you could find helpful....

    On question 2 what I meant to say is:

    if I created on FMIS an application with many functions exposed to swf clients (i.e. f1 f2)


    on the client side there is some code like

    nc = new NetConnection();
    nc.connect("rtmpe://myserver/myapp");
    nc.call("f1", new MyObject(), "mydata");
    nc.call("f2", new MyObject2(), "mydata2");

    Do the SWF verification be performed only on connect call?


    ---
    About question 1, what I mean is that behind some firewall I experienced great delay before rtmpet communications start,
    I would like to understand if this delay is related on trying to go on default rtmpe port and that the communication then switch on rtmpet.
    I see that is possible to call directly tunneled connection on client side, I will do some tests.

    February 10, 2010

    Yes SWFVerification is performed for every SWF which makes a netconnection to an app on Flash Media Server. So if you enable the SWFVerification feature then you have to maintain all the SWFs which make netconenction on the FMS side for the verification to happen. The SWFs which do not attempt a netconnection to fms need not be maintained on the FMS side.

    Are you disallowing other protocols on FMS and allowing only RTMPTE? If so, do you have RTMP/RTMPE mentioned specifically in the connection URI ? If the answer is yes to both the questions then the flash player performs port scanning in the following order : 1935 (RTMPE), 443 (RTMPE), 80 (RTMPE), and 80 (RTMPTE). Hence there might be an added delay before the connection is finally established on RTMPTE.

    Regards

    Mamata