Ver código fonte

feat:添加沉浸页相关视频推荐接口

zhaohaipeng 1 semana atrás
pai
commit
adb61e3970

+ 1 - 1
recommend-server-client/pom.xml

@@ -10,7 +10,7 @@
     <modelVersion>4.0.0</modelVersion>
 
     <artifactId>recommend-server-client</artifactId>
-    <version>1.1.10</version>
+    <version>1.1.11</version>
 
     <dependencies>
         <dependency>

+ 24 - 23
recommend-server-client/src/main/java/com/tzld/piaoquan/recommend/server/gen/recommend/Recommend.java

@@ -61,7 +61,7 @@ public final class Recommend {
       "\n2com/tzld/piaoquan/recommend/server/rec" +
       "ommend.proto\032\031google/protobuf/any.proto\032" +
       "/com/tzld/piaoquan/recommend/server/comm" +
-      "on.proto\"\307\005\n\020RecommendRequest\022\022\n\nrequest" +
+      "on.proto\"\376\005\n\020RecommendRequest\022\022\n\nrequest" +
       "_id\030\001 \001(\t\022\013\n\003mid\030\002 \001(\t\022\013\n\003uid\030\003 \001(\t\022\014\n\004s" +
       "ize\030\004 \001(\005\022\020\n\010app_type\030\005 \001(\005\022\021\n\tcity_code" +
       "\030\006 \001(\t\022\025\n\rprovince_code\030\007 \001(\t\022\023\n\013ab_exp_" +
@@ -77,27 +77,28 @@ public final class Recommend {
       "\t\022\024\n\014version_code\030\027 \001(\005\022\026\n\016root_source_i" +
       "d\030\030 \001(\t\022\026\n\016userShareDepth\030\031 \001(\005\022\017\n\007pageN" +
       "um\030\032 \001(\005\022\025\n\rrootSessionId\030\033 \001(\t\022)\n\nshare" +
-      "_list\030\034 \003(\0132\025.VideoActionInfoProto\032.\n\014Ev" +
-      "entIdEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\002" +
-      "8\001\"\177\n\020MachineInfoProto\022\r\n\005brand\030\001 \001(\t\022\r\n" +
-      "\005model\030\002 \001(\t\022\020\n\010platform\030\003 \001(\t\022\023\n\013sdk_ve" +
-      "rsion\030\004 \001(\t\022\016\n\006system\030\005 \001(\t\022\026\n\016wechat_ve" +
-      "rsion\030\006 \001(\t\"H\n\021RecommendResponse\022\027\n\006resu" +
-      "lt\030\001 \001(\0132\007.Result\022\032\n\005video\030\002 \003(\0132\013.Video" +
-      "Proto\"\336\001\n\nVideoProto\022\020\n\010video_id\030\001 \001(\003\022\021" +
-      "\n\trov_score\030\002 \001(\001\022\021\n\tpush_from\030\003 \001(\t\022\017\n\007" +
-      "ab_code\030\004 \001(\t\022\022\n\nsort_score\030\005 \001(\001\022\020\n\010pos" +
-      "ition\030\006 \001(\005\022\021\n\tflow_pool\030\007 \001(\t\022\027\n\017is_in_" +
-      "flow_pool\030\010 \001(\005\022\014\n\004rand\030\t \001(\001\022\'\n\017push_fr" +
-      "om_index\030\n \003(\0132\016.PushFromIndex\"1\n\rPushFr" +
-      "omIndex\022\021\n\tpush_from\030\001 \001(\t\022\r\n\005index\030\002 \003(" +
-      "\t\"4\n\024VideoActionInfoProto\022\020\n\010video_id\030\001 " +
-      "\001(\003\022\n\n\002ts\030\002 \001(\0032\212\001\n\020RecommendService\022:\n\021" +
-      "HomepageRecommend\022\021.RecommendRequest\032\022.R" +
-      "ecommendResponse\022:\n\021RelevantRecommend\022\021." +
-      "RecommendRequest\032\022.RecommendResponseB7\n0" +
-      "com.tzld.piaoquan.recommend.server.gen.r" +
-      "ecommendP\001\210\001\001b\006proto3"
+      "_list\030\034 \003(\0132\025.VideoActionInfoProto\022\030\n\020re" +
+      "quest_video_id\030\035 \001(\003\022\033\n\023current_page_sou" +
+      "rce\030\036 \001(\t\032.\n\014EventIdEntry\022\013\n\003key\030\001 \001(\t\022\r" +
+      "\n\005value\030\002 \001(\t:\0028\001\"\177\n\020MachineInfoProto\022\r\n" +
+      "\005brand\030\001 \001(\t\022\r\n\005model\030\002 \001(\t\022\020\n\010platform\030" +
+      "\003 \001(\t\022\023\n\013sdk_version\030\004 \001(\t\022\016\n\006system\030\005 \001" +
+      "(\t\022\026\n\016wechat_version\030\006 \001(\t\"H\n\021RecommendR" +
+      "esponse\022\027\n\006result\030\001 \001(\0132\007.Result\022\032\n\005vide" +
+      "o\030\002 \003(\0132\013.VideoProto\"\336\001\n\nVideoProto\022\020\n\010v" +
+      "ideo_id\030\001 \001(\003\022\021\n\trov_score\030\002 \001(\001\022\021\n\tpush" +
+      "_from\030\003 \001(\t\022\017\n\007ab_code\030\004 \001(\t\022\022\n\nsort_sco" +
+      "re\030\005 \001(\001\022\020\n\010position\030\006 \001(\005\022\021\n\tflow_pool\030" +
+      "\007 \001(\t\022\027\n\017is_in_flow_pool\030\010 \001(\005\022\014\n\004rand\030\t" +
+      " \001(\001\022\'\n\017push_from_index\030\n \003(\0132\016.PushFrom" +
+      "Index\"1\n\rPushFromIndex\022\021\n\tpush_from\030\001 \001(" +
+      "\t\022\r\n\005index\030\002 \003(\t\"4\n\024VideoActionInfoProto" +
+      "\022\020\n\010video_id\030\001 \001(\003\022\n\n\002ts\030\002 \001(\0032\212\001\n\020Recom" +
+      "mendService\022:\n\021HomepageRecommend\022\021.Recom" +
+      "mendRequest\032\022.RecommendResponse\022:\n\021Relev" +
+      "antRecommend\022\021.RecommendRequest\032\022.Recomm" +
+      "endResponseB7\n0com.tzld.piaoquan.recomme" +
+      "nd.server.gen.recommendP\001\210\001\001b\006proto3"
     };
     descriptor = com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
@@ -110,7 +111,7 @@ public final class Recommend {
     internal_static_RecommendRequest_fieldAccessorTable = new
       com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
         internal_static_RecommendRequest_descriptor,
-        new java.lang.String[] { "RequestId", "Mid", "Uid", "Size", "AppType", "CityCode", "ProvinceCode", "AbExpCode", "EventId", "VersionAuditStatus", "RecommendTraceId", "VideoId", "City", "Province", "MachineInfo", "NewExpGroup", "SessionId", "SubSessionId", "PageSource", "CategoryId", "HotSceneType", "ClientIp", "VersionCode", "RootSourceId", "UserShareDepth", "PageNum", "RootSessionId", "ShareList", });
+        new java.lang.String[] { "RequestId", "Mid", "Uid", "Size", "AppType", "CityCode", "ProvinceCode", "AbExpCode", "EventId", "VersionAuditStatus", "RecommendTraceId", "VideoId", "City", "Province", "MachineInfo", "NewExpGroup", "SessionId", "SubSessionId", "PageSource", "CategoryId", "HotSceneType", "ClientIp", "VersionCode", "RootSourceId", "UserShareDepth", "PageNum", "RootSessionId", "ShareList", "RequestVideoId", "CurrentPageSource", });
     internal_static_RecommendRequest_EventIdEntry_descriptor =
       internal_static_RecommendRequest_descriptor.getNestedTypes().get(0);
     internal_static_RecommendRequest_EventIdEntry_fieldAccessorTable = new

+ 203 - 0
recommend-server-client/src/main/java/com/tzld/piaoquan/recommend/server/gen/recommend/RecommendRequest.java

@@ -34,6 +34,7 @@ private static final long serialVersionUID = 0L;
     rootSourceId_ = "";
     rootSessionId_ = "";
     shareList_ = java.util.Collections.emptyList();
+    currentPageSource_ = "";
   }
 
   @java.lang.Override
@@ -247,6 +248,17 @@ private static final long serialVersionUID = 0L;
                 input.readMessage(com.tzld.piaoquan.recommend.server.gen.recommend.VideoActionInfoProto.parser(), extensionRegistry));
             break;
           }
+          case 232: {
+
+            requestVideoId_ = input.readInt64();
+            break;
+          }
+          case 242: {
+            java.lang.String s = input.readStringRequireUtf8();
+
+            currentPageSource_ = s;
+            break;
+          }
           default: {
             if (!parseUnknownField(
                 input, unknownFields, extensionRegistry, tag)) {
@@ -1191,6 +1203,55 @@ private static final long serialVersionUID = 0L;
     return shareList_.get(index);
   }
 
+  public static final int REQUEST_VIDEO_ID_FIELD_NUMBER = 29;
+  private long requestVideoId_;
+  /**
+   * <code>int64 request_video_id = 29;</code>
+   * @return The requestVideoId.
+   */
+  @java.lang.Override
+  public long getRequestVideoId() {
+    return requestVideoId_;
+  }
+
+  public static final int CURRENT_PAGE_SOURCE_FIELD_NUMBER = 30;
+  private volatile java.lang.Object currentPageSource_;
+  /**
+   * <code>string current_page_source = 30;</code>
+   * @return The currentPageSource.
+   */
+  @java.lang.Override
+  public java.lang.String getCurrentPageSource() {
+    java.lang.Object ref = currentPageSource_;
+    if (ref instanceof java.lang.String) {
+      return (java.lang.String) ref;
+    } else {
+      com.google.protobuf.ByteString bs = 
+          (com.google.protobuf.ByteString) ref;
+      java.lang.String s = bs.toStringUtf8();
+      currentPageSource_ = s;
+      return s;
+    }
+  }
+  /**
+   * <code>string current_page_source = 30;</code>
+   * @return The bytes for currentPageSource.
+   */
+  @java.lang.Override
+  public com.google.protobuf.ByteString
+      getCurrentPageSourceBytes() {
+    java.lang.Object ref = currentPageSource_;
+    if (ref instanceof java.lang.String) {
+      com.google.protobuf.ByteString b = 
+          com.google.protobuf.ByteString.copyFromUtf8(
+              (java.lang.String) ref);
+      currentPageSource_ = b;
+      return b;
+    } else {
+      return (com.google.protobuf.ByteString) ref;
+    }
+  }
+
   private byte memoizedIsInitialized = -1;
   @java.lang.Override
   public final boolean isInitialized() {
@@ -1292,6 +1353,12 @@ private static final long serialVersionUID = 0L;
     for (int i = 0; i < shareList_.size(); i++) {
       output.writeMessage(28, shareList_.get(i));
     }
+    if (requestVideoId_ != 0L) {
+      output.writeInt64(29, requestVideoId_);
+    }
+    if (!getCurrentPageSourceBytes().isEmpty()) {
+      com.google.protobuf.GeneratedMessageV3.writeString(output, 30, currentPageSource_);
+    }
     unknownFields.writeTo(output);
   }
 
@@ -1407,6 +1474,13 @@ private static final long serialVersionUID = 0L;
       size += com.google.protobuf.CodedOutputStream
         .computeMessageSize(28, shareList_.get(i));
     }
+    if (requestVideoId_ != 0L) {
+      size += com.google.protobuf.CodedOutputStream
+        .computeInt64Size(29, requestVideoId_);
+    }
+    if (!getCurrentPageSourceBytes().isEmpty()) {
+      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(30, currentPageSource_);
+    }
     size += unknownFields.getSerializedSize();
     memoizedSize = size;
     return size;
@@ -1481,6 +1555,10 @@ private static final long serialVersionUID = 0L;
         .equals(other.getRootSessionId())) return false;
     if (!getShareListList()
         .equals(other.getShareListList())) return false;
+    if (getRequestVideoId()
+        != other.getRequestVideoId()) return false;
+    if (!getCurrentPageSource()
+        .equals(other.getCurrentPageSource())) return false;
     if (!unknownFields.equals(other.unknownFields)) return false;
     return true;
   }
@@ -1558,6 +1636,11 @@ private static final long serialVersionUID = 0L;
       hash = (37 * hash) + SHARE_LIST_FIELD_NUMBER;
       hash = (53 * hash) + getShareListList().hashCode();
     }
+    hash = (37 * hash) + REQUEST_VIDEO_ID_FIELD_NUMBER;
+    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+        getRequestVideoId());
+    hash = (37 * hash) + CURRENT_PAGE_SOURCE_FIELD_NUMBER;
+    hash = (53 * hash) + getCurrentPageSource().hashCode();
     hash = (29 * hash) + unknownFields.hashCode();
     memoizedHashCode = hash;
     return hash;
@@ -1777,6 +1860,10 @@ private static final long serialVersionUID = 0L;
       } else {
         shareListBuilder_.clear();
       }
+      requestVideoId_ = 0L;
+
+      currentPageSource_ = "";
+
       return this;
     }
 
@@ -1849,6 +1936,8 @@ private static final long serialVersionUID = 0L;
       } else {
         result.shareList_ = shareListBuilder_.build();
       }
+      result.requestVideoId_ = requestVideoId_;
+      result.currentPageSource_ = currentPageSource_;
       onBuilt();
       return result;
     }
@@ -2026,6 +2115,13 @@ private static final long serialVersionUID = 0L;
           }
         }
       }
+      if (other.getRequestVideoId() != 0L) {
+        setRequestVideoId(other.getRequestVideoId());
+      }
+      if (!other.getCurrentPageSource().isEmpty()) {
+        currentPageSource_ = other.currentPageSource_;
+        onChanged();
+      }
       this.mergeUnknownFields(other.unknownFields);
       onChanged();
       return this;
@@ -4164,6 +4260,113 @@ private static final long serialVersionUID = 0L;
       }
       return shareListBuilder_;
     }
+
+    private long requestVideoId_ ;
+    /**
+     * <code>int64 request_video_id = 29;</code>
+     * @return The requestVideoId.
+     */
+    @java.lang.Override
+    public long getRequestVideoId() {
+      return requestVideoId_;
+    }
+    /**
+     * <code>int64 request_video_id = 29;</code>
+     * @param value The requestVideoId to set.
+     * @return This builder for chaining.
+     */
+    public Builder setRequestVideoId(long value) {
+      
+      requestVideoId_ = value;
+      onChanged();
+      return this;
+    }
+    /**
+     * <code>int64 request_video_id = 29;</code>
+     * @return This builder for chaining.
+     */
+    public Builder clearRequestVideoId() {
+      
+      requestVideoId_ = 0L;
+      onChanged();
+      return this;
+    }
+
+    private java.lang.Object currentPageSource_ = "";
+    /**
+     * <code>string current_page_source = 30;</code>
+     * @return The currentPageSource.
+     */
+    public java.lang.String getCurrentPageSource() {
+      java.lang.Object ref = currentPageSource_;
+      if (!(ref instanceof java.lang.String)) {
+        com.google.protobuf.ByteString bs =
+            (com.google.protobuf.ByteString) ref;
+        java.lang.String s = bs.toStringUtf8();
+        currentPageSource_ = s;
+        return s;
+      } else {
+        return (java.lang.String) ref;
+      }
+    }
+    /**
+     * <code>string current_page_source = 30;</code>
+     * @return The bytes for currentPageSource.
+     */
+    public com.google.protobuf.ByteString
+        getCurrentPageSourceBytes() {
+      java.lang.Object ref = currentPageSource_;
+      if (ref instanceof String) {
+        com.google.protobuf.ByteString b = 
+            com.google.protobuf.ByteString.copyFromUtf8(
+                (java.lang.String) ref);
+        currentPageSource_ = b;
+        return b;
+      } else {
+        return (com.google.protobuf.ByteString) ref;
+      }
+    }
+    /**
+     * <code>string current_page_source = 30;</code>
+     * @param value The currentPageSource to set.
+     * @return This builder for chaining.
+     */
+    public Builder setCurrentPageSource(
+        java.lang.String value) {
+      if (value == null) {
+    throw new NullPointerException();
+  }
+  
+      currentPageSource_ = value;
+      onChanged();
+      return this;
+    }
+    /**
+     * <code>string current_page_source = 30;</code>
+     * @return This builder for chaining.
+     */
+    public Builder clearCurrentPageSource() {
+      
+      currentPageSource_ = getDefaultInstance().getCurrentPageSource();
+      onChanged();
+      return this;
+    }
+    /**
+     * <code>string current_page_source = 30;</code>
+     * @param value The bytes for currentPageSource to set.
+     * @return This builder for chaining.
+     */
+    public Builder setCurrentPageSourceBytes(
+        com.google.protobuf.ByteString value) {
+      if (value == null) {
+    throw new NullPointerException();
+  }
+  checkByteStringIsUtf8(value);
+      
+      currentPageSource_ = value;
+      onChanged();
+      return this;
+    }
     @java.lang.Override
     public final Builder setUnknownFields(
         final com.google.protobuf.UnknownFieldSet unknownFields) {

+ 18 - 0
recommend-server-client/src/main/java/com/tzld/piaoquan/recommend/server/gen/recommend/RecommendRequestOrBuilder.java

@@ -360,4 +360,22 @@ public interface RecommendRequestOrBuilder extends
    */
   com.tzld.piaoquan.recommend.server.gen.recommend.VideoActionInfoProtoOrBuilder getShareListOrBuilder(
       int index);
+
+  /**
+   * <code>int64 request_video_id = 29;</code>
+   * @return The requestVideoId.
+   */
+  long getRequestVideoId();
+
+  /**
+   * <code>string current_page_source = 30;</code>
+   * @return The currentPageSource.
+   */
+  java.lang.String getCurrentPageSource();
+  /**
+   * <code>string current_page_source = 30;</code>
+   * @return The bytes for currentPageSource.
+   */
+  com.google.protobuf.ByteString
+      getCurrentPageSourceBytes();
 }

+ 2 - 0
recommend-server-client/src/main/proto/com/tzld/piaoquan/recommend/server/recommend.proto

@@ -37,6 +37,8 @@ message RecommendRequest {
   int32 pageNum = 26;
   string rootSessionId = 27;
   repeated VideoActionInfoProto share_list = 28;
+  int64 request_video_id = 29;
+  string current_page_source = 30;
 }
 
 message MachineInfoProto {

+ 1 - 1
recommend-server-service/pom.xml

@@ -175,7 +175,7 @@
         <dependency>
             <groupId>com.tzld.piaoquan</groupId>
             <artifactId>recommend-server-client</artifactId>
-            <version>1.1.10</version>
+            <version>1.1.11</version>
         </dependency>
         <dependency>
             <groupId>com.tzld.piaoquan</groupId>

+ 4 - 0
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/RecommendService.java

@@ -111,6 +111,10 @@ public class RecommendService {
         return recommend(request, 1);
     }
 
+    public RecommendResponse immerseRecommend(RecommendRequest request) {
+        return recommend(request, 2);
+    }
+
     public RecommendResponse recommend(RecommendRequest request, int recommendType) {
         try {
             timerLogMapTL.get().put("traceId", TraceUtils.currentTraceId());

+ 12 - 0
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/web/RecommendV2Controller.java

@@ -48,4 +48,16 @@ public class RecommendV2Controller {
         return result;
     }
 
+    @RequestMapping("/immerse/recommend")
+    public String immerseRecommend(@RequestBody RecommendRequest httpRequest) {
+        MDC.put("appType", String.valueOf(httpRequest.getAppType()));
+        RecommendResponse response = recommendService.immerseRecommend(httpRequest);
+        String result = "";
+        try {
+            result = ProtobufUtils.toJson(response);
+        } catch (InvalidProtocolBufferException e) {
+            log.error("immerseRecommend ProtobufUtils.toJson", e);
+        }
+        return result;
+    }
 }