Name | kaspad-client JSON |
Version |
1.0.4
JSON |
| download |
home_page | https://kaspa.org/ |
Summary | This is a simple gRPC client for a python application which communiactes with the Kaspa node called KASPAD. Note: This module is created for the RUST version and might be not compatible with the go written node. |
upload_time | 2024-04-09 19:51:46 |
maintainer | None |
docs_url | None |
author | lAmeR1 |
requires_python | <4.0,>=3.12 |
license | None |
keywords |
kaspa
kaspad
blockchain
blockdag
kas
grpc
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
This is a simple gRPC client for a python application which communiactes with the Kaspa node called KASPAD.
The module is based on asyncio, since the Kaspa BlockDAG is unbelievable fast and also needs the support of notifications.
# Usage: see playground.py
import asyncio
from kaspad_client.modules.KaspadClient import KaspadClient
async def main():
kaspad_client = KaspadClient("127.0.0.1", 16110)
# print the info message
print(await kaspad_client.get_info())
# returns
# {'getInfoResponse': {'p2pId': 'a9728d7e-c07b-4641-936c-6c7442b819f8', 'serverVersion': '0.13.4',
# 'isUtxoIndexed': True, 'isSynced': True, 'hasNotifyCommand': True, 'hasMessageId': True,
# 'mempoolSize': '0'}, 'id': '0'}
# now let's set up some notifications
# the decorator registers an async callback function and requests the notification automatically
@kaspad_client.notify_virtual_daa_score_changed
async def received_new_daa_score(c):
print(f"The DAA score is: {c['virtualDaaScoreChangedNotification']['virtualDaaScore']}")
@kaspad_client.notify_virtual_daa_score_changed
async def received_new_daa_score2(c):
print(f"The DAA2 score is: {c['virtualDaaScoreChangedNotification']['virtualDaaScore']}")
@kaspad_client.notify_block_added
async def received_new_daa_score(c):
print(f"New Kaspa block: {c['blockAddedNotification']['block']['verboseData']['hash']}")
# wait to see some notifcations :-)
await asyncio.sleep(60)
asyncio.run(main())
# Donation
We are doing this in our free time. Please consider a donation if this helps! Thank you!
[kaspa:qrlsm9tvmak6909pr9f35g6scapz5t689nhhls54sfxx5m46sn085ajhn9hn8](https://explorer.kaspa.org/addresses/kaspa:qrlsm9tvmak6909pr9f35g6scapz5t689nhhls54sfxx5m46sn085ajhn9hn8?page=1)
Raw data
{
"_id": null,
"home_page": "https://kaspa.org/",
"name": "kaspad-client",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.12",
"maintainer_email": null,
"keywords": "kaspa, kaspad, blockchain, blockdag, kas, grpc",
"author": "lAmeR1",
"author_email": "lamer1@github.com",
"download_url": "https://files.pythonhosted.org/packages/ce/bf/fbd36bba2fc9a399fd9a1d74dfbd3d9ba304233919d6b20ef99936abb427/kaspad_client-1.0.4.tar.gz",
"platform": null,
"description": "This is a simple gRPC client for a python application which communiactes with the Kaspa node called KASPAD.\n\nThe module is based on asyncio, since the Kaspa BlockDAG is unbelievable fast and also needs the support of notifications.\n\n# Usage: see playground.py\n\n import asyncio\n\n from kaspad_client.modules.KaspadClient import KaspadClient\n \n \n async def main():\n kaspad_client = KaspadClient(\"127.0.0.1\", 16110)\n \n # print the info message\n print(await kaspad_client.get_info())\n \n # returns\n # {'getInfoResponse': {'p2pId': 'a9728d7e-c07b-4641-936c-6c7442b819f8', 'serverVersion': '0.13.4',\n # 'isUtxoIndexed': True, 'isSynced': True, 'hasNotifyCommand': True, 'hasMessageId': True,\n # 'mempoolSize': '0'}, 'id': '0'}\n \n \n # now let's set up some notifications\n # the decorator registers an async callback function and requests the notification automatically\n\n @kaspad_client.notify_virtual_daa_score_changed\n async def received_new_daa_score(c):\n print(f\"The DAA score is: {c['virtualDaaScoreChangedNotification']['virtualDaaScore']}\")\n \n @kaspad_client.notify_virtual_daa_score_changed\n async def received_new_daa_score2(c):\n print(f\"The DAA2 score is: {c['virtualDaaScoreChangedNotification']['virtualDaaScore']}\")\n \n @kaspad_client.notify_block_added\n async def received_new_daa_score(c):\n print(f\"New Kaspa block: {c['blockAddedNotification']['block']['verboseData']['hash']}\")\n \n # wait to see some notifcations :-)\n await asyncio.sleep(60)\n \n \n \n asyncio.run(main())\n \n \n\n\n# Donation\n\nWe are doing this in our free time. Please consider a donation if this helps! Thank you!\n\n[kaspa:qrlsm9tvmak6909pr9f35g6scapz5t689nhhls54sfxx5m46sn085ajhn9hn8](https://explorer.kaspa.org/addresses/kaspa:qrlsm9tvmak6909pr9f35g6scapz5t689nhhls54sfxx5m46sn085ajhn9hn8?page=1)\n\n",
"bugtrack_url": null,
"license": null,
"summary": "This is a simple gRPC client for a python application which communiactes with the Kaspa node called KASPAD. Note: This module is created for the RUST version and might be not compatible with the go written node.",
"version": "1.0.4",
"project_urls": {
"Homepage": "https://kaspa.org/",
"Repository": "https://github.com/lAmeR1/py-kaspad-client"
},
"split_keywords": [
"kaspa",
" kaspad",
" blockchain",
" blockdag",
" kas",
" grpc"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6cdf31c2463ea081db9771427eb7fa6ef3b3ae13b4c3c2ad28a48d192d5fbc5d",
"md5": "cd4dd44b24e1febec7681aaa5602f264",
"sha256": "a7fa6c6c08007b39cd548717ac3e63a6251990040f906770a993601b1a82497b"
},
"downloads": -1,
"filename": "kaspad_client-1.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "cd4dd44b24e1febec7681aaa5602f264",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.12",
"size": 24958,
"upload_time": "2024-04-09T19:51:44",
"upload_time_iso_8601": "2024-04-09T19:51:44.445102Z",
"url": "https://files.pythonhosted.org/packages/6c/df/31c2463ea081db9771427eb7fa6ef3b3ae13b4c3c2ad28a48d192d5fbc5d/kaspad_client-1.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cebffbd36bba2fc9a399fd9a1d74dfbd3d9ba304233919d6b20ef99936abb427",
"md5": "336b21bd7fb2451ed764281c65c393e2",
"sha256": "193cdfe0626294b67c7c5e230e6ca2a5c471fcb958bb348844be59f7a14063f5"
},
"downloads": -1,
"filename": "kaspad_client-1.0.4.tar.gz",
"has_sig": false,
"md5_digest": "336b21bd7fb2451ed764281c65c393e2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.12",
"size": 21985,
"upload_time": "2024-04-09T19:51:46",
"upload_time_iso_8601": "2024-04-09T19:51:46.098470Z",
"url": "https://files.pythonhosted.org/packages/ce/bf/fbd36bba2fc9a399fd9a1d74dfbd3d9ba304233919d6b20ef99936abb427/kaspad_client-1.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-09 19:51:46",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "lAmeR1",
"github_project": "py-kaspad-client",
"github_not_found": true,
"lcname": "kaspad-client"
}