diff --git a/lib/tunnelbroker/tunnelbroker-context.js b/lib/tunnelbroker/tunnelbroker-context.js --- a/lib/tunnelbroker/tunnelbroker-context.js +++ b/lib/tunnelbroker/tunnelbroker-context.js @@ -50,7 +50,10 @@ type Promises = { [clientMessageID: string]: PromiseCallbacks }; type TunnelbrokerContextType = { - +sendMessage: (message: TunnelbrokerClientMessageToDevice) => Promise, + +sendMessage: ( + message: TunnelbrokerClientMessageToDevice, + messageID: ?string, + ) => Promise, +addListener: (listener: TunnelbrokerSocketListener) => void, +removeListener: (listener: TunnelbrokerSocketListener) => void, +connected: boolean, @@ -383,9 +386,10 @@ const sendMessage: ( message: TunnelbrokerClientMessageToDevice, + messageID: ?string, ) => Promise = React.useCallback( - (message: TunnelbrokerClientMessageToDevice) => { - const clientMessageID = uuid.v4(); + (message: TunnelbrokerClientMessageToDevice, messageID: ?string) => { + const clientMessageID = messageID ?? uuid.v4(); const messageToDevice: MessageToDeviceRequest = { type: tunnelbrokerMessageTypes.MESSAGE_TO_DEVICE_REQUEST, clientMessageID,