Receiving Teleported Funds
Oracle Attestations
Once your transaction has been sent on the source domain, you will need to collect oracle attestations for your teleportation. Grab the transaction hash returned by initTeleport
and call TeleportBridge.getAttestations. This function will return a Promise containing both the attestations and the TeleportGUID object needed to complete the call.
Keep in mind that in the event of the oracles not responding, or not attesting to this transaction, an escape hatch is built into the system. Users can always fall back to the rollup bridge contract. We will touch on this in Escape Hatch: Minting without Oracles
Minting with Attestations
Once the attestations have been collected, you can initiate minting on the destination domain by calling TeleportBridge.relayMintWithOracles. A transaction hash will be returned for this call, which, after being accepted by the network indicates that the minting has been completed successfully.
relayMintWithOracles
selects a default relayer for the selected combination of source and destination domains.
Bypassing relay services
Using relay services is the main focus of Teleport, but users can also mint DAI on the destination domain without making use of relayers.
To achieve this, call TeleportBridge.mintWithOracles. By doing this, your users miss out on other features enabled by the use of Relayers, such as adding extra calls to theit teleportation. See more about this on the next chapter.