diff --git a/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java b/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java
index 24d3635..6346314 100644
--- a/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java
+++ b/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java
@@ -48,4 +48,5 @@
     public static native String getJniString();
 	public static native void initN(String config_file);
 	public static native void placeCall(String accountID, String callID, String to);
+	public static native void hangUp(String accountID);
 }
diff --git a/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java b/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java
index 1cda915..6abb5e8 100644
--- a/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java
+++ b/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java
@@ -52,6 +52,7 @@
 import android.view.ViewGroup;
 import android.widget.EditText;
 import android.widget.TextView;
+import java.util.Random;
 
 import com.savoirfairelinux.sflphone.R;
 
@@ -62,6 +63,8 @@
 	ButtonSectionFragment buttonFragment;
 	Handler callbackHandler;
 	static ManagerImpl managerImpl;
+	/* default callID */
+	static String callID = "007";
 
 	/**
 	 * The {@link ViewPager} that will host the section contents.
@@ -276,13 +279,13 @@
 
 	@Override
     public void onClick(View view)
-    {
+    {		
     	switch (view.getId()) {
     	case R.id.buttonCall:
-    		String callID = "007";
     		TextView textView = (TextView) findViewById(R.id.editAccountID);
     		String accountID = textView.getText().toString();
     		EditText editText;
+    		Random random = new Random();
     		
     		editText = (EditText) findViewById(R.id.editTo);
     		String to = editText.getText().toString();
@@ -291,9 +294,16 @@
             	break;
     		}
     		
+    		/* new random callID */
+    		callID = Integer.toString(random.nextInt());
+    		
     		Log.d(TAG, "ManagerImpl.placeCall(" + accountID + ", " + callID + ", " + to + ");");
     		ManagerImpl.placeCall(accountID, callID, to);
         	break;
+    	case R.id.buttonHangUp:
+    		Log.d(TAG, "ManagerImpl.hangUp(" + callID + ");");
+    		ManagerImpl.hangUp(callID);
+    		break;
     	case R.id.buttonInit:
     		ManagerImpl.initN("");
     		break;
