Add handleCreatePairing
This commit is contained in:
parent
48194dd2de
commit
8a0a8e2df2
@ -207,19 +207,8 @@ export async function registerAllListeners() {
|
|||||||
cancelText: 'Annuler'
|
cancelText: 'Annuler'
|
||||||
}, true);
|
}, true);
|
||||||
|
|
||||||
try {
|
if (!result) {
|
||||||
if (!result) {
|
const errorMsg = 'Failed to pair device: User refused to link';
|
||||||
throw new Error('User refused to link');
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!services.isPaired()) {
|
|
||||||
// New device - do pairing process
|
|
||||||
console.log('🚀 The device is not paired');
|
|
||||||
await prepareAndSendPairingTx();
|
|
||||||
await services.confirmPairing();
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
const errorMsg = `Failed to pair device: ${error}`;
|
|
||||||
errorResponse(errorMsg, event.origin, event.data.messageId);
|
errorResponse(errorMsg, event.origin, event.data.messageId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -241,6 +230,47 @@ export async function registerAllListeners() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const handleCreatePairing = async (event: MessageEvent) => {
|
||||||
|
if (event.data.type !== MessageType.CREATE_PAIRING) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (services.isPaired()) {
|
||||||
|
const errorMsg = 'Device already paired';
|
||||||
|
errorResponse(errorMsg, event.origin, event.data.messageId);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
const { accessToken } = event.data;
|
||||||
|
|
||||||
|
if (!accessToken || !(await tokenService.validateToken(accessToken, event.origin))) {
|
||||||
|
throw new Error('Invalid or expired session token');
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log('🚀 Starting pairing process');
|
||||||
|
await prepareAndSendPairingTx();
|
||||||
|
await services.confirmPairing();
|
||||||
|
|
||||||
|
const pairingId = services.getPairingProcessId();
|
||||||
|
|
||||||
|
if (!pairingId) {
|
||||||
|
throw new Error('Failed to get pairing process id');
|
||||||
|
}
|
||||||
|
|
||||||
|
// Send success response
|
||||||
|
const successMsg = {
|
||||||
|
type: MessageType.PAIRING_CREATED,
|
||||||
|
pairingId,
|
||||||
|
messageId: event.data.messageId
|
||||||
|
};
|
||||||
|
window.parent.postMessage(successMsg, event.origin);
|
||||||
|
} catch (e) {
|
||||||
|
const errorMsg = `Failed to create pairing process: ${e}`;
|
||||||
|
errorResponse(errorMsg, event.origin, event.data.messageId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const handleGetMyProcesses = async (event: MessageEvent) => {
|
const handleGetMyProcesses = async (event: MessageEvent) => {
|
||||||
if (event.data.type !== MessageType.GET_MY_PROCESSES) {
|
if (event.data.type !== MessageType.GET_MY_PROCESSES) {
|
||||||
return;
|
return;
|
||||||
@ -814,6 +844,9 @@ export async function registerAllListeners() {
|
|||||||
case MessageType.REQUEST_LINK:
|
case MessageType.REQUEST_LINK:
|
||||||
await handleRequestLink(event);
|
await handleRequestLink(event);
|
||||||
break;
|
break;
|
||||||
|
case MessageType.CREATE_PAIRING:
|
||||||
|
await handleCreatePairing(event);
|
||||||
|
break;
|
||||||
case MessageType.GET_MY_PROCESSES:
|
case MessageType.GET_MY_PROCESSES:
|
||||||
await handleGetMyProcesses(event);
|
await handleGetMyProcesses(event);
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user