|
@@ -10,7 +10,9 @@ import android.view.WindowManager;
|
|
import android.widget.Chronometer;
|
|
import android.widget.Chronometer;
|
|
import android.widget.TextView;
|
|
import android.widget.TextView;
|
|
|
|
|
|
|
|
+import com.google.gson.FieldNamingPolicy;
|
|
import com.google.gson.Gson;
|
|
import com.google.gson.Gson;
|
|
|
|
+import com.google.gson.GsonBuilder;
|
|
import com.starrtc.demo.database.CoreDB;
|
|
import com.starrtc.demo.database.CoreDB;
|
|
import com.starrtc.demo.database.HistoryBean;
|
|
import com.starrtc.demo.database.HistoryBean;
|
|
import com.starrtc.demo.demo.BaseActivity;
|
|
import com.starrtc.demo.demo.BaseActivity;
|
|
@@ -31,6 +33,10 @@ import com.wdkl.ncs.android.middleware.tcp.channel.VoiceUtil;
|
|
import com.wdkl.ncs.android.middleware.tcp.dto.TcpModel;
|
|
import com.wdkl.ncs.android.middleware.tcp.dto.TcpModel;
|
|
import com.wdkl.ncs.android.middleware.tcp.enums.TcpAction;
|
|
import com.wdkl.ncs.android.middleware.tcp.enums.TcpAction;
|
|
import com.wdkl.ncs.android.middleware.tcp.enums.TcpType;
|
|
import com.wdkl.ncs.android.middleware.tcp.enums.TcpType;
|
|
|
|
+import com.wdkl.ncs.android.middleware.utils.MessageEvent;
|
|
|
|
+
|
|
|
|
+import org.greenrobot.eventbus.Subscribe;
|
|
|
|
+import org.greenrobot.eventbus.ThreadMode;
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
@@ -42,6 +48,7 @@ public class RTCVoipAudioActivity extends BaseActivity implements View.OnClickLi
|
|
private Chronometer timer;
|
|
private Chronometer timer;
|
|
|
|
|
|
private TextView bao_mother_name_tv;
|
|
private TextView bao_mother_name_tv;
|
|
|
|
+ private TextView voiceStatus;
|
|
|
|
|
|
public static String ACTION = "ACTION";
|
|
public static String ACTION = "ACTION";
|
|
public static String RING = "RING";
|
|
public static String RING = "RING";
|
|
@@ -90,6 +97,7 @@ public class RTCVoipAudioActivity extends BaseActivity implements View.OnClickLi
|
|
timer = (Chronometer) findViewById(R.id.call_duration_tv);
|
|
timer = (Chronometer) findViewById(R.id.call_duration_tv);
|
|
|
|
|
|
bao_mother_name_tv = (TextView) findViewById(R.id.bao_mother_name_tv);
|
|
bao_mother_name_tv = (TextView) findViewById(R.id.bao_mother_name_tv);
|
|
|
|
+ voiceStatus = (TextView)findViewById(R.id.voice_status);
|
|
|
|
|
|
// ((TextView)findViewById(com.starrtc.demo.R.id.targetid_text)).setText(targetId);
|
|
// ((TextView)findViewById(com.starrtc.demo.R.id.targetid_text)).setText(targetId);
|
|
// ((ImageView)findViewById(com.starrtc.demo.R.id.head_img)).setImageResource(MLOC.getHeadImage(RTCVoipAudioActivity.this,targetId));
|
|
// ((ImageView)findViewById(com.starrtc.demo.R.id.head_img)).setImageResource(MLOC.getHeadImage(RTCVoipAudioActivity.this,targetId));
|
|
@@ -103,13 +111,8 @@ public class RTCVoipAudioActivity extends BaseActivity implements View.OnClickLi
|
|
// voice_time_tv.setVisibility(View.GONE);
|
|
// voice_time_tv.setVisibility(View.GONE);
|
|
|
|
|
|
if (tcpModel.getType() == TcpType.VOICE) {
|
|
if (tcpModel.getType() == TcpType.VOICE) {
|
|
- if(tcpModel.getAction() == TcpAction.VoiceAction.CALL) {
|
|
|
|
- InteractionVO interactionVO = new Gson().fromJson(tcpModel.getData().toString(), InteractionVO.class);
|
|
|
|
- bao_mother_name_tv.setText(interactionVO.getFromMemberName());
|
|
|
|
- }else if(tcpModel.getAction() == TcpAction.VoiceAction.SUCCESS){
|
|
|
|
- InteractionVO interactionVO = (InteractionVO) tcpModel.getData();
|
|
|
|
- bao_mother_name_tv.setText(interactionVO.getToMemberName());
|
|
|
|
- }
|
|
|
|
|
|
+ InteractionVO interactionVO = new Gson().fromJson(tcpModel.getData().toString(), InteractionVO.class);
|
|
|
|
+ bao_mother_name_tv.setText(interactionVO.getToMemberName());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -372,4 +375,27 @@ public class RTCVoipAudioActivity extends BaseActivity implements View.OnClickLi
|
|
}
|
|
}
|
|
RTCVoipAudioActivity.this.finish();
|
|
RTCVoipAudioActivity.this.finish();
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Subscribe(threadMode = ThreadMode.MAIN)
|
|
|
|
+ void onMoonEvent(MessageEvent messageEvent) {
|
|
|
|
+ if (messageEvent.getType() == 2){
|
|
|
|
+ TcpModel tcpModel = (TcpModel) messageEvent.getMessage();
|
|
|
|
+
|
|
|
|
+ if (tcpModel.getAction() == TcpAction.VoiceAction.ACCEPT){
|
|
|
|
+ Log.i(TAG,"对方接听电话啦");
|
|
|
|
+ //data 是 InteractionVO
|
|
|
|
+ Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create();
|
|
|
|
+ InteractionVO interactionVO = gson.fromJson(tcpModel.getData().toString(), InteractionVO.class);
|
|
|
|
+
|
|
|
|
+ audioCall();
|
|
|
|
+
|
|
|
|
+ } else if (tcpModel.getAction() == TcpAction.VoiceAction.REJECT){
|
|
|
|
+ voiceStatus.setText("对方拒绝接听");
|
|
|
|
+ } else if (tcpModel.getAction() == TcpAction.VoiceAction.CALLING){
|
|
|
|
+ voiceStatus.setText("对方正在通话");
|
|
|
|
+ } else if (tcpModel.getAction() == TcpAction.VoiceAction.FAILED){
|
|
|
|
+ voiceStatus.setText("对方拒绝");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|