diff --git a/FaceUnity/src/main/res/values/strings.xml b/FaceUnity/src/main/res/values/strings.xml index 799a50e10..e0f66a9b3 100644 --- a/FaceUnity/src/main/res/values/strings.xml +++ b/FaceUnity/src/main/res/values/strings.xml @@ -299,7 +299,7 @@ Hip Head shrink Thin leg - No body tracking + No message tracking Body driver Bust driver diff --git a/common/src/main/java/com/yunbao/common/bean/LiveAiRobotBean.java b/common/src/main/java/com/yunbao/common/bean/LiveAiRobotBean.java index d94c60bb0..44e8b9f95 100644 --- a/common/src/main/java/com/yunbao/common/bean/LiveAiRobotBean.java +++ b/common/src/main/java/com/yunbao/common/bean/LiveAiRobotBean.java @@ -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 + '\'' + + '}'; + } } } diff --git a/common/src/main/java/com/yunbao/common/http/PDLiveApi.java b/common/src/main/java/com/yunbao/common/http/PDLiveApi.java index 1427d6157..576df8487 100644 --- a/common/src/main/java/com/yunbao/common/http/PDLiveApi.java +++ b/common/src/main/java/com/yunbao/common/http/PDLiveApi.java @@ -496,7 +496,7 @@ public interface PDLiveApi { * @param type 1(自定义打招呼) 3(自定义求关注) */ @GET("/api/public/?service=Live.getAiAutomaticSpeech") - Observable>> getAiAutomaticSpeech( + Observable>> getAiAutomaticSpeech( @Query("type") String type ); diff --git a/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java b/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java index 54ee7fcf6..4e6e91a91 100644 --- a/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java +++ b/common/src/main/java/com/yunbao/common/http/live/LiveNetManager.java @@ -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> callback) { + public void getAiRobotBody(int type, HttpCallback> callback) { API.get().pdLiveApi(mContext) .getAiAutomaticSpeech(type + "") .subscribeOn(Schedulers.io()) diff --git a/live/src/main/java/com/yunbao/live/dialog/LiveRobotSettingDialogFragment.java b/live/src/main/java/com/yunbao/live/dialog/LiveRobotSettingDialogFragment.java index 5ef74897b..6f413f971 100644 --- a/live/src/main/java/com/yunbao/live/dialog/LiveRobotSettingDialogFragment.java +++ b/live/src/main/java/com/yunbao/live/dialog/LiveRobotSettingDialogFragment.java @@ -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() { + @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>() { + @Override + public void onSuccess(List 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>() { + @Override + public void onSuccess(List 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 diff --git a/live/src/main/res/layout/dialog_live_robot_setting.xml b/live/src/main/res/layout/dialog_live_robot_setting.xml index d7ba7721e..8d8001e4a 100644 --- a/live/src/main/res/layout/dialog_live_robot_setting.xml +++ b/live/src/main/res/layout/dialog_live_robot_setting.xml @@ -1,11 +1,75 @@ - + android:layout_height="400dp" + android:background="#000"> + - \ No newline at end of file + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java b/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java index 4e4e1eeec..3517a8fbd 100644 --- a/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java +++ b/main/src/main/java/com/yunbao/main/views/MainHomeViewHolder.java @@ -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