join muc : retrieve now the nickname from database
authorVincent V.<marseille@beem-project.com>
Wed, 22 Feb 2012 22:42:31 +0100
changeset 937 e0e5ea20e1c5
parent 936 5cfaa17be49e
child 938 ff5683dca111
join muc : retrieve now the nickname from database
src/com/beem/project/beem/BeemService.java
--- a/src/com/beem/project/beem/BeemService.java	Wed Feb 22 18:55:21 2012 +0100
+++ b/src/com/beem/project/beem/BeemService.java	Wed Feb 22 22:42:31 2012 +0100
@@ -78,6 +78,7 @@
 import android.content.IntentFilter;
 import android.content.SharedPreferences;
 import android.content.SharedPreferences.Editor;
+import android.database.Cursor;
 import android.net.ConnectivityManager;
 import android.os.Bundle;
 import android.os.Handler;
@@ -89,6 +90,7 @@
 import android.util.Log;
 import android.widget.Toast;
 
+import com.beem.project.beem.providers.MUCs;
 import com.beem.project.beem.service.XmppConnectionAdapter;
 import com.beem.project.beem.smack.avatar.AvatarMetadataProvider;
 import com.beem.project.beem.smack.avatar.AvatarProvider;
@@ -538,10 +540,18 @@
 
 		    DiscussionHistory history = new DiscussionHistory();
 		    history.setMaxStanzas(5);
-		    try {
-			muc.join("beem", "", history, SmackConfiguration.getPacketReplyTimeout());
-		    } catch (XMPPException e) {
-			Log.e(TAG, "MUC Join Problem", e);
+		    Cursor c = getContentResolver().query(MUCs.CONTENT_URI,
+			new String[] { MUCs.NICKNAME, MUCs.PASSWORD },
+			MUCs.ACCOUNT_NAME + "=? AND " + MUCs.ACCOUNT_TYPE + "=? AND " + MUCs.JID + "=?",
+			new String[] { accountName, BeemApplication.BEEM_PACKAGE, mucjid }, null);
+		    if (c.moveToFirst()) {
+			try {
+			    muc.join(c.getString(c.getColumnIndex(MUCs.NICKNAME)),
+				c.getString(c.getColumnIndex(MUCs.PASSWORD)), history,
+				SmackConfiguration.getPacketReplyTimeout());
+			} catch (XMPPException e) {
+			    Log.e(TAG, "MUC Join Problem", e);
+			}
 		    }
 		    break;
 		case MESSAGE_MUC_SEND_MSG: