diff options
| author | Melonai <einebeere@gmail.com> | 2021-08-16 18:17:06 +0200 |
|---|---|---|
| committer | Melonai <einebeere@gmail.com> | 2021-08-16 18:17:06 +0200 |
| commit | a7af012b92f0dfd90cc3eb570e03144016646180 (patch) | |
| tree | f73d402f1d74459195967928346d26ad195a2a73 /assets/src | |
| parent | 877f2aa4cc5890214f0c58813c4b498f8be1236d (diff) | |
| download | rook-a7af012b92f0dfd90cc3eb570e03144016646180.tar.zst rook-a7af012b92f0dfd90cc3eb570e03144016646180.zip | |
Ability to pass request info through pipeline
Diffstat (limited to 'assets/src')
| -rw-r--r-- | assets/src/components/share/Request.svelte | 6 | ||||
| -rw-r--r-- | assets/src/models/incoming_request.ts | 16 | ||||
| -rw-r--r-- | assets/src/network/channel/messages/messages.ts | 3 | ||||
| -rw-r--r-- | assets/src/network/channel/share_connection.ts | 7 | ||||
| -rw-r--r-- | assets/src/network/channel/socket.ts | 1 |
5 files changed, 28 insertions, 5 deletions
diff --git a/assets/src/components/share/Request.svelte b/assets/src/components/share/Request.svelte index a5e77e7..e554bfe 100644 --- a/assets/src/components/share/Request.svelte +++ b/assets/src/components/share/Request.svelte @@ -36,9 +36,9 @@ {/if} <li>Requested at {time}</li> - <li class="ip">{request.info.token}</li> - <li>Trusowo, Russia</li> - <li>Firefox 89</li> + <li class="ip">{request.info.ip}</li> + <li>{request.info.location}</li> + <li>{request.info.client}</li> {#if $state === IncomingRequestState.IN_FLIGHT} Transferring... diff --git a/assets/src/models/incoming_request.ts b/assets/src/models/incoming_request.ts index 8a8d7fb..4af1e02 100644 --- a/assets/src/models/incoming_request.ts +++ b/assets/src/models/incoming_request.ts @@ -18,6 +18,11 @@ export enum IncomingRequestState { // Identifying information about the requestor export type IncomingRequestInfo = { token: string; + + ip: string; + location: string; + client: string; + receivedAt: Date; }; @@ -31,9 +36,18 @@ export type IncomingRequest = { }; // Create a model for a new incoming request -export function newIncomingRequest(token: string): IncomingRequest { +export function newIncomingRequest( + token: string, + ip: string, + location: string, + client: string +): IncomingRequest { const info = { token, + ip, + location, + client, + receivedAt: new Date(), }; diff --git a/assets/src/network/channel/messages/messages.ts b/assets/src/network/channel/messages/messages.ts index 67f70ac..24380ae 100644 --- a/assets/src/network/channel/messages/messages.ts +++ b/assets/src/network/channel/messages/messages.ts @@ -17,6 +17,9 @@ export type ShareMessage = export type NewRequestMessage = { event_name: "new_request"; + ip: string; + location: string; + client: string; token: string; }; diff --git a/assets/src/network/channel/share_connection.ts b/assets/src/network/channel/share_connection.ts index 1bb4f14..bdc2b8e 100644 --- a/assets/src/network/channel/share_connection.ts +++ b/assets/src/network/channel/share_connection.ts @@ -35,7 +35,12 @@ export async function startShareConnection() { function onNewRequest(message: NewRequestMessage) { const token = message.token; - const request = newIncomingRequest(token); + const request = newIncomingRequest( + token, + message.ip, + message.location, + message.client + ); requests.addRequest(request); const unregister = onWithToken( diff --git a/assets/src/network/channel/socket.ts b/assets/src/network/channel/socket.ts index 7d14842..9d95577 100644 --- a/assets/src/network/channel/socket.ts +++ b/assets/src/network/channel/socket.ts @@ -39,6 +39,7 @@ export function joinRequestChannel( ): Promise<Channel> { return joinChannel(socket, `request:${request_token}`, { share: share_token, + user_agent: navigator.userAgent, }); } |
