update 机器人

This commit is contained in:
zlzw 2022-12-22 09:58:43 +08:00
parent 4dcb12eb4f
commit 7639a70887
7 changed files with 179 additions and 20 deletions

View File

@ -299,7 +299,7 @@
<string name="beautify_hip_slim">Hip</string>
<string name="beautify_head_slim">Head shrink</string>
<string name="beautify_leg_thin_slim">Thin leg</string>
<string name="toast_not_detect_body">No body tracking</string>
<string name="toast_not_detect_body">No message tracking</string>
<string name="pta_human_full_body">Body driver</string>
<string name="pta_human_half_body">Bust driver</string>

View File

@ -1,19 +1,23 @@
package com.yunbao.common.bean;
import com.google.gson.annotations.SerializedName;
import com.yunbao.common.bean.BaseModel;
import androidx.annotation.NonNull;
import com.google.gson.annotations.SerializedName;
/**
* 机器人bean
*/
public class LiveAiRobotBean extends BaseModel {
@SerializedName("ai_name")
private String name;
@SerializedName("ai_state")
private int status;
private int status;//1= 0=
@SerializedName("ai_time")
private int time;
@SerializedName("ai_sayhi")
private int autoSeyHiNumber;
private int autoSeyHiNumber;// 自动打招呼已配置数量
@SerializedName("ai_gz")
private int autoRequestFollowNumber;
private int autoRequestFollowNumber;//自动求关注已配置数量
public LiveAiRobotBean() {
}
@ -58,9 +62,24 @@ public class LiveAiRobotBean extends BaseModel {
this.autoRequestFollowNumber = autoRequestFollowNumber;
}
public static class Body {
public static final int TYPE_SAY_HI=1;
public static final int TYPE_FOLLOW=3;
@NonNull
@Override
public String toString() {
return "LiveAiRobotBean{" +
"name='" + name + '\'' +
", status=" + status +
", time=" + time +
", autoSeyHiNumber=" + autoSeyHiNumber +
", autoRequestFollowNumber=" + autoRequestFollowNumber +
'}';
}
/**
* 机器人消息
*/
public static class Message {
public static final int TYPE_SAY_HI=1;//自动打招呼
public static final int TYPE_FOLLOW=3;//自动求关注
@SerializedName("id")
private int id;
@SerializedName("uid")
@ -70,7 +89,7 @@ public class LiveAiRobotBean extends BaseModel {
@SerializedName("content")
private String content;
public Body() {
public Message() {
}
public int getId() {
@ -104,5 +123,16 @@ public class LiveAiRobotBean extends BaseModel {
public void setContent(String content) {
this.content = content;
}
@NonNull
@Override
public String toString() {
return "Message{" +
"id=" + id +
", uid=" + uid +
", type=" + type +
", content='" + content + '\'' +
'}';
}
}
}

View File

@ -496,7 +496,7 @@ public interface PDLiveApi {
* @param type 1(自定义打招呼) 3(自定义求关注)
*/
@GET("/api/public/?service=Live.getAiAutomaticSpeech")
Observable<ResponseModel<List<LiveAiRobotBean.Body>>> getAiAutomaticSpeech(
Observable<ResponseModel<List<LiveAiRobotBean.Message>>> getAiAutomaticSpeech(
@Query("type") String type
);

View File

@ -22,7 +22,6 @@ import com.yunbao.common.bean.NobleTrumpetModel;
import com.yunbao.common.bean.PkRankBean;
import com.yunbao.common.bean.PrankGiftBean;
import com.yunbao.common.bean.PrankHttpTurntableBean;
import com.yunbao.common.bean.PrankTurntableBean;
import com.yunbao.common.bean.RandomPkUserBean;
import com.yunbao.common.bean.RankPkInfoBean;
import com.yunbao.common.bean.SetAttentsModel;
@ -40,7 +39,6 @@ import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
import io.reactivex.functions.Consumer;
import io.reactivex.schedulers.Schedulers;
import retrofit2.http.Query;
/**
@ -953,7 +951,7 @@ public class LiveNetManager {
}).isDisposed();
}
public void getAiRobotBody(int type, HttpCallback<List<LiveAiRobotBean.Body>> callback) {
public void getAiRobotBody(int type, HttpCallback<List<LiveAiRobotBean.Message>> callback) {
API.get().pdLiveApi(mContext)
.getAiAutomaticSpeech(type + "")
.subscribeOn(Schedulers.io())

View File

@ -2,23 +2,29 @@ package com.yunbao.live.dialog;
import android.app.ActionBar;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import com.yunbao.common.bean.LiveAiRobotBean;
import com.yunbao.common.dialog.AbsDialogFragment;
import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.http.live.LiveNetManager;
import com.yunbao.common.utils.DpUtil;
import com.yunbao.live.R;
import androidx.annotation.Nullable;
import java.util.List;
/**
* 机器人设置
*/
public class LiveRobotSettingDialogFragment extends AbsDialogFragment implements View.OnClickListener {
private static String TAG = "AI机器人";
@Override
protected int getLayoutId() {
@ -43,10 +49,64 @@ public class LiveRobotSettingDialogFragment extends AbsDialogFragment implements
params.gravity = Gravity.BOTTOM;
window.setAttributes(params);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
initDate();
}
private void initDate() {
LiveNetManager.get(mContext)
.getAiRobotStatus(new HttpCallback<LiveAiRobotBean>() {
@Override
public void onSuccess(LiveAiRobotBean data) {
Log.i(TAG, "onSuccess: " + data.toString());
initListType1();
}
@Override
public void onError(String error) {
}
});
}
private void initListType1() {
LiveNetManager.get(mContext)
.getAiRobotBody(LiveAiRobotBean.Message.TYPE_SAY_HI, new HttpCallback<List<LiveAiRobotBean.Message>>() {
@Override
public void onSuccess(List<LiveAiRobotBean.Message> data) {
Log.i(TAG, "onSuccess: " + data.size());
for (LiveAiRobotBean.Message message : data) {
Log.i(TAG, "onSuccess: message=" + message.toString());
}
initListType2();
}
@Override
public void onError(String error) {
}
});
}
private void initListType2() {
LiveNetManager.get(mContext)
.getAiRobotBody(LiveAiRobotBean.Message.TYPE_FOLLOW, new HttpCallback<List<LiveAiRobotBean.Message>>() {
@Override
public void onSuccess(List<LiveAiRobotBean.Message> data) {
Log.i(TAG, "onSuccess: " + data.size());
for (LiveAiRobotBean.Message message : data) {
Log.i(TAG, "onSuccess: message=" + message.toString());
}
}
@Override
public void onError(String error) {
}
});
}
@Override

View File

@ -1,11 +1,75 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="400dp"
android:background="#000">
<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:layout_marginTop="14dp"
android:text="自動發言機器人設置"
android:textColor="#CCCCCC"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:id="@+id/robot_status"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/border_translucent">
android:layout_marginTop="18dp"
android:orientation="horizontal"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView6">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:layout_weight="1"
android:text="機器人開關"
android:textColor="#FFF" />
<ImageView
android:layout_width="46dp"
android:layout_height="23dp"
android:layout_marginEnd="10dp"
app:srcCompat="@mipmap/special_icon_off" />
</LinearLayout>
<LinearLayout
android:id="@+id/robot_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="18dp"
android:orientation="horizontal"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/robot_status">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:layout_weight="1"
android:text="機器人開關"
android:textColor="#FFF" />
<TextView
android:id="@+id/textView7"
android:layout_width="96dp"
android:layout_height="27dp"
android:layout_marginEnd="10dp"
android:background="@drawable/bg_prank_coin"
android:textColor="#FFF"
android:gravity="center"
android:text="TextView" />
</LinearLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -7,7 +7,9 @@ import android.widget.ImageView;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.utils.WordUtil;
import com.yunbao.live.dialog.LiveRobotSettingDialogFragment;
import com.yunbao.main.R;
import com.yunbao.main.activity.MainActivity;
/**
* Created by cxf on 2018/9/22.
@ -36,6 +38,11 @@ public class MainHomeViewHolder extends AbsMainHomeParentViewHolder {
img_trophy = (ImageView) findViewById(R.id.img_trophy);
ImgLoader.display(mContext, "https://downs.yaoulive.com/gif_trophy.gif", img_trophy);
img_trophy.setOnClickListener(v -> {
LiveRobotSettingDialogFragment fragment=new LiveRobotSettingDialogFragment();
fragment.show(((MainActivity)mContext).getSupportFragmentManager(),"LiveRobotSettingDialogFragment");
});
}
@Override