src/com/beem/project/beem/jingle/JingleService.java
author nikita@mapiproxy
Thu, 27 Aug 2009 01:21:14 +0200
changeset 356 e46f634c629c
parent 355 b11d01c264a3
child 357 6ebfc44182ab
permissions -rw-r--r--
menage
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     1
/**
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
     2
 *
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     3
 */
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     4
package com.beem.project.beem.jingle;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     5
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     6
import java.util.ArrayList;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     7
import java.util.List;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     8
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
     9
import org.jivesoftware.smack.XMPPConnection;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    10
import org.jivesoftware.smack.XMPPException;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    11
import org.jivesoftware.smackx.jingle.JingleManager;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    12
import org.jivesoftware.smackx.jingle.JingleSession;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    13
import org.jivesoftware.smackx.jingle.JingleSessionRequest;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    14
import org.jivesoftware.smackx.jingle.listeners.JingleSessionListener;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    15
import org.jivesoftware.smackx.jingle.listeners.JingleSessionRequestListener;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    16
import org.jivesoftware.smackx.jingle.media.JingleMediaManager;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    17
import org.jivesoftware.smackx.jingle.media.PayloadType;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    18
import org.jivesoftware.smackx.jingle.nat.BasicTransportManager;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    19
import org.jivesoftware.smackx.jingle.nat.TransportCandidate;
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    20
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    21
/**
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    22
 * Beem Jingle Service, manage jingle call.
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    23
 * @author nikita
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    24
 */
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    25
public class JingleService {
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    26
    private JingleManager mJingleManager;
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    27
    private List<JingleMediaManager> mMediaManagers;
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    28
    private JingleSession mIn;
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    29
    private JingleSession mOut;
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    30
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    31
    /**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    32
     * JingleService constructor.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    33
     * @param xmppConnection a valid XMPPConnection
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    34
     */
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    35
    public JingleService(final XMPPConnection xmppConnection) {
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    36
	BasicTransportManager bt = new BasicTransportManager();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    37
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    38
	mMediaManagers = new ArrayList<JingleMediaManager>();
356
nikita@mapiproxy
parents: 355
diff changeset
    39
	mMediaManagers.add(new MicrophoneRTPManager(bt));
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    40
    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    41
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    42
    /**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    43
     * finish to construct the instance.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    44
     * @param conn the xmppConnection used with constructor
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    45
     */
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    46
    public void initWhenConntected(XMPPConnection conn) {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    47
	mJingleManager = new JingleManager(conn, mMediaManagers);
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    48
	mJingleManager.addJingleSessionRequestListener(new BeemJingleSessionRequestListener());
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    49
    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    50
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    51
    /**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    52
     * begin a jingle call.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    53
     * @param receiver the call receiver
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    54
     */
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    55
    public void call(final String receiver) {
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    56
	try {
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    57
	    mOut = mJingleManager.createOutgoingJingleSession(receiver);
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    58
	    // TODO configure out avec addMediaSession et addNegociator
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    59
	    mOut.addListener(new BeemJingleCallerSessionListener());
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    60
	    mOut.startOutgoing();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    61
	} catch (XMPPException e) {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    62
	    // TODO Auto-generated catch block
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    63
	    e.printStackTrace();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    64
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    65
    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    66
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    67
    /*
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    68
     * private void receiveData(String ip, int port) throws IOException { Socket s = null; try { s = new Socket(ip,
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    69
     * port); System.out.println("Waiting data"); InputStream in = s.getInputStream(); int a; while ((a = in.read()) !=
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    70
     * -1) { System.out.println("Received " + a); } System.out.println("End receiving data"); } finally { if (s != null)
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    71
     * s.close(); } }
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    72
     */
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    73
    /**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    74
     * Listen on receiver session events.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    75
     * @author nikita
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    76
     */
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    77
    private class BeemJingleReceiverSessionListener implements JingleSessionListener {
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    78
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    79
	/**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    80
	 * constructor.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    81
	 */
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    82
	public BeemJingleReceiverSessionListener() {
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    83
	    super();
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    84
	    // TODO Auto-generated constructor stub
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    85
	}
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    86
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    87
	@Override
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    88
	public void sessionClosed(String reason, JingleSession jingleSession) {
356
nikita@mapiproxy
parents: 355
diff changeset
    89
	    //System.out.println("Session " + jingleSession.getResponder() + "closedd because " + reason);
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    90
	}
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    91
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    92
	@Override
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    93
	public void sessionClosedOnError(XMPPException e, JingleSession jingleSession) {
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    94
	    // TODO Auto-generated method stub
356
nikita@mapiproxy
parents: 355
diff changeset
    95
	   // System.out.println("Session " + jingleSession.getResponder() + " closed");
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
    96
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    97
	}
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    98
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
    99
	@Override
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   100
	public void sessionDeclined(String reason, JingleSession jingleSession) {
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   101
	    // TODO Auto-generated method stub
356
nikita@mapiproxy
parents: 355
diff changeset
   102
	    //System.out.println("Session " + jingleSession.getResponder() + "declined because " + reason);
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   103
	}
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   104
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   105
	@Override
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   106
	public void sessionEstablished(PayloadType pt, TransportCandidate remoteCandidate,
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   107
	    TransportCandidate localCandidate, JingleSession jingleSession) {
356
nikita@mapiproxy
parents: 355
diff changeset
   108
	    //System.out.println("Session established");
nikita@mapiproxy
parents: 355
diff changeset
   109
	    //System.out.println("Je recois sur " + remoteCandidate.getIp() + ":" + remoteCandidate.getPort());
nikita@mapiproxy
parents: 355
diff changeset
   110
	    // TODO choose the right RTPReceiver depending on the payload type
nikita@mapiproxy
parents: 355
diff changeset
   111
	    //RTPReceiver rtpReceiver = new MicroRTPReceiver(remoteCandidate.getPort());
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   112
	}
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   113
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   114
	@Override
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   115
	public void sessionMediaReceived(JingleSession jingleSession, String participant) {
356
nikita@mapiproxy
parents: 355
diff changeset
   116
	    //System.out.println("Session Media received from " + participant);
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   117
	}
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   118
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   119
	@Override
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   120
	public void sessionRedirected(String redirection, JingleSession jingleSession) {
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   121
	}
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   122
    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   123
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   124
    /**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   125
     * Listen on caller session events.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   126
     * @author nikita
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   127
     */
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   128
    private class BeemJingleCallerSessionListener implements JingleSessionListener {
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   129
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   130
	/**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   131
	 * constructor.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   132
	 */
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   133
	public BeemJingleCallerSessionListener() {
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   134
	    super();
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   135
	    // TODO Auto-generated constructor stub
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   136
	}
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   137
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   138
	@Override
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   139
	public void sessionClosed(final String reason, final JingleSession jingleSession) {
356
nikita@mapiproxy
parents: 355
diff changeset
   140
	 //   System.out.println("Session " + jingleSession.getResponder() + "closed because " + reason);
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   141
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   142
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   143
	@Override
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   144
	public void sessionClosedOnError(final XMPPException e, final JingleSession jingleSession) {
356
nikita@mapiproxy
parents: 355
diff changeset
   145
	   // System.out.println("Session " + jingleSession.getResponder() + " closed on error");
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   146
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   147
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   148
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   149
	@Override
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   150
	public void sessionDeclined(final String reason, final JingleSession jingleSession) {
356
nikita@mapiproxy
parents: 355
diff changeset
   151
	   // System.out.println("Session " + jingleSession.getResponder() + "declined because " + reason);
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   152
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   153
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   154
	@Override
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   155
	public void sessionEstablished(final PayloadType pt, final TransportCandidate remoteCandidate,
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   156
	    final TransportCandidate localCandidate, final JingleSession jingleSession) {
356
nikita@mapiproxy
parents: 355
diff changeset
   157
	   // System.out.println("Session established");
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   158
	    // String name = localCandidate.getName();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   159
	    String ip = localCandidate.getIp();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   160
	    int port = localCandidate.getPort();
356
nikita@mapiproxy
parents: 355
diff changeset
   161
	   // System.out.println("Session established waiting connection on " + ip + ":" + port);
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   162
356
nikita@mapiproxy
parents: 355
diff changeset
   163
	    RTPTransmitter transm = new PCMTransmitter(ip, port);
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   164
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   165
	    transm.run();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   166
	    try {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   167
		Thread.sleep(20000);
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   168
	    } catch (InterruptedException e) {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   169
		// TODO Auto-generated catch block
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   170
		e.printStackTrace();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   171
	    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   172
	    transm.stop();
356
nikita@mapiproxy
parents: 355
diff changeset
   173
	  //  System.out.println("End of transfer");
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   174
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   175
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   176
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   177
	@Override
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   178
	public void sessionMediaReceived(final JingleSession jingleSession, final String participant) {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   179
	    // TODO Auto-generated method stub
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   180
	    System.out.println("Session Media received from " + participant);
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   181
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   182
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   183
	@Override
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   184
	public void sessionRedirected(final String redirection, final JingleSession jingleSession) {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   185
	    // TODO Auto-generated method stub
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   186
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   187
    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   188
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   189
    /**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   190
     * Listen for a Jingle session request.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   191
     * @author nikita
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   192
     */
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   193
    private class BeemJingleSessionRequestListener implements JingleSessionRequestListener {
355
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   194
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   195
	/**
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   196
	 * Constructor.
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   197
	 */
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   198
	public BeemJingleSessionRequestListener() {
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   199
	    super();
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   200
	}
b11d01c264a3 debut de l'audit de mon code
nikita@mapiproxy
parents: 353
diff changeset
   201
353
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   202
	@Override
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   203
	public void sessionRequested(JingleSessionRequest request) {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   204
	    System.out.println("Jingle Session request from " + request.getFrom());
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   205
	    try {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   206
		mIn = request.accept();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   207
		mIn.addListener(new BeemJingleReceiverSessionListener());
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   208
		mIn.startIncoming();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   209
	    } catch (XMPPException e) {
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   210
		e.printStackTrace();
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   211
	    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   212
	}
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   213
    }
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   214
91bf7d256964 merge avec mon debut de rtp
nikita@mapiproxy
parents:
diff changeset
   215
}