Problem connecting... or not?

Hello.

I created a chat application video where a user has a list of friends and they can enter different rooms according to who they want to talk with.
Each friend is assigned a room so when a user clicks on a friend, they enter the room that is designated for a chat with this particular friend.
Basically, it's my version of windows live messenger, but with video.

When the user selects a friend to talk to, I login passing username and the roomURL. I connect using ConnectSession.
Then when a user closes the chat window I explicitly close the session by calling the method logout()) on the ConnectSession so that when the user wants to discuss with another friend, they have to log in again and enter a URL out of the room.
It works very well on the first attempt, but as soon as the user closed the window and then try to talk to another friend or re - enter the same room the connection stops at halfway and nothing comes up.

It is the trace of the connection, I commented inline to indicate what I'm doing:

<!--FIRST CONNECTION to THE CAA-->
AFCS Beta Build #: 1.02
requestInfo https://ConnectNow.Acrobat.com/fuyuko1979/HugRoom_4AB31E68-8AA4-78DE-FC33-F89BC61AEDB6?Guk = ZzpGdXl1a286 & mode = x & xml = 0.9314393168315291
Warning: domain connectnow.acrobat.com does not specify a meta-policy.  'Master only' default meta-policy for the application.  This configuration is deprecated.  See http://www.adobe.com/go/strict_policy_files to solve this problem.

#TicketService # received ticket: 2dmmaciq6pqn
Get FMS to https://na2.ConnectNow.Acrobat.com/FMS?ticket=2dmmaciq6pqn attempt n ° 1/3
result: fms >
FMS3.Acrobat.com < source > < / original >
< proto_ports > rtmps:443 < / proto_ports >
< retry_attempts > 2 < / retry_attempts >
< / fms >
#FMSConnector # Wed Feb 24 09:25:03 GMT + 1300 2010 protocols: [object ProtocolPortPair]
#FMSConnector # Wed Feb 24 09:25:03 GMT + 1300 2010 [attempt 2 1] connection to 0/0: rtmps://fms3.acrobat.com/cocomo/na2-sdk-af1952fe-e877-4554-b93d-acd51f87b2d2/hugroom_4ab3 1e68-8aa4-78de-fc33-f89bc61aedb6 #startProtosConnect #.
#FMSConnector # wed Feb 24 09:25:04 GMT + 1300 2010 tempNetStatusHandler 0/1,NetConnection.Connect.Success
#FMSConnector # Wed Feb 24 09:25:04 GMT + 1300 2010 isTunneling? fake
#FMSConnector # Wed Feb 24 09:25:04 GMT + 1300 2010 use RTMPS? true
RECEIPT TO THE SESSION LOGIN
the server [object] .user descriptor
\\
p:System.NET.mail.MailAddress.DisplayName [string] = Fuyuko
.affiliation [number] = 5
. Role [number] = 50
.userID [string] = GUEST-79010AC4-A502-4139-AAFE-5DAF1D1F5ABF
UserManager RECEIVENODES
UserManager receiveAllSynchData
IsPeer false as a connection definition isn't RTMFP for UserFuyuko
Manager RECEIVENODES of files
Manager receiveAllSynchData of files
checkManagerSync: [object FileManager]
RECEIVENODES AVManager
receiveAllSynchData AVManager
checkManagerSync: [object StreamManager]
RECEIVENODES RoomManager
receiveAllSynchData RoomManager
checkManagerSync: [object RoomManager]
checkManagerSync: [object UserManager]
RECEIVENODES webcam
receiveAllSynchData webcam

RECEIVENODES nextPage
receiveAllSynchData nextPage

<! - This IS WHEN a USER CLOSES THE WEBCAM WINDOW AND CALL THE METHOD LOGOUT - >
CONNECTSESSION:LOGOUT

<! - entering THE SAME ROOM BY LOGGING BACK IN AGAIN - >
CAA Beta Build #: 1.02
requestInfo https://ConnectNow.Acrobat.com/fuyuko1979/HugRoom_4AB31E68-8AA4-78DE-FC33-F89BC61AEDB6?Guk = ZzpGdXl1a286 & mode = x & xml = 0.09717315156012774
#TicketService # received ticket: wfcjy13d60dy
Get FMS to https://na2.ConnectNow.Acrobat.com/FMS?ticket=wfcjy13d60dy attempt n ° 1/3
result: fms >
FMS3.Acrobat.com < source > < / original >
< proto_ports > rtmps:443 < / proto_ports >
< retry_attempts > 2 < / retry_attempts >
< / fms >
#FMSConnector # Wed Feb 24 09:25:28 GMT + 1300 2010 protocols: [object ProtocolPortPair]
#FMSConnector # Wed Feb 24 09:25:28 GMT + 1300 2010 [attempt 2 1] connection to 0/0: rtmps://fms3.acrobat.com/cocomo/na2-sdk-af1952fe-e877-4554-b93d-acd51f87b2d2/hugroom_4ab3 1e68-8aa4-78de-fc33-f89bc61aedb6 #startProtosConnect #.
#FMSConnector # wed Feb 24 09:25:30 GMT + 1300 2010 tempNetStatusHandler 0/1,NetConnection.Connect.Success
#FMSConnector # Wed Feb 24 09:25:30 GMT + 1300 2010 isTunneling? fake
#FMSConnector # Wed Feb 24 09:25:30 GMT + 1300 2010 use RTMPS? true
RECEIPT TO THE SESSION LOGIN
the server [object] .user descriptor
\\
p:System.NET.mail.MailAddress.DisplayName [string] = Fuyuko
.affiliation [number] = 5
. Role [number] = 50
.userID [string] = GUEST-79010AC4-A502-4139-AAFE-5DAF1D1F5ABF
UserManager RECEIVENODES
UserManager receiveAllSynchData
IsPeer false as a connection definition isn't RTMFP for UserFuyuko
Manager RECEIVENODES of files
Manager receiveAllSynchData of files
checkManagerSync: [object FileManager]
RECEIVENODES AVManager
receiveAllSynchData AVManager
checkManagerSync: [object StreamManager]
RECEIVENODES RoomManager
receiveAllSynchData RoomManager
checkManagerSync: [object RoomManager]
checkManagerSync: [object UserManager]
RECEIVENODES webcam
receiveAllSynchData webcam

<! - This IS WHERE THE CONNECTION HANGS JUST - >

So I wonder if it might be my collection nextPage node that has something to do with that...?
Otherwise, I really have no idea.
My understanding is that if you want to enter different rooms, you must connect each time by calling the login on the ConnectSession?

It would be good?
If anyone can help I most wished to,.

Thank you!

Hi Fuyuko,

Sorry for the delay in response. As Nigel pointed out, there was a bug on our side that when you do audiopublish, and you are offline, it is not clean the flow and similarly for the camera. So, when you reconnect, you will find the problem.

I solved the problem, and since you are using the player 10 swc (for which you do not have the source), I sent you three files which are essentially subclasses of WebCamPub/sup and AudioPub. You use these classes as well as the player 10 SWC.

I am attaching a sample also file which makes the connection and publishes camera / audio and the fact a disconnect as a test file.

We will fix it at the source in the next version. Until then, subclasses should work properly.

For the webcam, I use WebcamPublisher and WebcamSubscriber instead of the webcam pod class.

In case you use webcam Pod, you must subclass the webcam and specify these classes sub webcam Pod inside, but my personal view would preferably work in the Pub/Sub level as it gives you more freedom.

I hope this helps. Please let us know other query

Thank you

Hironmay Basu

I couldn't reach him. Then paste the files

AudioPublisherSubClass.as

package

{

import com.adobe.rtc.collaboration.AudioPublisher;

import com.adobe.rtc.events.CollectionNodeEvent;

import com.adobe.rtc.events.ConnectSessionEvent;

SerializableAttribute public class AudioPublisherSubClass extends AudioPublisher

{

public void AudioPublisherSubClass()

{

Super();

}

override the onSynchronizationChange(p_evt:CollectionNodeEvent):void function

{

If (isPublishing & _stream) {}

_stream.attachAudio (null);

_mic = null;

_stream. Close();

_stream = null;

}

super.onSynchronizationChange (p_evt);

}

}

}

WebcamPublisherSubclass.as

package

{

import com.adobe.rtc.collaboration.WebcamPublisher;

import com.adobe.rtc.events.CollectionNodeEvent;

import com.adobe.rtc.events.ConnectSessionEvent;

SerializableAttribute public class WebcamPublisherSubclass extends WebcamPublisher

{

public void WebcamPublisherSubclass()

{

Super();

}

override the onSynchronizationChange(p_evt:CollectionNodeEvent):void function

{

deleteCamera();

super.onSynchronizationChange (p_evt);

}

}

}

WebcamSubscriberSubClass.as

package

{

import com.adobe.rtc.collaboration.WebcamSubscriber;

import com.adobe.rtc.events.CollectionNodeEvent;

import com.adobe.rtc.sharedManagers.StreamManager;

import com.adobe.rtc.sharedManagers.descriptors.StreamDescriptor;

SerializableAttribute public class WebcamSubscriberSubClass extends WebcamSubscriber

{

public void WebcamSubscriberSubClass()

{

Super();

}

override the onSynchronizationChange(p_evt:CollectionNodeEvent):void function

{

If (_streamManager &! _streamManager.isSynchronized) {}

var streamDescriptors:Object = _streamManager.getStreamsOfType (StreamManager.CAMERA_STREAM, _gro upName);

for {(var: chaîne d'id dans streamDescriptors)}

var streamDescriptor:StreamDescriptor = streamDescriptors [id];

deleteStream (streamDescriptor);

}

}

super.onSynchronizationChange (p_evt);

}

}

}

Test.MXML

"http://www.adobe.com/2006/MXML" layout = "absolute" xmlns:session = "" com.adobe.rtc.session. * "xmlns:authentication =" com.adobe.rtc.authentication. * "xmlns:pods =" "com.adobe.rtc.pods. *" "

xmlns:collaboration = "" com.adobe.RTC.collaboration. * "xmlns:subclass =" "*" > "

protected function init (): void

{

If {(cSession.isSynchronized)

blah. Publish();

blah2. Publish();

}

}

protected function onLogoutClick (): void

{

If {(logoutButt.label=="logout)"}

logoutButt.label = 'username ';

cSession.logout ();

} else {}

logoutButt.label = 'logout ';

cSession.login ();

}

}

]]>

Tags: Adobe LiveCycle

Similar Questions

Maybe you are looking for