about summary refs log tree commit diff
path: root/assets/src/network/channel/request.ts
blob: f5145fb90410eab94155d34c4fa8b11de2650f17 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import getShareToken from "../../utils/getShareToken";
import { answer } from "../transfer/transfer";
import { Connection, on } from "./connection";
import type { RequestAcceptedMessage } from "./messages/messages";
import { joinRequestChannel } from "./socket";

export async function startRequest(connection: Connection) {
    const requestChannel = await joinRequestChannel(
        connection.socket,
        connection.token,
        getShareToken()
    );
    connection.channel = requestChannel;

    on("request_accepted", onRequestAccepted);
}

async function onRequestAccepted(message: RequestAcceptedMessage) {
    await answer(message);
}