Сигналинг WebRTC
This commit is contained in:
65
src/main/java/im/rosetta/packet/Packet27WebRTC.java
Normal file
65
src/main/java/im/rosetta/packet/Packet27WebRTC.java
Normal file
@@ -0,0 +1,65 @@
|
||||
package im.rosetta.packet;
|
||||
|
||||
import im.rosetta.packet.runtime.NetworkWebRTCType;
|
||||
import io.orprotocol.Stream;
|
||||
import io.orprotocol.packet.Packet;
|
||||
|
||||
public class Packet27WebRTC extends Packet {
|
||||
/**
|
||||
* SDP оффер/answer или ICE кандидат, в зависимости от типа сообщения
|
||||
*/
|
||||
private String sdpOrCandidate;
|
||||
/**
|
||||
* Тип сообщения WebRTC
|
||||
*/
|
||||
private NetworkWebRTCType type;
|
||||
|
||||
@Override
|
||||
public void read(Stream stream) {
|
||||
this.type = NetworkWebRTCType.fromCode(stream.readInt8());
|
||||
this.sdpOrCandidate = stream.readString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Stream write() {
|
||||
Stream steram = new Stream();
|
||||
steram.writeInt16(this.packetId);
|
||||
steram.writeInt8(this.type.getCode());
|
||||
steram.writeString(this.sdpOrCandidate);
|
||||
return steram;
|
||||
}
|
||||
|
||||
/**
|
||||
* Получить SDP оффер/answer или ICE кандидат, в зависимости от типа сообщения
|
||||
* @return SDP оффер/answer или ICE кандидат
|
||||
*/
|
||||
public String getSdpOrCandidate() {
|
||||
return sdpOrCandidate;
|
||||
}
|
||||
|
||||
/**
|
||||
* Получить тип сообщения WebRTC, который указывает на то, является ли это оффером, ответом на оффер или ICE кандидатом
|
||||
* @return тип сообщения WebRTC
|
||||
*/
|
||||
public NetworkWebRTCType getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
/**
|
||||
* Установить SDP оффер/answer или ICE кандидат, в зависимости от типа сообщения
|
||||
* @param sdpOrCandidate SDP оффер/answer или ICE кандидат
|
||||
*/
|
||||
public void setSdpOrCandidate(String sdpOrCandidate) {
|
||||
this.sdpOrCandidate = sdpOrCandidate;
|
||||
}
|
||||
|
||||
/**
|
||||
* Установить тип сообщения WebRTC, который указывает на то, является ли это оффером, ответом на оффер или ICE кандидатом
|
||||
* @param type тип сообщения WebRTC
|
||||
*/
|
||||
public void setType(NetworkWebRTCType type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user