🥋
Dojo
Inglés
Inglés
  • Dojo
    • 🔎Relevant content
  • App Store
    • Create an Apple Developer Account
    • Create Organizational Account on Apple Developer
    • Upload an App to the App Store
  • Classroom
    • Create a class in Classroom
    • Create and add topics to a Classroom class
    • Add students or teachers in Classroom
    • Assign trainings in Classroom
    • Join a Classroom class as a student
  • Docker
    • Install Docker
  • Git
    • Do a 3-way merge in git
    • Do a Fast Forward merge in git
    • Do a git revert
    • Resolve merge conflicts using the command line
    • Use git add
    • Use git cherry pick
    • Use git rm
    • Use git stash
  • Git Graph
    • Install Git Graph
    • See repository graph
    • Filter branches
    • Merge branch
  • GitBook
    • Create Dojo content in GitBook
    • Create a space in GitBook
    • Delete a space in GitBook
    • Duplicate a space in GitBook
    • Move a space in GitBook
  • GitLab
    • Create a milestone in GitLab
    • View a milestone in GitLab
    • Close a milestone in GitLab
    • Create a repository in GitLab
    • Import issues to GitLab
    • Make a bulk in GitLab
    • Setup two factor authentication for GitLab
    • Create a task in GitLab
    • Viewing tasks in GitLab
    • Close tasks in GitLab
  • Gmail
    • Create a Gmail signature
    • Create an email template in Gmail
    • Send emails with different aliases or groupse
    • Get permissions to send and receive emails from an alias or group
  • HUGO
    • Organize Markdown Content
  • Java
    • Install Java with SDKMan
  • Jira
    • Use shortcuts in jira
    • Use basic filters in jira
    • Use advanced filters in jira
    • Use filters in jira projects
  • Kubernetes
    • Deploy a microservice in Kubernetes
    • See Kubernetes Pod Logs
    • Run a pod with images from a private repository
    • Use config maps to configure a deployment
    • Use secrets to configure a deployment
    • Communicate two microservices in a Kubernetes cluster
    • Create an Ingress Controller on a Cluster
    • Configure Kubernetes Horizontal Pod Autoscaler
    • Connect a container to Google Storage
  • Make
    • Install Make
  • Minikube
    • Install Minikube
    • Manage Cluster With Minikube
    • Use Minikube to Configure a Kubernetes Cluster
  • MySQL
    • Dump a database in MySQL
    • Install MySQL with Docker container
  • Node.js
    • Install Gray-matter
    • Use Gray-matter
    • Read File in Node.js
  • Open SSH
    • Generate SSH private-public key pair
  • Play Store
    • Upload an App to the Google Play Store
    • Create organizational account in Play store
  • Screen Recorder
    • Loom
      • Install Loom
      • Record with Loom
  • Tezos
    • Deploy a smart contract
    • Implement a NFT contract
    • Interact with a smart contract with Taquito
  • Telegram
    • Forward messages to multiple users
  • VaultWarden
    • Create an account
    • How can I create a password?
    • Sharing credentials with external parties
  • Video editor
    • HandBrake
      • Change the format of a video in HandBrake
    • iMovie
      • Edit video in iMovie
  • Visual Studio Code
    • Install visual studio code
    • Install extensions in vscode
  • VueJS
    • Create a project with Vue
    • Install VueCLI
  • YouTube
    • Upload a video to YouTube
  • Zoho
    • Share access from zoho
    • Remove access from zoho
    • Login to the dojo base with a shared access by zoho
Powered by GitBook
On this page
  • Install Taquito
  • Import the library
  • Sign configuration
  • Interact with the smart contract
  • Reference Links
  1. Tezos

Interact with a smart contract with Taquito

PreviousImplement a NFT contractNextTelegram

Last updated 2 years ago

Install Taquito

npm install @taquito/taquito
npm install @taquito/signer

Import the library

import { TezosToolkit } from '@taquito/taquito';
import { InMemorySigner} from '@taquito/signer';

Instantiate the library with the same contracts rpc

const Tezos = new TezosToolkit('https://YOUR_PREFERRED_RPC_URL');

Maybe you have an error and need to install 'stream-browserify'.

npm install 'stream-browserify'

and add "stream" to vue.config.js file.

Sign configuration

You get your private key from your wallet, in settings.

Tezos.setProvider({
  signer: new InMemorySigner('YOUR_PRIVATE_KEY'),
});

Interact with the smart contract

You need the contract address. Example: KT1NvFHBQv3Zkv3wmWYqYpWWR8rMdd5pUG14 .

Send a method

Tezos.contract
  .at('YOUR CONTRACT ADDRESS')
  .then((contract) => {
    return contract.methods.YOUR_METHOD(PARAMS).send();
  });

Get a op hash confimation

Tezos.contract
  .at('YOUR CONTRACT ADDRESS')
  .then((contract) => {
    return contract.methods.YOUR_METHOD(PARAMS).send();
  })
  .then((op) => {
    console.log(`Waiting for ${op.hash} to be confirmed...`);
    return op.confirmation(1).then(() => op.hash);
  });

Catch error

Tezos.contract
  .at('YOUR CONTRACT ADDRESS')
  .then((c) => {
    return c.methods.YOUR_METHOD(PARAMS).send();
  })
  .then((op) => {
    console.log(`Waiting for ${op.hash} to be confirmed...`);
    return op.confirmation(1).then(() => op.hash);
  })
  .then((hash) => console.log(`Operation injected: https://kathmandu.tzstats.com/${hash}`))
  .catch((error) => console.log(`Error: ${JSON.stringify(error, null, 2)}`));

Inspect the contract methods and data types

Tezos.contract
  .at('YOUR CONTRACT ADDRESS')
  .then((c) => {
    let methods = c.parameterSchema.ExtractSignatures();
    console.log(JSON.stringify(methods, null, 2));
  })
  .catch((error) => console.log(`Error: ${error}`));

Reference Links

https://opentezos.com/smart-contracts/simple-nft-contract-1/