Skip to main content

TonConnect

TonConnect is a Python library that allows you to connect to TON wallets, manage connections, handle messages, and send requests to the wallet. It provides a convenient way to interact with TON wallets and perform various operations.

Installation

To install TonConnect, you can use pip:

pip install ton-connect

Usage

TonConnect Class

The TonConnect class is responsible for managing connections to TON wallets. It provides methods to connect to a wallet, restore a connection, handle messages, start and stop listeners, and send requests to the wallet.

Initializing TonConnect

To initialize the TonConnect class, you need to provide the manifest URL and a storage instance. The manifest URL is the URL to the manifest file of your app, and the storage instance is used to store connection data. Note that the first argument to DictStorage is the user id.

from ton_connect.connector import TonConnect
from ton_connect.storage import DictBridgeStorage


manifest_url = "https://example.com/manifest.json"
storage = DictBridgeStorage("user_id")

ton_connect = TonConnect(manifest_url, storage)

Connecting to a Wallet

To connect to a wallet, you need to provide a WalletApp instance. The WalletApp class represents a wallet app and contains information such as the app name, bridge URL, and universal URL.

You can also use the TonConnect.get_wallets method to get a list of supported wallet apps.

from ton_connect.model.app.wallet import WalletApp
from ton_connect.connector import TonConnect

wallets = await TonConnect.get_wallets()
wallet = wallets[0]

connect_url = await ton_connect.connect(wallet)
print("Connect URL:", connect_url)

Restoring a Connection

To restore a connection to a wallet, you can use the restore_connection method. This method restores the connection using the stored connection data.

await ton_connect.restore_connection(wallet)

Sending Requests

The TonConnect class provides methods to send various requests to the wallet. For example, you can send a transaction request using the SendTransactionRequest class.

from ton_connect.model.app.request import SendTransactionRequest, SendTransactionMessage

request = SendTransactionRequest(
    address="0:1234567890abcdef",
    network=1,
    messages=[
        SendTransactionMessage(
            address="0:abcdef1234567890",
            amount="1000000000"
        )
    ]
)

response = await ton_connect.send(wallet.app_name, request)
print("Response:", response)

Listening for Wallet Events

The TonConnect class allows you to listen for wallet events by adding event listeners. You can add event listeners for events such as connect, disconnect, and errors.

from ton_connect.model.wallet.event import WalletEventName
from ton_connect.connector import ConnectorEvent

async def on_connect(event: ConnectorEvent):
    print("Connected:", event)

async def on_disconnect(event: ConnectorEvent):
    print("Disconnected:", event)

ton_connect.listen(WalletEventName.CONNECT, on_connect)
ton_connect.listen(WalletEventName.DISCONNECT, on_disconnect)

License

This project is licensed under the MIT License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ton_connect_async-0.1.20.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ton_connect_async-0.1.20-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file ton_connect_async-0.1.20.tar.gz.

File metadata

  • Download URL: ton_connect_async-0.1.20.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.11.1 Darwin/24.2.0

File hashes

Hashes for ton_connect_async-0.1.20.tar.gz
Algorithm Hash digest
SHA256 1cc330408be8a05b1fc4c979708c6530dae163703b2184cc65cd40b878e79301
MD5 ff4dc257fc3eca6a203a7f3cb9e0bda2
BLAKE2b-256 ac248a13f91522737971e041e613963b807cc6fc29cf8f10b4d3683966a2f03c

See more details on using hashes here.

File details

Details for the file ton_connect_async-0.1.20-py3-none-any.whl.

File metadata

  • Download URL: ton_connect_async-0.1.20-py3-none-any.whl
  • Upload date:
  • Size: 22.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.11.1 Darwin/24.2.0

File hashes

Hashes for ton_connect_async-0.1.20-py3-none-any.whl
Algorithm Hash digest
SHA256 d5296215ab28e9330e74fc071cd67b343ed1980486b971d10d1190eaf547d62e
MD5 acc649d258e960e13fe542a9b7c2185c
BLAKE2b-256 c04425684b52d0ed0c0557537f89feb3abe5d79f99d7950333e0409a712ebdb1

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.19

2 files

0.2.18

2 files

0.2.17

2 files

0.2.16

2 files

0.2.15

2 files

0.2.14

2 files

0.2.13

2 files

0.2.12

2 files

0.2.10

2 files

0.2.9

2 files

0.2.8

2 files

0.2.7

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.1

2 files

0.2

2 files

0.1.26

2 files

0.1.25

2 files

0.1.24

2 files

0.1.23

2 files

0.1.22

2 files

0.1.21

2 files

This release

0.1.20 This release

2 files

0.1.19

2 files

0.1.18

2 files

0.1.17

2 files

0.1.16

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page