mm
This commit is contained in:
@@ -324,6 +324,7 @@ public class InCallMeetingActivity extends TrBaseActivity implements OnClickList
|
||||
.skinManager(QMUISkinManager.defaultInstance(InCallMeetingActivity.this))
|
||||
.edgeProtection(QMUIDisplayHelper.dp2px(InCallMeetingActivity.this, 20));
|
||||
if (DBUser.mySelf.isManager) {
|
||||
if(d.isBusy()) {
|
||||
if (d.isMute) {
|
||||
qa.addAction(new QMUIQuickAction.Action().icon(R.drawable.unmute).text("取消禁言").onClick(
|
||||
new QMUIQuickAction.OnClickListener() {
|
||||
@@ -447,6 +448,32 @@ public class InCallMeetingActivity extends TrBaseActivity implements OnClickList
|
||||
}
|
||||
}
|
||||
));
|
||||
} else if (d.isOnline()) {
|
||||
//空闲的可以加入进来
|
||||
qa.addAction(new QMUIQuickAction.Action().icon(R.drawable.add).text("加入会议").onClick(
|
||||
new QMUIQuickAction.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(QMUIQuickAction quickAction, QMUIQuickAction.Action action, int position) {
|
||||
quickAction.dismiss();
|
||||
QMUITipDialog dialog = UIUtl.toastLoading("");
|
||||
Net.addMember2Group(callnumber, d.phone, new HttpUtl.CallBack() {
|
||||
@Override
|
||||
public void onRequestComplete(int cmd, String result, Object orgs) {
|
||||
UIUtl.toastS("加入会议成功");
|
||||
getMembers();
|
||||
dialog.dismiss();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRequestError(int cmd, String result, Object orgs) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
}, null);
|
||||
}
|
||||
}
|
||||
));
|
||||
|
||||
}
|
||||
}
|
||||
qa.show(view);
|
||||
}
|
||||
@@ -770,7 +797,7 @@ public class InCallMeetingActivity extends TrBaseActivity implements OnClickList
|
||||
List<String> list = new ArrayList<>();
|
||||
List<String> listPhone = new ArrayList<>();
|
||||
for (DBUser u : DBUser.allUser) {
|
||||
if (!containMember(u.phone)) {
|
||||
if (!containMember(u.phone) || u.isOnline()) {
|
||||
listPhone.add(u.phone);
|
||||
list.add(u.phone + " | " + u.name);
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ public class DBRoot {
|
||||
case Net.CMD_getGroupMenbers:
|
||||
JSONObject o = JSONObject.parseObject(content);
|
||||
DBGroup.onGetGroupMembers(o);
|
||||
DBUser.onGetGroupMembers(o);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -72,6 +72,29 @@ public class DBUser {
|
||||
}
|
||||
}
|
||||
|
||||
public static void refreshUser(DBUser user) {
|
||||
for(int i=0; i < allUser.size();i++) {
|
||||
DBUser u = allUser.get(i);
|
||||
if(u.phone.equals(user.phone)) {
|
||||
allUser.set(i, user);
|
||||
mapUsers.put(user.phone, user);
|
||||
return;
|
||||
}
|
||||
}
|
||||
allUser.add(user);
|
||||
mapUsers.put(user.phone, user);
|
||||
}
|
||||
|
||||
public static void onGetGroupMembers(JSONObject content) {
|
||||
DBGroup group = new DBGroup();
|
||||
group.head = new DBHead(content);
|
||||
JSONArray array = content.getJSONArray("members_msg");
|
||||
for (Object o : array) {
|
||||
DBUser u = new DBUser((JSONObject) o);
|
||||
refreshUser(u);
|
||||
}
|
||||
}
|
||||
|
||||
public static DBUser getUser(String phoneNo) {
|
||||
return mapUsers.get(phoneNo);
|
||||
}
|
||||
|
||||
@@ -4,11 +4,13 @@ import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.media.AudioManager;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Message;
|
||||
import android.os.ParcelUuid;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.AdapterView;
|
||||
@@ -19,6 +21,7 @@ import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.RequiresApi;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.viewpager.widget.PagerAdapter;
|
||||
import androidx.viewpager.widget.ViewPager;
|
||||
|
||||
@@ -213,6 +216,7 @@ public class MainActivity extends TrBaseActivity {
|
||||
mTabSegment.notifyDataChanged();
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
private void initTabAndPager() {
|
||||
mContentViewPager.setAdapter(mPagerAdapter);
|
||||
// mContentViewPager.setCurrentItem(mDestPage.getPosition(), false);
|
||||
@@ -220,7 +224,7 @@ public class MainActivity extends TrBaseActivity {
|
||||
for (int i = 0; i < headers.size(); i++) {
|
||||
mTabSegment.addTab(tabBuilder.setText(headers.get(i).name).build(this));
|
||||
}
|
||||
int space = QMUIDisplayHelper.dp2px(this, 16);
|
||||
int space = QMUIDisplayHelper.dp2px(this, 17);
|
||||
mTabSegment.setIndicator(new QMUITabIndicator(
|
||||
QMUIDisplayHelper.dp2px(this, 2), false, true));
|
||||
mTabSegment.setMode(QMUITabSegment.MODE_SCROLLABLE);
|
||||
@@ -615,16 +619,7 @@ public class MainActivity extends TrBaseActivity {
|
||||
}
|
||||
|
||||
public void logout(View v) {
|
||||
SipEngine.getInstance().onLine = false;
|
||||
SipEngine.getInstance().isRelogin = true;
|
||||
// SipEngine.getInstance().Unregister();
|
||||
// SipEngine.getInstance().stop();
|
||||
Intent intent = new Intent(App.getContext(), LoginActivity.class);
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putBoolean("donotAutoLogin", true);
|
||||
intent.putExtras(bundle);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
startActivity(intent);
|
||||
UIUtl.doLogout();
|
||||
finish();
|
||||
}
|
||||
|
||||
|
||||
@@ -72,7 +72,10 @@ public class Net {
|
||||
}
|
||||
});
|
||||
}
|
||||
UIUtl.toastI(result);
|
||||
// UIUtl.toastI(result);
|
||||
if(cmd == CMD_getUsers) {
|
||||
UIUtl.doLogout();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.tianrun.sipcall.ui;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.GridView;
|
||||
@@ -12,6 +14,9 @@ import com.qmuiteam.qmui.skin.QMUISkinManager;
|
||||
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
|
||||
import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
|
||||
import com.tianrun.sipcall.App;
|
||||
import com.tianrun.sipcall.SipEngine;
|
||||
import com.tianrun.sipcall.login.LoginActivity;
|
||||
import com.tianrun.sipcall.utils.HttpUtl;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -168,4 +173,21 @@ public class UIUtl {
|
||||
}
|
||||
builder.build().show();
|
||||
}
|
||||
|
||||
public static void doLogout() {
|
||||
UIUtl.toastI("Token 失效");
|
||||
HttpUtl.token = null;
|
||||
ActivityMgr.hideAll();
|
||||
SipEngine.getInstance().onLine = false;
|
||||
SipEngine.getInstance().isRelogin = true;
|
||||
// SipEngine.getInstance().Unregister();
|
||||
// SipEngine.getInstance().stop();
|
||||
Intent intent = new Intent(App.getContext(), LoginActivity.class);
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putBoolean("donotAutoLogin", true);
|
||||
intent.putExtras(bundle);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
// ActivityMgr.topActivity.startActivity(intent);
|
||||
App.getInstance().startActivity(intent);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -160,6 +160,7 @@ public class HttpUtl {
|
||||
checkTokenFailed(retCode);
|
||||
return "";
|
||||
} else {
|
||||
UIUtl.toastI("内部错误");
|
||||
throw new RuntimeException(" responseCode :" + retCode);
|
||||
}
|
||||
|
||||
@@ -184,20 +185,7 @@ public class HttpUtl {
|
||||
|
||||
static void checkTokenFailed(int code) {
|
||||
if (code == 401) {
|
||||
UIUtl.toastI("Token 失效");
|
||||
token = null;
|
||||
ActivityMgr.hideAll();
|
||||
SipEngine.getInstance().onLine = false;
|
||||
SipEngine.getInstance().isRelogin = true;
|
||||
// SipEngine.getInstance().Unregister();
|
||||
// SipEngine.getInstance().stop();
|
||||
Intent intent = new Intent(App.getContext(), LoginActivity.class);
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putBoolean("donotAutoLogin", true);
|
||||
intent.putExtras(bundle);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
// ActivityMgr.topActivity.startActivity(intent);
|
||||
App.getInstance().startActivity(intent);
|
||||
UIUtl.doLogout();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,7 +197,7 @@ public class HttpUtl {
|
||||
* @return 所代表远程资源的响应结果
|
||||
* @throws Exception
|
||||
*/
|
||||
public static String doPost(String url, String param) {
|
||||
public static String doPost(String url, String param) throws Exception {
|
||||
PrintWriter out = null;
|
||||
BufferedReader in = null;
|
||||
String result = "";
|
||||
@@ -252,7 +240,12 @@ public class HttpUtl {
|
||||
}
|
||||
|
||||
int retCode = conn.getResponseCode();
|
||||
if(retCode == 401) {
|
||||
checkTokenFailed(retCode);
|
||||
} else {
|
||||
UIUtl.toastI("内部错误");
|
||||
throw new RuntimeException(" responseCode :" + retCode);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
Log.i("http", e.toString());
|
||||
|
||||
@@ -269,7 +269,7 @@
|
||||
android:text="退出"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="20sp"
|
||||
android:visibility="invisible" />
|
||||
android:visibility="visible" />
|
||||
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
|
||||
Reference in New Issue
Block a user