rename com.imyeyu.server to com.imyeyu.api
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
package com.imyeyu.api.modules.music.bean;
|
||||
|
||||
import io.netty.channel.ChannelHandlerContext;
|
||||
import lombok.Data;
|
||||
import com.imyeyu.utils.Time;
|
||||
|
||||
/**
|
||||
* 频道绑定
|
||||
*
|
||||
* @author 夜雨
|
||||
* @version 2023-02-07 14:43
|
||||
*/
|
||||
@Data
|
||||
public class ChannelBinding {
|
||||
|
||||
/** 与受控端连接频道 */
|
||||
private ChannelHandlerContext playerChannel;
|
||||
|
||||
/** 与控制端连接频道 */
|
||||
private ChannelHandlerContext controllerChannel;
|
||||
|
||||
private long lastActiviedAt = -1;
|
||||
|
||||
/** @return true 为超过 1 分钟未发生通信 */
|
||||
public boolean isTimeout() {
|
||||
return Time.M < Time.now() - lastActiviedAt;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.imyeyu.api.modules.music.bean.pkg;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 基本数据包
|
||||
*
|
||||
* @author 夜雨
|
||||
* @version 2023-02-08 11:14
|
||||
*/
|
||||
@Data
|
||||
abstract class BasePackage {
|
||||
|
||||
/**
|
||||
* 播放模式
|
||||
*
|
||||
* @author 夜雨
|
||||
* @version 2023-02-08 14:12
|
||||
*/
|
||||
public enum Type {
|
||||
|
||||
/** 单曲循环 */
|
||||
REPEAT,
|
||||
|
||||
/** 队列循环 */
|
||||
REPEAT_PLAY_LIST,
|
||||
|
||||
/** 队后单循 */
|
||||
REPEAT_PLAY_LIST_END,
|
||||
|
||||
/** 列表循环 */
|
||||
REPEAT_FILE_LIST
|
||||
}
|
||||
|
||||
/** 频道 */
|
||||
private String channelID;
|
||||
|
||||
/** 播放模式 */
|
||||
private Type type;
|
||||
|
||||
/** 音量 */
|
||||
private double volume;
|
||||
|
||||
/** 包生成时间 */
|
||||
private Long createdAt;
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.imyeyu.api.modules.music.bean.pkg;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 控制端数据包,由控制器发出至受控端
|
||||
*
|
||||
* @author 夜雨
|
||||
* @version 2023-02-08 11:15
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class ControllerPackage extends BasePackage {
|
||||
|
||||
/**
|
||||
* @author 夜雨
|
||||
* @version 2023-02-07 11:37
|
||||
*/
|
||||
public enum Action {
|
||||
|
||||
/** 上一首 */
|
||||
PREVIOUS,
|
||||
|
||||
/** 切换播放状态 */
|
||||
TOGGLE,
|
||||
|
||||
/** 下一首 */
|
||||
NEXT,
|
||||
|
||||
/** 随机列表 */
|
||||
RANDOM,
|
||||
|
||||
/** 音量调整 */
|
||||
VOLUME,
|
||||
|
||||
/** 播放模式调整 */
|
||||
TYPE
|
||||
}
|
||||
|
||||
/** 控制动作 */
|
||||
private Action action;
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.imyeyu.api.modules.music.bean.pkg;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 受控端数据包,推送播放器状态到控制器
|
||||
*
|
||||
* @author 夜雨
|
||||
* @version 2023-02-08 11:15
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class PlayerPackage extends BasePackage {
|
||||
|
||||
/** 当前播放 */
|
||||
private String nowPlaying;
|
||||
|
||||
/** 下一首播放 */
|
||||
private String nextPlay;
|
||||
}
|
||||
Reference in New Issue
Block a user