--- a/src/com/beem/project/beem/jingle/RTPReceiver.java Fri Apr 03 18:50:13 2009 +0200
+++ b/src/com/beem/project/beem/jingle/RTPReceiver.java Sat Apr 04 08:26:31 2009 +0200
@@ -56,7 +56,7 @@
@Override
public void receiveData(DataFrame frame, Participant participant) {
- byte[] data = frame.getConcatenatedData();
+ //byte[] data = frame.getConcatenatedData();
}
@Override
--- a/src/com/beem/project/beem/jingle/Receiver.java Fri Apr 03 18:50:13 2009 +0200
+++ b/src/com/beem/project/beem/jingle/Receiver.java Sat Apr 04 08:26:31 2009 +0200
@@ -2,10 +2,8 @@
import java.io.IOException;
import java.io.InputStream;
-import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.XMPPConnection;
@@ -53,8 +51,8 @@
// Le client demande les services dispo en face a son roster
// il doit en suite fournir lui meme une liste de feature
- DiscoverInfo di = sdm.discoverInfo("test@nikita-rack/pidgin");
- DiscoverInfo di2 = sdm.discoverInfo("nikita@nikita-rack/Telepathy");
+ //DiscoverInfo di = sdm.discoverInfo("test@nikita-rack/pidgin");
+ //DiscoverInfo di2 = sdm.discoverInfo("nikita@nikita-rack/Telepathy");
} catch (XMPPException e) {
// TODO Auto-generated catch block
@@ -76,20 +74,16 @@
System.out.println("Jingle Session request from "+request.getFrom());
try {
in = request.accept();
- // TODO configure in
in.addListener(new JingleSessionListener() {
@Override
public void sessionRedirected(String redirection,
JingleSession jingleSession) {
- // TODO Auto-generated method stub
-
}
@Override
public void sessionMediaReceived(JingleSession jingleSession,
String participant) {
- // TODO Auto-generated method stub
System.out.println("Session Media received from " + participant);
}
@@ -97,7 +91,6 @@
public void sessionEstablished(PayloadType pt,
TransportCandidate remoteCandidate,
TransportCandidate localCandidate, JingleSession jingleSession) {
- // TODO Auto-generated method stub
System.out.println("Session established");
try{
System.out.println("Je recois sur " + remoteCandidate.getIp() + ":" + remoteCandidate.getPort() );
@@ -123,13 +116,11 @@
@Override
public void sessionClosed(String reason, JingleSession jingleSession) {
- // TODO Auto-generated method stub
System.out.println("Session "+ jingleSession.getResponder() +"closedd because "+ reason);
}
});
in.startIncoming();
} catch (XMPPException e) {
- // TODO Auto-generated catch block
e.printStackTrace();
}
}
@@ -161,7 +152,6 @@
* @throws InterruptedException
*/
public static void main(String[] args) throws InterruptedException {
- // TODO Auto-generated method stub
Receiver rec = new Receiver("test2", "test2");
System.out.println("Receiver initialized");
--- a/src/com/beem/project/beem/provider/ContactProvider.java Fri Apr 03 18:50:13 2009 +0200
+++ b/src/com/beem/project/beem/provider/ContactProvider.java Sat Apr 04 08:26:31 2009 +0200
@@ -9,7 +9,6 @@
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.UriMatcher;
-import android.content.res.Resources;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
--- a/src/com/beem/project/beem/service/RosterAdapter.java Fri Apr 03 18:50:13 2009 +0200
+++ b/src/com/beem/project/beem/service/RosterAdapter.java Sat Apr 04 08:26:31 2009 +0200
@@ -16,7 +16,6 @@
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.packet.Presence;
-import com.beem.project.beem.service.aidl.IBeemConnectionListener;
import com.beem.project.beem.service.aidl.IBeemRosterListener;
import android.os.RemoteCallbackList;
@@ -34,64 +33,9 @@
private RemoteCallbackList<IBeemRosterListener> mRemoteRosListeners =
new RemoteCallbackList<IBeemRosterListener>();
private Map<String, Contact> mContacts = new HashMap<String, Contact>();
- private RosterListener mRosterListener = new RosterListener() {
- @Override
- public void presenceChanged(Presence presence) {
- String user = presence.getFrom();
- Presence bestPresence = mAdaptee.getPresence(user);
- Contact c = mContacts.get(user);
- if (c == null) {
- c = new Contact(user);
- mContacts.put(user, c);
- }
- int status;
- if (bestPresence.getType().equals(Presence.Type.unavailable))
- status = Contact.CONTACT_STATUS_DISCONNECT;
- else {
- switch (bestPresence.getMode()) {
- case available:
- status = Contact.CONTACT_STATUS_AVAILABLE;
- break;
- case away:
- status = Contact.CONTACT_STATUS_AWAY;
- break;
- case chat:
- status = Contact.CONTACT_STATUS_AVAILABLE_FOR_CHAT;
- break;
- case dnd:
- status = Contact.CONTACT_STATUS_BUSY;
- break;
- case xa:
- status = Contact.CONTACT_STATUS_UNAVAILABLE;
- break;
- default:
- Log.e("RosterAdapter", "Status mode non gere");
- status = Contact.CONTACT_STATUS_DISCONNECT;
- break;
- }
- }
- c.setStatus(status);
- }
-
- @Override
- public void entriesUpdated(Collection<String> arg0) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void entriesDeleted(Collection<String> arg0) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void entriesAdded(Collection<String> arg0) {
- // TODO Auto-generated method stub
-
- }
- };
-
+
+ private RosterListenerAdapter mRosterListener = new RosterListenerAdapter();
+
/**
* Constructor.
* @param roster the roster to adapt
@@ -111,7 +55,6 @@
*/
@Override
public void createGroup(String groupname) throws RemoteException {
- // TODO Auto-generated method stub
mAdaptee.createGroup(groupname);
}
@@ -232,9 +175,46 @@
@Override
public void presenceChanged(Presence presence) {
+
+ /* gestion du roster coter service */
+ String user = presence.getFrom();
+ Presence bestPresence = mAdaptee.getPresence(user);
+ Contact c = mContacts.get(user);
+ if (c == null) {
+ c = new Contact(user);
+ mContacts.put(user, c);
+ }
+ int status;
+ if (bestPresence.getType().equals(Presence.Type.unavailable))
+ status = Contact.CONTACT_STATUS_DISCONNECT;
+ else {
+ switch (bestPresence.getMode()) {
+ case available:
+ status = Contact.CONTACT_STATUS_AVAILABLE;
+ break;
+ case away:
+ status = Contact.CONTACT_STATUS_AWAY;
+ break;
+ case chat:
+ status = Contact.CONTACT_STATUS_AVAILABLE_FOR_CHAT;
+ break;
+ case dnd:
+ status = Contact.CONTACT_STATUS_BUSY;
+ break;
+ case xa:
+ status = Contact.CONTACT_STATUS_UNAVAILABLE;
+ break;
+ default:
+ Log.e("RosterAdapter", "Status mode non gere");
+ status = Contact.CONTACT_STATUS_DISCONNECT;
+ break;
+ }
+ }
+ c.setStatus(status);
+
+ /* redispatch vers les IBeemRosterListener */
final int n = mRemoteRosListeners.beginBroadcast();
-
- List<String> tab = null;
+
for (int i = 0; i < n; i++) {
IBeemRosterListener listener = mRemoteRosListeners.getBroadcastItem(i);
try {
--- a/src/com/beem/project/beem/service/XMPPConnectionAdapter.java Fri Apr 03 18:50:13 2009 +0200
+++ b/src/com/beem/project/beem/service/XMPPConnectionAdapter.java Sat Apr 04 08:26:31 2009 +0200
@@ -28,7 +28,6 @@
private static final String TAG = "XMPPConnectionAdapter";
private XMPPConnection mAdaptee;
private IChatManager mChatManager;
- private BeemException mLastException;
private String mLogin;
private String mPassword;
private RosterAdapter mRoster;
@@ -36,6 +35,7 @@
private RemoteCallbackList<IBeemConnectionListener> mRemoteConnListeners =
new RemoteCallbackList<IBeemConnectionListener>();
private ConnexionListenerAdapter mConListener = new ConnexionListenerAdapter();
+ private Object mLastException;
/**
* Constructor.
@@ -80,7 +80,7 @@
mAdaptee.login(mLogin, mPassword, "BEEM");
mChatManager = new BeemChatManager(mAdaptee.getChatManager());
// TODO find why this cause a null pointer exception
- // this.initFeatures(); // pour declarer les features xmpp qu'on supporte
+ this.initFeatures(); // pour declarer les features xmpp qu'on supporte
mLastException = null;
triggerAsynchronousConnectEvent();
return true;
@@ -165,7 +165,18 @@
private void triggerAsynchronousConnectEvent() {
mConListener.onConnect();
}
+
+ /**
+ * enregistre les features dispo dans notre version Liste de features que Telepathy supporte.
+ */
+ private void initFeatures() {
+ JingleManager.setJingleServiceEnabled();
+ ServiceDiscoveryManager sdm = ServiceDiscoveryManager.getInstanceFor(mAdaptee);
+ sdm.addFeature("http://jabber.org/protocol/disco#info");
+ // sdm.addFeature("http://jabber.org/protocol/nick");
+ }
+
/**
* Listener for XMPP connection events.
* It will calls the remote listeners for connexion events.
@@ -297,36 +308,5 @@
}
mRemoteConnListeners.finishBroadcast();
}
-
}
-
- /**
- * enregistre les features dispo dans notre version Liste de features que Telepathy supporte.
- * "http://www.google.com/xmpp/protocol/session" "http://www.google.com/transport/p2p"
- * "http://jabber.org/protocol/jingle" "http://jabber.org/protocol/chatstates" "http://jabber.org/protocol/nick"
- * "http://jabber.org/protocol/nick+notify" "http://jabber.org/protocol/si" "ttp://jabber.org/protocol/ibb"
- * "ttp://telepathy.freedesktop.org/xmpp/tubes" "http://www.google.com/xmpp/protocol/voice/v1"
- * "http://jabber.org/protocol/jingle/description/audio" "http://jabber.org/protocol/jingle/description/video" Liste
- * de features que pidgin `supporte' (on notera la cradence de l'annonce): "jabber:iq:last" "jabber:iq:oob"
- * "jabber:iq:time" "jabber:iq:version" "jabber:x:conference" "urn:xmpp:attention:0" "urn:xmpp:bob" "urn:xmpp:ping"
- * "xmpp:urn:time" "http://jabber.org/protocol/bytestreams" "http://jabber.org/protocol/disco#info"
- * "http://jabber.org/protocol/disco#items" "http://jabber.org/protocol/ibb" "http://jabber.org/protocol/muc"
- * "http://jabber.org/protocol/muc#user" "http://jabber.org/protocol/si"
- * "http://jabber.org/protocol/si/profile/file-transfer" "http://jabber.org/protocol/xhtml-im"
- * "http://www.xmpp.org/extensions/xep-0199.html#ns" "http://jabber.org/protocol/mood"
- * "http://jabber.org/protocol/mood+notify" "http://jabber.org/protocol/nick"
- * "http://jabber.org/protocol/nick+notify" "http://jabber.org/protocol/tune"
- * "http://jabber.org/protocol/tune+notify" "http://www.xmpp.org/extensions/xep-0084.html#ns-metadata"
- * "http://www.xmpp.org/extensions/xep-0084.html#ns-data"
- * "http://www.xmpp.org/extensions/xep-0084.html#ns-metadata+notify"
- * "http://www.xmpp.org/extensions/xep-0167.html#ns" << Jingle RTP Sessions
- */
- private void initFeatures() {
- JingleManager.setJingleServiceEnabled();
- ServiceDiscoveryManager sdm = ServiceDiscoveryManager.getInstanceFor(mAdaptee);
- sdm.addFeature("http://jabber.org/protocol/disco#info");
- // sdm.addFeature("http://jabber.org/protocol/nick");
-
- }
-
}