naeural-client 3.0.7__tar.gz → 3.0.8__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.
Files changed (172) hide show
  1. {naeural_client-3.0.7 → naeural_client-3.0.8}/PKG-INFO +1 -1
  2. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/_ver.py +1 -1
  3. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/cli/cli.py +10 -0
  4. {naeural_client-3.0.7 → naeural_client-3.0.8}/pyproject.toml +1 -1
  5. naeural_client-3.0.8/tutorials/ex02_part3_deploy_r1fs_test.py +75 -0
  6. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/ora_check.py +2 -2
  7. naeural_client-3.0.7/tutorials/ex02_part3_deploy_r1fs_test.py +0 -59
  8. {naeural_client-3.0.7 → naeural_client-3.0.8}/.devcontainer/Dockerfile +0 -0
  9. {naeural_client-3.0.7 → naeural_client-3.0.8}/.devcontainer/devcontainer.json +0 -0
  10. {naeural_client-3.0.7 → naeural_client-3.0.8}/.gitattributes +0 -0
  11. {naeural_client-3.0.7 → naeural_client-3.0.8}/.github/workflows/python-publish.yml +0 -0
  12. {naeural_client-3.0.7 → naeural_client-3.0.8}/.gitignore +0 -0
  13. {naeural_client-3.0.7 → naeural_client-3.0.8}/.vscode/launch.json +0 -0
  14. {naeural_client-3.0.7 → naeural_client-3.0.8}/LICENSE +0 -0
  15. {naeural_client-3.0.7 → naeural_client-3.0.8}/README.md +0 -0
  16. {naeural_client-3.0.7 → naeural_client-3.0.8}/TODOs.md +0 -0
  17. {naeural_client-3.0.7 → naeural_client-3.0.8}/__init__.py +0 -0
  18. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/__init__.py +0 -0
  19. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/__init__.py +0 -0
  20. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/distributed_custom_code_presets.py +0 -0
  21. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/generic_session.py +0 -0
  22. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/instance.py +0 -0
  23. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/payload/__init__.py +0 -0
  24. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/payload/payload.py +0 -0
  25. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/pipeline.py +0 -0
  26. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/plugin_template.py +0 -0
  27. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/responses.py +0 -0
  28. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/transaction.py +0 -0
  29. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base/webapp_pipeline.py +0 -0
  30. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/base_decentra_object.py +0 -0
  31. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/bc/__init__.py +0 -0
  32. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/bc/base.py +0 -0
  33. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/bc/chain.py +0 -0
  34. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/bc/ec.py +0 -0
  35. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/bc/evm.py +0 -0
  36. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/certs/__init__.py +0 -0
  37. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
  38. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/certs/s624dbd4.ala.us-east-1.emqxsl.com.crt +0 -0
  39. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/cli/README.md +0 -0
  40. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/cli/cli_commands.py +0 -0
  41. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/cli/nodes.py +0 -0
  42. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/cli/oracles.py +0 -0
  43. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/code_cheker/__init__.py +0 -0
  44. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/code_cheker/base.py +0 -0
  45. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/code_cheker/checker.py +0 -0
  46. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/comm/__init__.py +0 -0
  47. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/comm/amqp_wrapper.py +0 -0
  48. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/comm/mqtt_wrapper.py +0 -0
  49. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/README.md +0 -0
  50. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/__init__.py +0 -0
  51. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/apps.py +0 -0
  52. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/base.py +0 -0
  53. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/comms.py +0 -0
  54. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/environment.py +0 -0
  55. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/evm_net.py +0 -0
  56. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/formatter.py +0 -0
  57. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/heartbeat.py +0 -0
  58. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/misc.py +0 -0
  59. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/const/payload.py +0 -0
  60. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/__init__.py +0 -0
  61. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/instance/__init__.py +0 -0
  62. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
  63. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/instance/custom_webapi_01_plugin.py +0 -0
  64. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/instance/net_mon_01_plugin.py +0 -0
  65. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/instance/telegram_basic_bot_01_plugin.py +0 -0
  66. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
  67. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/instance/view_scene_01_plugin.py +0 -0
  68. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/default/session/mqtt_session.py +0 -0
  69. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/__init__.py +0 -0
  70. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/base/__init__.py +0 -0
  71. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/base/base_formatter.py +0 -0
  72. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/default/__init__.py +0 -0
  73. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/default/a_dummy.py +0 -0
  74. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/default/aixp1.py +0 -0
  75. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/default/default.py +0 -0
  76. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/io_formatter/io_formatter_manager.py +0 -0
  77. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/__init__.py +0 -0
  78. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ifps_keygen +0 -0
  79. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ipfs_setup/ipfs.service +0 -0
  80. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ipfs_setup/launch_service.sh +0 -0
  81. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ipfs_setup/restart.sh +0 -0
  82. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ipfs_setup/run.sh +0 -0
  83. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ipfs_setup/setup.sh +0 -0
  84. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ipfs_setup/show.sh +0 -0
  85. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/ipfs_setup/write_key.sh +0 -0
  86. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/ipfs/r1fs.py +0 -0
  87. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/__init__.py +0 -0
  88. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/base_logger.py +0 -0
  89. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/__init__.py +0 -0
  90. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/class_instance_mixin.py +0 -0
  91. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/computer_vision_mixin.py +0 -0
  92. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/datetime_mixin.py +0 -0
  93. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/download_mixin.py +0 -0
  94. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/general_serialization_mixin.py +0 -0
  95. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/json_serialization_mixin.py +0 -0
  96. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
  97. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/process_mixin.py +0 -0
  98. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/resource_size_mixin.py +0 -0
  99. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/timers_mixin.py +0 -0
  100. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/upload_mixin.py +0 -0
  101. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/logger_mixins/utils_mixin.py +0 -0
  102. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/small_logger.py +0 -0
  103. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/tzlocal/__init__.py +0 -0
  104. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/tzlocal/unix.py +0 -0
  105. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/tzlocal/utils.py +0 -0
  106. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/tzlocal/win32.py +0 -0
  107. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/logging/tzlocal/windows_tz.py +0 -0
  108. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/plugins_manager_mixin.py +0 -0
  109. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/utils/__init__.py +0 -0
  110. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/utils/comm_utils.py +0 -0
  111. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/utils/config.py +0 -0
  112. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/utils/dotenv.py +0 -0
  113. {naeural_client-3.0.7 → naeural_client-3.0.8}/naeural_client/utils/oracle_sync/oracle_tester.py +0 -0
  114. {naeural_client-3.0.7 → naeural_client-3.0.8}/nepctl.MD +0 -0
  115. {naeural_client-3.0.7 → naeural_client-3.0.8}/requirements.txt +0 -0
  116. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/.example_env +0 -0
  117. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
  118. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
  119. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/_example_pk_sdk.pem +0 -0
  120. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex01_part1_connect.py +0 -0
  121. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex01_part2_filter.py +0 -0
  122. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex01_part3_adv_filter.py +0 -0
  123. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex02_part1_deploy_webapi.py +0 -0
  124. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex02_part2_deploy_plugin.py +0 -0
  125. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
  126. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
  127. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
  128. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
  129. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
  130. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex08_custom_webapi.py +0 -0
  131. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
  132. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex10_telegram_echo_bot.py +0 -0
  133. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
  134. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex12_telegram_smart_bot.py +0 -0
  135. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/ex13_launch_repo_based_webapp.py +0 -0
  136. {naeural_client-3.0.7 → naeural_client-3.0.8}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
  137. {naeural_client-3.0.7 → naeural_client-3.0.8}/winrun.bat +0 -0
  138. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/README.md +0 -0
  139. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/cstore_check.py +0 -0
  140. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/dauth_check.py +0 -0
  141. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/keys_check.py +0 -0
  142. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/ora_sign_check.py +0 -0
  143. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/payload_check.py +0 -0
  144. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/session_check.py +0 -0
  145. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/_checks/web3_check.py +0 -0
  146. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/dates/check_date.py +0 -0
  147. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/debug/close_pipeline.py +0 -0
  148. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/decentralized/chain_dist_example.py +0 -0
  149. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
  150. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
  151. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/enc_dec/enc_dec_test.py +0 -0
  152. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/eth/eth_sign.py +0 -0
  153. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/eth/info.md +0 -0
  154. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/eth/sign.py +0 -0
  155. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/multi-enc-dec/multi_test1.py +0 -0
  156. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/multi-enc-dec/multi_test2.py +0 -0
  157. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/pipelines/start.py +0 -0
  158. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/pipelines/stop.py +0 -0
  159. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/sign/simple_payload_checker.py +0 -0
  160. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/sign/test_sign1.py +0 -0
  161. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/sign/test_sign2.py +0 -0
  162. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/utils/get_documentation.py +0 -0
  163. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/various/attach_example.py +0 -0
  164. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/various/ex1.py +0 -0
  165. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/various/hello.py +0 -0
  166. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/various/remote_exec.py +0 -0
  167. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/various/save_images.py +0 -0
  168. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/wl/wl_add.py +0 -0
  169. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/xarchive/_tutorials/3. simple_real_time_custom_code.py +0 -0
  170. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/xarchive/_tutorials/4. real_time_custom_code_2.py +0 -0
  171. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/xarchive/_tutorials/8. chatbot.py +0 -0
  172. {naeural_client-3.0.7 → naeural_client-3.0.8}/xperimental/xarchive/test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: naeural_client
3
- Version: 3.0.7
3
+ Version: 3.0.8
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
@@ -1,4 +1,4 @@
1
- __VER__ = "3.0.7"
1
+ __VER__ = "3.0.8"
2
2
 
3
3
  if __name__ == "__main__":
4
4
  with open("pyproject.toml", "rt") as fd:
@@ -1,3 +1,5 @@
1
+ import signal
2
+ import sys
1
3
  import argparse
2
4
 
3
5
  from naeural_client.utils.config import maybe_init_config, log_with_color
@@ -6,6 +8,11 @@ from naeural_client.cli.cli_commands import CLI_COMMANDS
6
8
  from naeural_client import version
7
9
  import traceback
8
10
 
11
+ def handle_sigint(signum, frame):
12
+ """Handler for the SIGINT signal (Ctrl-C)."""
13
+ print("Interrupted. Exiting...")
14
+ sys.exit(1)
15
+
9
16
 
10
17
  def create_global_parser():
11
18
  """
@@ -96,6 +103,9 @@ def main():
96
103
  Ensures the configuration is initialized, builds the parser,
97
104
  and executes the appropriate command function.
98
105
  """
106
+ # Register the SIGINT handler
107
+ signal.signal(signal.SIGINT, handle_sigint)
108
+
99
109
  try:
100
110
  # Initialize configuration if necessary
101
111
  initialized = maybe_init_config()
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "naeural_client"
7
- version = "3.0.7"
7
+ version = "3.0.8"
8
8
  authors = [
9
9
  { name="Andrei Ionut Damian", email="andrei.damian@me.com" },
10
10
  { name="Cristan Bleotiu", email="cristibleotiu@gmail.com" },
@@ -0,0 +1,75 @@
1
+ import json
2
+ from naeural_client import Instance, Payload, Pipeline, Session, PAYLOAD_DATA
3
+
4
+ class SimplePayloadHandler:
5
+ """ Simple payload handler class build for convenience """
6
+ def __init__(self):
7
+ self.n_received = 0
8
+ return
9
+
10
+ def instance_on_data(self, pipeline: Pipeline, payload: Payload):
11
+ # we extract the payload and do a minimal processing
12
+ # this is the payload key sent by the demo plugin
13
+ R1FS_DEMO_DATA_KEY = "R1FS_DATA"
14
+ # next convert to the data object for convenience
15
+ data = payload.data
16
+ # then we extract the sender alias directly from the payload
17
+ sender_alias = data[PAYLOAD_DATA.EE_ID]
18
+ # we extract the r1fs data if it is present
19
+ r1fs_data = data.get(R1FS_DEMO_DATA_KEY)
20
+ if r1fs_data is None:
21
+ # we ignore the payload if the data is not present
22
+ return
23
+ # we increment the number of received payloads
24
+ self.n_received += 1
25
+ # then we extract the R1FS file originator (creator) from the demo data
26
+ read_file_originator = r1fs_data["owner_id"]
27
+ # we print the data
28
+ pipeline.P("Data received #{} from worker '{}' from file created by '{}':\n {}".format(
29
+ self.n_received, sender_alias, read_file_originator, json.dumps(r1fs_data, indent=2)
30
+ ))
31
+ return
32
+
33
+ if __name__ == '__main__':
34
+
35
+ session: Session = Session()
36
+
37
+ payload_handler = SimplePayloadHandler()
38
+
39
+ # this code assumes the node have "allowed" the SDK to deploy the pipeline
40
+ nodes = [
41
+ '0xai_A2LfyeItL5oEp7nHONlczGgwS3SV8Ims9ujJ0soJ6Anx',
42
+ '0xai_AqgKnJMNvUvq5n1wIin_GD2i1FbZ4FBTUJaCI6cWf7i4',
43
+ ]
44
+
45
+ for node in nodes:
46
+ session.P(f"Deploying pipeline to node: {node}")
47
+ session.wait_for_node(node) # we wait for the node to be ready
48
+ pipeline: Pipeline = session.create_pipeline(
49
+ node=node, name='r1fs_demo_pipeline', data_source='Void',
50
+ debug=True,
51
+ )
52
+ # The ideea is that we create a plugin instance that listens for data
53
+ # on ChainStorage from other plugins/nodes that create R1FS demo files
54
+ # while itself also creating R1FS demo files
55
+ instance: Instance = pipeline.create_plugin_instance(
56
+ signature='R1FS_DEMO', on_data=payload_handler.instance_on_data,
57
+ instance_id='inst01',
58
+ debug=True,
59
+ )
60
+
61
+ pipeline.deploy()
62
+ WAIT_TIME = 150
63
+ session.P(f"All pipelines deployed, we wait for {WAIT_TIME} seconds...")
64
+ session.wait(
65
+ seconds=WAIT_TIME, # we wait the session for 60 seconds
66
+ close_pipelines=True, # we close the pipelines after the session
67
+ close_session=True, # we close the session after the session
68
+ )
69
+
70
+ session.P("Session closed. A total of {} payloads were received.".format(
71
+ payload_handler.n_received
72
+ ))
73
+ if payload_handler.n_received == 0:
74
+ session.P("No payloads were received. Probably your nodes do not cooperate ('allow') with each other.")
75
+ session.P("Main thread exiting...")
@@ -4,10 +4,10 @@ import pandas as pd
4
4
 
5
5
  if __name__ == "__main__":
6
6
  N = 4
7
- DEBUG = True
7
+ DEBUG = False
8
8
 
9
9
  # the provided url, note: if this does not return json directly, it might need adjustment
10
- url = "https://naeural-oracle.ngrok.app/active_nodes_list"
10
+ url = "https://devnet-oracle.ratio1.ai/active_nodes_list"
11
11
  server_alias_counts = {}
12
12
 
13
13
  for i in range(N):
@@ -1,59 +0,0 @@
1
- import json
2
- from naeural_client import Instance, Payload, Pipeline, Session, PAYLOAD_DATA
3
-
4
- def instance_on_data(pipeline: Pipeline, payload: Payload):
5
- # we extract the payload and do a minimal processing
6
- # this is the payload key sent by the demo plugin
7
- R1FS_DEMO_DATA_KEY = "R1FS_DATA"
8
- # next convert to the data object for convenience
9
- data = payload.data
10
- # then we extract the sender alias directly from the payload
11
- sender_alias = data[PAYLOAD_DATA.EE_ID]
12
- # we extract the r1fs data if it is present
13
- r1fs_data = data.get(R1FS_DEMO_DATA_KEY)
14
- if r1fs_data is None:
15
- # we ignore the payload if the data is not present
16
- return
17
- # then we extract the R1FS file originator (creator) from the demo data
18
- read_file_originator = r1fs_data["owner_id"]
19
- # we print the data
20
- pipeline.P("Data received from worker '{}' from file created by '{}':\n {}".format(
21
- sender_alias, read_file_originator, json.dumps(r1fs_data, indent=2)
22
- ))
23
- return
24
-
25
- if __name__ == '__main__':
26
-
27
- session: Session = Session()
28
-
29
- # this code assumes the node have "allowed" the SDK to deploy the pipeline
30
- nodes = [
31
- '0xai_A2LfyeItL5oEp7nHONlczGgwS3SV8Ims9ujJ0soJ6Anx',
32
- '0xai_AqgKnJMNvUvq5n1wIin_GD2i1FbZ4FBTUJaCI6cWf7i4',
33
- ]
34
-
35
- for node in nodes:
36
- session.P(f"Deploying pipeline to node: {node}")
37
- session.wait_for_node(node) # we wait for the node to be ready
38
- pipeline: Pipeline = session.create_pipeline(
39
- node=node, name='r1fs_demo_pipeline', data_source='Void',
40
- debug=True,
41
- )
42
- # The ideea is that we create a plugin instance that listens for data
43
- # on ChainStorage from other plugins/nodes that create R1FS demo files
44
- # while itself also creating R1FS demo files
45
- instance: Instance = pipeline.create_plugin_instance(
46
- signature='R1FS_DEMO', on_data=instance_on_data,
47
- instance_id='inst01',
48
- debug=True,
49
- )
50
-
51
- pipeline.deploy()
52
- WAIT_TIME = 150
53
- session.P(f"All pipelines deployed, we wait for {WAIT_TIME} seconds...")
54
- session.wait(
55
- seconds=WAIT_TIME, # we wait the session for 60 seconds
56
- close_pipelines=True, # we close the pipelines after the session
57
- close_session=True, # we close the session after the session
58
- )
59
- session.P("Main thread exiting...")
File without changes
File without changes
File without changes
File without changes