0

Config client in linux and Config service in Android fail to establish session

asked 2014-09-27 00:17:17 -0700

tashi gravatar image

I am running config client in linux based system and I am running config service in android .

They fail to create session with following error

Calling AnnounceHandler Callback JoinSessionCB(:tIV-B2UL.2) failed with status: ER_ALLJOYN_JOINSESSION_REPLY_NO_SESSION

Please help !!!

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted
0

answered 2014-10-07 02:09:10 -0700

tashi gravatar image

Thanks bspencer,

I did what you have wrote here. But real problem was that I had used different session port at config client and at config server (I wrote config server for android).

I made port 25 at both ends and it worked like charm !!

Thanks

edit flag offensive delete publish link more
0

answered 2014-10-01 16:17:03 -0700

bspencer gravatar image

There is no Config Service sample for Android so I am assuming you wrote your own application. As such the error message is fairly straight forward, there is no session for the Config Client to connect to. This is due to the Android application failing to place an API call to BindSessionPort).

When you advertised using the AboutFeature that port value that you enter needs to be used in the BindSessionPort API call prior to sending the About Annoucement. From our AboutService example for the Java Language Binding, there is this snippet of code that you will need to have in your application:

Mutable.ShortValue contactPort = new Mutable.ShortValue(CONTACT_PORT);

    SessionOpts sessionOpts = new SessionOpts();
    sessionOpts.traffic = SessionOpts.TRAFFIC_MESSAGES;
    sessionOpts.isMultipoint = false;
    sessionOpts.proximity = SessionOpts.PROXIMITY_ANY;
    sessionOpts.transports = SessionOpts.TRANSPORT_ANY;

    status = mBus.bindSessionPort(contactPort, sessionOpts,
            new SessionPortListener() {
        public boolean acceptSessionJoiner(short sessionPort, String joiner, SessionOpts sessionOpts) {
            System.out.println("SessionPortListener.acceptSessionJoiner called");
            if (sessionPort == CONTACT_PORT) {
                return true;
            } else {
                return false;
            }
        }
        public void sessionJoined(short sessionPort, int id, String joiner) {
            System.out.println(String.format("SessionPortListener.sessionJoined(%d, %d, %s)", sessionPort, id, joiner));
            sessionId = id;
            sessionEstablished = true;
        }
    });

Of course, replacing the appropriate values with those needed for your application.

edit flag offensive delete publish link more
Login/Signup to Answer

Question Tools

Follow
1 follower

Stats

Asked: 2014-09-27 00:17:17 -0700

Seen: 103 times

Last updated: Oct 07 '14