Open alphabr opened 10 years ago
My code uses websockets to connect to MFC. MFC supports several different connection types including flash (the default), websockets, a java applet, and ajax. In their client side code you can see this:
w.hServerConfig = { "ajax_servers": ["xchat2", "xchat3", "xchat4", "xchat5", "xchat6"], "chat_servers": ["chat4", "chat1", "chat33", "chat34", "chat35", "chat36", "chat37", "chat38", "chat39", "chat40", "chat68", "chat41", "chat42", "chat43", "chat44", "chat45", "chat46", "chat47", "chat48", "chat49", "chat50", "chat51", "chat52", "xchat13", "xchat14", "xchat15", "xchat16", "xchat17", "xchat18", "xchat19", "chat53", "chat54", "chat55", "chat56", "chat57", "chat58", "chat59", "chat60", "chat61", "chat62", "chat63", "chat64", "chat65", "chat66", "chat67", "chat23", "chat24", "chat25"], "h5video_servers": {…}, "release": true, "video_servers": […], "websocket_servers": { "xchat10": "rfc6455", "xchat11": "hybi00", "xchat12": "rfc6455", "xchat20": "rfc6455", "xchat7": "rfc6455", "xchat8": "rfc6455", "xchat9": "rfc6455" } };
I suspect you are connecting to one of their flash servers and are getting whatever is being served from there.
That said, you may be just getting the typical chat messages; they’re not completely intuitive. I talk about the chat protocol here http://perv.me.uk/forum/viewtopic.php?f=8&t=111, particularly in the last post.
Your were very helpfull.
I made a registration to the forum to continue trade some thoughts
In advance here is what I posted in the forum:.
Im trying to record a model using rtmpdump manually.
I managed to get sessionID, modelID, videoServer for model video.
I created a connection to chat server before running the rtmpdump command.
But Im geting rickrolling thing and the video recorded is in truth a warning that Im outside MFC site.
I think I need to reply something after mfc chalenge me in loginResult, just before start recording.
Dont know if I still can use rtmpdump for that.
Here is the args Im passing for example:
rtmpdump -W {SWFPATH] -s {SWFPATH] -a {APP] -f {FLASHVERSION] -t rtmp://video{VIdeoID].myfreecams.com:1935/[APP] -r rtmp://[VideoID].myfreecams.com:1935/[APP]/mfc_[MODELID] -p "http://www.myfreecams.com/mfc2/static/player.html?&objectEncoding=0" -C N:[SESSIONID] -C S:"" -C N:[ROOMID] -C S:"DOWNLOAD" -C N:[MODELID] -o output.flv -V
The problem is in LoginResult
LoginResult Property 'challenge' String
(function(){var a=153>>0,b=88,c=380>>2,d=216.1757509899|0,e=79.1894573096|0,f=103>>0,g=202,h=2,i=16>>0,j=306-93,k=121.773636774|0,l=33.790278980|0,m=221,n=172-55,o=77>>0,p=88,q=316-198,r=236-143,s=153,t=75-2,u=149,v=106.2979572|0,w=251-20,x=253,y=242,z=81;v=!!screen.width+!!screen.height+!!document.location.host;var qq=0+o+j+(h_h)+w-v-v+n+p-h+u+r+(x_p)+(u_w)+v-y+o+n+j-y-s+(a_o)-x+k+(h_c)+(l_c)+(o_r)+l-m-k-p+(i_l)+(hk);qq=15;return qq;}())
What is this function Im receiving?
Thanks for share your knowledge.
Lets keep up
I don't think the forum there is active anymore, I just pointed there so I didn't have to type again.
Regarding video, I'm afraid I don't have any experience attempting to capture it. I've mainly done work with the chat server in an attempt to ease countdowns, tracking online status, etc.
I need a help to understand one thing.
I see you connect to "xchat[number].myfreecams.com 8080" to get models info.
If I connect to mfc using the browser and using netstat, I see it connect to the chat server in "chat[number].myfreecams.com 8100"
Im trying to do the same you do, but connect to the server the browse connect and send the hello fcserver and 1 0 0 20071025 0 guest:guest packets,, but I just receive a bunch of characters that I cant read.
Can you help? I need to stay connected to this server. Maybe I missing something.
What Im trying to do is: telnet open chat37.myfreecams.com 8100 send hello fcserver\n\0 send 1 0 0 20071025 0 guest:guest\n\0
is that right?
Thanks, you work is great