naeural-client 3.1.2__tar.gz → 3.1.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {naeural_client-3.1.2 → naeural_client-3.1.4}/.gitignore +2 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/PKG-INFO +1 -1
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/_ver.py +1 -1
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/generic_session.py +2 -2
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/bc/base.py +3 -2
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/bc/evm.py +4 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/evm_net.py +1 -1
- {naeural_client-3.1.2 → naeural_client-3.1.4}/pyproject.toml +1 -1
- naeural_client-3.1.4/tutorials/ex14_wallets.py +93 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/w3_auth_check.py +1 -2
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/eth/send_many.py +37 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/.devcontainer/Dockerfile +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/.devcontainer/devcontainer.json +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/.gitattributes +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/.github/workflows/python-publish.yml +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/.vscode/launch.json +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/LICENSE +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/README.md +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/TODOs.md +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/distributed_custom_code_presets.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/instance.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/payload/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/payload/payload.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/pipeline.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/plugin_template.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/responses.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/transaction.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/webapp_pipeline.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base_decentra_object.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/bc/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/bc/chain.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/bc/ec.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/certs/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/certs/a0d9818f.ala.eu-central-1.emqxsl.com.crt +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/certs/s624dbd4.ala.us-east-1.emqxsl.com.crt +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/cli/README.md +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/cli/cli.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/cli/cli_commands.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/cli/nodes.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/cli/oracles.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/code_cheker/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/code_cheker/base.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/code_cheker/checker.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/comm/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/comm/amqp_wrapper.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/comm/mqtt_wrapper.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/README.md +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/apps.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/base.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/comms.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/environment.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/formatter.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/heartbeat.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/misc.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/const/payload.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/custom_webapi_01_plugin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/net_mon_01_plugin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/telegram_basic_bot_01_plugin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/view_scene_01_plugin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/session/mqtt_session.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/base/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/base/base_formatter.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/default/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/default/a_dummy.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/default/aixp1.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/default/default.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/io_formatter_manager.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ifps_keygen +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/ipfs.service +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/launch_service.sh +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/restart.sh +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/run.sh +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/setup.sh +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/show.sh +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/write_key.sh +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/r1fs.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/base_logger.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/class_instance_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/computer_vision_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/datetime_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/download_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/general_serialization_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/json_serialization_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/process_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/resource_size_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/timers_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/upload_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/utils_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/small_logger.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/tzlocal/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/tzlocal/unix.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/tzlocal/utils.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/tzlocal/win32.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/tzlocal/windows_tz.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/plugins_manager_mixin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/utils/__init__.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/utils/comm_utils.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/utils/config.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/utils/dotenv.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/utils/oracle_sync/oracle_tester.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/nepctl.MD +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/requirements.txt +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/.example_env +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/_example_pk_sdk.pem +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex01_part1_connect.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex01_part2_filter.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex01_part3_adv_filter.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex02_part1_deploy_webapi.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex02_part2_deploy_plugin.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex02_part3_deploy_r1fs_test.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex08_custom_webapi.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex10_telegram_echo_bot.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex12_telegram_smart_bot.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex13_launch_repo_based_webapp.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/winrun.bat +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/README.md +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/cstore_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/dauth_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/keys_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/ora_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/ora_sign_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/payload_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/session_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/_checks/w3_oracles_check.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/dates/check_date.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/debug/close_pipeline.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/decentralized/chain_dist_example.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/enc_dec/enc_dec_test.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/eth/balance.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/eth/eth_sign.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/eth/info.md +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/eth/send.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/eth/sign.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/multi-enc-dec/multi_test1.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/multi-enc-dec/multi_test2.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/pipelines/start.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/pipelines/stop.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/sign/simple_payload_checker.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/sign/test_sign1.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/sign/test_sign2.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/utils/get_documentation.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/various/attach_example.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/various/ex1.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/various/hello.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/various/remote_exec.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/various/save_images.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/wl/wl_add.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/xarchive/_tutorials/3. simple_real_time_custom_code.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/xarchive/_tutorials/4. real_time_custom_code_2.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/xarchive/_tutorials/8. chatbot.py +0 -0
- {naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/xarchive/test.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: naeural_client
|
3
|
-
Version: 3.1.
|
3
|
+
Version: 3.1.4
|
4
4
|
Summary: `naeural_client` is the Python SDK required for client app development for the Naeural Edge Protocol Edge Protocol framework
|
5
5
|
Project-URL: Homepage, https://github.com/NaeuralEdgeProtocol/naeural_client
|
6
6
|
Project-URL: Bug Tracker, https://github.com/NaeuralEdgeProtocol/naeural_client/issues
|
@@ -3108,8 +3108,8 @@ class GenericSession(BaseDecentrAIObject):
|
|
3108
3108
|
eth_addr = val
|
3109
3109
|
add_balance = True
|
3110
3110
|
if add_balance:
|
3111
|
-
eth_balance = self.bc_engine.web3_get_balance_eth(
|
3112
|
-
r1_balance = self.bc_engine.web3_get_balance_r1(
|
3111
|
+
eth_balance = self.bc_engine.web3_get_balance_eth(eth_addr)
|
3112
|
+
r1_balance = self.bc_engine.web3_get_balance_r1(eth_addr)
|
3113
3113
|
res['ETH'].append(round(eth_balance,4))
|
3114
3114
|
res['$R1'].append(round(r1_balance,4))
|
3115
3115
|
elif key == PAYLOAD_DATA.NETMON_WHITELIST:
|
@@ -17,6 +17,7 @@ from cryptography.hazmat.primitives import serialization
|
|
17
17
|
|
18
18
|
from ..utils.config import get_user_folder
|
19
19
|
|
20
|
+
|
20
21
|
from ..const.base import (
|
21
22
|
BCctbase, BCct,
|
22
23
|
DAUTH_SUBKEY, DAUTH_ENV_KEY,
|
@@ -305,7 +306,7 @@ class BaseBlockEngine(_EVMMixin):
|
|
305
306
|
):
|
306
307
|
|
307
308
|
self.__name = name
|
308
|
-
assert log is not None, "Logger object was not provided!"
|
309
|
+
assert log is not None, "Logger object was not provided!"
|
309
310
|
|
310
311
|
self.log = log
|
311
312
|
self.__private_key = None
|
@@ -378,7 +379,7 @@ class BaseBlockEngine(_EVMMixin):
|
|
378
379
|
|
379
380
|
if True:
|
380
381
|
self.P("Initializing private blockchain:\n{}".format(
|
381
|
-
json.dumps(self.__config, indent=4)), verbosity=
|
382
|
+
json.dumps(self.__config, indent=4)), verbosity=1
|
382
383
|
)
|
383
384
|
if self.__pem_file is not None:
|
384
385
|
try:
|
@@ -190,6 +190,8 @@ class _EVMMixin:
|
|
190
190
|
the network name.
|
191
191
|
|
192
192
|
"""
|
193
|
+
if EE_VPN_IMPL:
|
194
|
+
return "VPN"
|
193
195
|
network = os.environ.get(dAuth.DAUTH_NET_ENV_KEY, dAuth.DAUTH_SDK_NET_DEFAULT)
|
194
196
|
if not hasattr(self, "current_evm_network") or self.current_evm_network != network:
|
195
197
|
self.current_evm_network = network
|
@@ -201,6 +203,8 @@ class _EVMMixin:
|
|
201
203
|
|
202
204
|
@property
|
203
205
|
def evm_network(self):
|
206
|
+
if EE_VPN_IMPL:
|
207
|
+
return "VPN"
|
204
208
|
return self.get_evm_network()
|
205
209
|
|
206
210
|
|
@@ -41,7 +41,7 @@ EVM_NET_DATA = {
|
|
41
41
|
'devnet' : {
|
42
42
|
EvmNetData.DAUTH_URL_KEY : "https://devnet-dauth.ratio1.ai/get_auth_data",
|
43
43
|
EvmNetData.DAUTH_ND_ADDR_KEY : "0x9f49fc29366F1C8285d42e7E82cA0bb668B32CeA",
|
44
|
-
EvmNetData.DAUTH_R1_ADDR_KEY : "0xEF38a3d84D3E3111fb7b794Ba3240187b8B32825",
|
44
|
+
EvmNetData.DAUTH_R1_ADDR_KEY : "0xEF38a3d84D3E3111fb7b794Ba3240187b8B32825",
|
45
45
|
EvmNetData.DAUTH_RPC_KEY : "https://base-sepolia.public.blastapi.io",
|
46
46
|
EvmNetData.EE_GENESIS_EPOCH_DATE_KEY : "2025-02-12 16:00:00",
|
47
47
|
EvmNetData.EE_EPOCH_INTERVALS_KEY : 1,
|
@@ -0,0 +1,93 @@
|
|
1
|
+
"""
|
2
|
+
This demo showcases the SDK's ability to enable the sending and receiving of both ETH and $R1 tokens.
|
3
|
+
The script checks balances, waits until some ETH and $R1 are available for distribution, and then
|
4
|
+
proceeds to distribute randomized amounts of ETH and $R1 to multiple peers.
|
5
|
+
|
6
|
+
Along the way, it logs transaction details and updates the balances of both the client and the recipient
|
7
|
+
addresses, ensuring smooth interaction with the Ethereum network and $R1 token. for a few seconds
|
8
|
+
This demo showcases the SDK (and R1 Edge Node) ability for managing ETH and $R1 tokens in a live environment.
|
9
|
+
|
10
|
+
With just a few lines of code, the tutorial demonstrates how to:
|
11
|
+
- Monitor Balances: Continuously check and wait for the client's ETH and $R1 balances to become available.
|
12
|
+
- Automate Distribution: Randomly calculate and distribute tokens to multiple peer addresses.
|
13
|
+
- Transaction Handling: Seamlessly send transactions with built-in logging, gas fee checks, and receipt
|
14
|
+
verification on testnet or devnet networks.
|
15
|
+
|
16
|
+
Its a hands-on, real-world example of how you can effortlessly integrate token transfers into
|
17
|
+
your R1 applications.
|
18
|
+
|
19
|
+
"""
|
20
|
+
import os
|
21
|
+
import time
|
22
|
+
import numpy as np
|
23
|
+
|
24
|
+
from naeural_client.bc import DefaultBlockEngine
|
25
|
+
from naeural_client import Logger
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
if __name__ == '__main__' :
|
30
|
+
eng = DefaultBlockEngine(
|
31
|
+
name="default",
|
32
|
+
log=Logger("BCTEST"),
|
33
|
+
user_config=True, # this is must to use the user config
|
34
|
+
verbosity=2
|
35
|
+
)
|
36
|
+
|
37
|
+
eng.reset_network('devnet')
|
38
|
+
|
39
|
+
file = os.path.join(os.path.dirname(__file__), "mynodes.txt")
|
40
|
+
with open(file, "rt") as fd:
|
41
|
+
lines = fd.readlines()
|
42
|
+
addresses = [line.strip() for line in lines]
|
43
|
+
|
44
|
+
assert eng.evm_network in ['testnet', 'devnet']
|
45
|
+
client_eth = eng.web3_get_balance_eth()
|
46
|
+
client_r1 = eng.web3_get_balance_r1()
|
47
|
+
|
48
|
+
timeout = 120
|
49
|
+
start = time.time()
|
50
|
+
while client_eth == 0 or client_r1 == 0:
|
51
|
+
remaining = 120 - (time.time() - start)
|
52
|
+
if remaining <= 0:
|
53
|
+
break
|
54
|
+
msg = f"Client has {client_eth:.4f} ETH and {client_r1:.4f} $R1"
|
55
|
+
msg += f"\nYou are supposed to have some ETH and $R1 in {eng.eth_address} to distribute to peers"
|
56
|
+
msg += f"\nPlease send some ETH and $R1 to {eng.eth_address} in max {remaining:.0f} seconds"
|
57
|
+
eng.P(msg, color='r')
|
58
|
+
time.sleep(10)
|
59
|
+
client_eth = eng.web3_get_balance_eth()
|
60
|
+
client_r1 = eng.web3_get_balance_r1()
|
61
|
+
|
62
|
+
|
63
|
+
assert client_eth > 0 and client_r1 > 0, "Client has not enough ETH or $R1 to distribute"
|
64
|
+
|
65
|
+
n_peers = len(addresses)
|
66
|
+
amount_eth = (client_eth / 2) / n_peers
|
67
|
+
amount_r1 = (client_r1 / 2) / n_peers
|
68
|
+
eng.P(
|
69
|
+
f"Client {eng.eth_address}:\n {client_eth:>10.4f} ETH\n {client_r1:>10.4f} $R1\n Will distribute (max) {amount_eth:.4f} ETH\n Will distribute (MAX) {amount_r1:.4f} $R1 \n to each of {n_peers} peers",
|
70
|
+
color='g'
|
71
|
+
)
|
72
|
+
|
73
|
+
for address in addresses:
|
74
|
+
random_amount_eth = np.random.uniform(0.7, 0.99) * amount_eth
|
75
|
+
random_amount_r1 = np.random.uniform(0.7, 1.1) * amount_r1
|
76
|
+
eng.P(f" Sending {random_amount_eth:.4f} ETH to {address}", color='b')
|
77
|
+
tx_hash = eng.web3_send_eth(address, random_amount_eth, wait_for_tx=True, return_receipt=False)
|
78
|
+
time.sleep(2) # bit of extra sleep time
|
79
|
+
eng.P(f" Executed tx: {tx_hash}", color='g')
|
80
|
+
|
81
|
+
eng.P(f" Sending {random_amount_r1:.4f} $R1 to {address}", color='b')
|
82
|
+
tx_hash = eng.web3_send_r1(address, random_amount_r1, wait_for_tx=True, return_receipt=False)
|
83
|
+
time.sleep(2) # bit of extra sleep time
|
84
|
+
eng.P(f" Executed tx: {tx_hash}", color='g')
|
85
|
+
eth_balance = eng.web3_get_balance_eth(address)
|
86
|
+
r1_balance = eng.web3_get_balance_r1(address)
|
87
|
+
eng.P(f" ETH Balance of {address} is {eth_balance:.4f} ETH")
|
88
|
+
eng.P(f" R1 Balance of {address} is {r1_balance:.4f} R1")
|
89
|
+
|
90
|
+
time.sleep(5)
|
91
|
+
client_eth = eng.web3_get_balance_eth()
|
92
|
+
client_r1 = eng.web3_get_balance_r1()
|
93
|
+
eng.P(f"Client has {client_eth:.4f} ETH and {client_r1:.4f} $R1")
|
@@ -19,7 +19,6 @@ if __name__ == '__main__' :
|
|
19
19
|
eng = DefaultBlockEngine(
|
20
20
|
log=l, name="default",
|
21
21
|
config={
|
22
|
-
|
23
22
|
}
|
24
23
|
)
|
25
24
|
|
@@ -39,7 +38,7 @@ if __name__ == '__main__' :
|
|
39
38
|
)
|
40
39
|
l.P("{} {}".format(
|
41
40
|
addr,
|
42
|
-
"has a license" if is_active else "does NOT have a license"
|
41
|
+
"has a license" if is_active else f"does NOT have a license on {eng.evm_network}"
|
43
42
|
),
|
44
43
|
color='g' if is_active else 'r'
|
45
44
|
)
|
@@ -1,3 +1,22 @@
|
|
1
|
+
"""
|
2
|
+
This demo showcases the SDK's ability to enable the sending and receiving of both ETH and $R1 tokens.
|
3
|
+
The script checks balances, waits until some ETH and $R1 are available for distribution, and then
|
4
|
+
proceeds to distribute randomized amounts of ETH and $R1 to multiple peers.
|
5
|
+
|
6
|
+
Along the way, it logs transaction details and updates the balances of both the client and the recipient
|
7
|
+
addresses, ensuring smooth interaction with the Ethereum network and $R1 token. for a few seconds
|
8
|
+
This demo showcases the SDK (and R1 Edge Node) ability for managing ETH and $R1 tokens in a live environment.
|
9
|
+
|
10
|
+
With just a few lines of code, the tutorial demonstrates how to:
|
11
|
+
- Monitor Balances: Continuously check and wait for the client's ETH and $R1 balances to become available.
|
12
|
+
- Automate Distribution: Randomly calculate and distribute tokens to multiple peer addresses.
|
13
|
+
- Transaction Handling: Seamlessly send transactions with built-in logging, gas fee checks, and receipt
|
14
|
+
verification on testnet or devnet networks.
|
15
|
+
|
16
|
+
Its a hands-on, real-world example of how you can effortlessly integrate token transfers into
|
17
|
+
your R1 applications.
|
18
|
+
|
19
|
+
"""
|
1
20
|
import os
|
2
21
|
import time
|
3
22
|
from copy import deepcopy
|
@@ -21,6 +40,24 @@ if __name__ == '__main__' :
|
|
21
40
|
assert eng.evm_network in ['testnet', 'devnet']
|
22
41
|
client_eth = eng.web3_get_balance_eth()
|
23
42
|
client_r1 = eng.web3_get_balance_r1()
|
43
|
+
|
44
|
+
timeout = 120
|
45
|
+
start = time.time()
|
46
|
+
while client_eth == 0 or client_r1 == 0:
|
47
|
+
remaining = 120 - (time.time() - start)
|
48
|
+
if remaining <= 0:
|
49
|
+
break
|
50
|
+
msg = f"Client has {client_eth:.4f} ETH and {client_r1:.4f} $R1"
|
51
|
+
msg += f"\nYou are supposed to have some ETH and $R1 in {eng.eth_address} to distribute to peers"
|
52
|
+
msg += f"\nPlease send some ETH and $R1 to {eng.eth_address} in max {remaining:.0f} seconds"
|
53
|
+
l.P(msg, color='r')
|
54
|
+
time.sleep(10)
|
55
|
+
client_eth = eng.web3_get_balance_eth()
|
56
|
+
client_r1 = eng.web3_get_balance_r1()
|
57
|
+
|
58
|
+
|
59
|
+
assert client_eth > 0 and client_r1 > 0, "Client has not enough ETH or $R1 to distribute"
|
60
|
+
|
24
61
|
n_peers = len(addresses)
|
25
62
|
amount_eth = (client_eth / 2) / n_peers
|
26
63
|
amount_r1 = (client_r1 / 2) / n_peers
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/base/distributed_custom_code_presets.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/instance/net_mon_01_plugin.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/default/session/mqtt_session.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/base/base_formatter.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/default/__init__.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/default/a_dummy.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/default/default.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/io_formatter/io_formatter_manager.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/ipfs/ipfs_setup/launch_service.sh
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/datetime_mixin.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/download_mixin.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/process_mixin.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/timers_mixin.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/upload_mixin.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/logging/logger_mixins/utils_mixin.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/naeural_client/utils/oracle_sync/oracle_tester.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/8. custom_code_fastapi_assets/index.html
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex03_custom_code_on_one_remote__example_1.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex04_custom_code_on_one_remote__example_2.py
RENAMED
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/ex05_custom_code_on_one_remote__example_3.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/tutorials/video_presentation/1. hello_world.ipynb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/decentralized/chain_dist_example.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-3.1.2 → naeural_client-3.1.4}/xperimental/decentralized/chain_dist_example_worker.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|