diff --git a/app/providers/CallProvider/CallProvider.tsx b/app/providers/CallProvider/CallProvider.tsx index abea674..a73a575 100644 --- a/app/providers/CallProvider/CallProvider.tsx +++ b/app/providers/CallProvider/CallProvider.tsx @@ -311,8 +311,13 @@ export function CallProvider(props : CallProviderProps) { if(roleRef.current == CallRole.CALLER){ /** - * Вызывающий уже отправил ключ + * Вызывающий уже отправил ключ, сессия сгенерирована, сообщаем серверу что звонок активен */ + const activeSignal = new PacketSignalPeer(); + activeSignal.setSrc(publicKey); + activeSignal.setDst(activeCall); + activeSignal.setSignalType(SignalType.ACTIVE); + send(activeSignal); return; } const signalPacket = new PacketSignalPeer(); diff --git a/app/providers/ProtocolProvider/protocol/packets/packet.signal.peer.ts b/app/providers/ProtocolProvider/protocol/packets/packet.signal.peer.ts index d94c418..d7354b7 100644 --- a/app/providers/ProtocolProvider/protocol/packets/packet.signal.peer.ts +++ b/app/providers/ProtocolProvider/protocol/packets/packet.signal.peer.ts @@ -45,7 +45,8 @@ export class PacketSignalPeer extends Packet { this.signalType = stream.readInt8(); if(this.signalType == SignalType.END_CALL_BECAUSE_BUSY || this.signalType == SignalType.RINGING_TIMEOUT - || this.signalType == SignalType.END_CALL_BECAUSE_PEER_DISCONNECTED){ + || this.signalType == SignalType.END_CALL_BECAUSE_PEER_DISCONNECTED + || this.signalType == SignalType.ACTIVE){ return; } this.src = stream.readString(); @@ -65,7 +66,8 @@ export class PacketSignalPeer extends Packet { stream.writeInt8(this.signalType); if(this.signalType == SignalType.END_CALL_BECAUSE_BUSY || this.signalType == SignalType.RINGING_TIMEOUT - || this.signalType == SignalType.END_CALL_BECAUSE_PEER_DISCONNECTED){ + || this.signalType == SignalType.END_CALL_BECAUSE_PEER_DISCONNECTED + || this.signalType == SignalType.ACTIVE){ return stream; } stream.writeString(this.src);