naeural-client 2.5.9__tar.gz → 2.5.11__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-2.5.9 → naeural_client-2.5.11}/PKG-INFO +1 -1
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/_ver.py +1 -1
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/generic_session.py +4 -6
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/bc/base.py +1 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/apps.py +1 -0
- naeural_client-2.5.11/nepctl.MD +159 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/pyproject.toml +1 -1
- naeural_client-2.5.11/tutorials/ex13_launch_repo_based_webapp.py +70 -0
- naeural_client-2.5.9/tutorials/ex13_launch_repo_based_webapp.py +0 -26
- {naeural_client-2.5.9 → naeural_client-2.5.11}/.devcontainer/Dockerfile +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/.devcontainer/devcontainer.json +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/.gitattributes +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/.github/workflows/python-publish.yml +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/.gitignore +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/.vscode/launch.json +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/LICENSE +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/README.md +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/TODOs.md +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/distributed_custom_code_presets.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/instance.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/payload/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/payload/payload.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/pipeline.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/plugin_template.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/responses.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/transaction.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base/webapp_pipeline.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/base_decentra_object.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/bc/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/bc/chain.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/bc/ec.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/certs/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/cli/README.md +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/cli/cli.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/cli/cli_commands.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/cli/nodes.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/code_cheker/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/code_cheker/base.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/code_cheker/checker.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/comm/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/comm/amqp_wrapper.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/comm/mqtt_wrapper.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/README.md +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/base.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/comms.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/environment.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/formatter.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/heartbeat.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/misc.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/const/payload.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/custom_webapi_01_plugin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/net_mon_01_plugin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/telegram_basic_bot_01_plugin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/view_scene_01_plugin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/session/mqtt_session.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/base/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/base/base_formatter.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/default/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/default/a_dummy.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/default/aixp1.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/default/default.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/io_formatter_manager.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/base_logger.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/class_instance_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/computer_vision_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/datetime_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/download_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/general_serialization_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/json_serialization_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/process_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/resource_size_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/timers_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/upload_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/utils_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/small_logger.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/tzlocal/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/tzlocal/unix.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/tzlocal/utils.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/tzlocal/win32.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/tzlocal/windows_tz.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/plugins_manager_mixin.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/utils/__init__.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/utils/comm_utils.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/utils/config.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/utils/dotenv.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/requirements.txt +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/.example_env +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/_example_pk_sdk.pem +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex01_part1_connect.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex01_part2_filter.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex01_part3_adv_filter.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex02_first_deploy.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex08_custom_webapi.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex10_telegram_echo_bot.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/ex12_telegram_smart_bot.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/winrun.bat +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/.example_env +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/_archive/test.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/_tutorials/3. simple_real_time_custom_code.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/_tutorials/4. real_time_custom_code_2.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/_tutorials/8. chatbot.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/decentralized/chain_dist_example.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/enc_dec/enc_dec_test.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/eth/eth_sign.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/eth/info.md +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/eth/sign.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/multi-enc-dec/multi_test1.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/utils/get_documentation.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/various/README.md +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/various/attach_example.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/various/ex1.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/various/hello.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/various/remote_exec.py +0 -0
- {naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/various/save_images.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: naeural_client
|
3
|
-
Version: 2.5.
|
3
|
+
Version: 2.5.11
|
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
|
@@ -1810,9 +1810,6 @@ class GenericSession(BaseDecentrAIObject):
|
|
1810
1810
|
"""
|
1811
1811
|
|
1812
1812
|
ngrok_use_api = True
|
1813
|
-
|
1814
|
-
# if isinstance(signature, str):
|
1815
|
-
|
1816
1813
|
|
1817
1814
|
pipeline: WebappPipeline = self.create_pipeline(
|
1818
1815
|
node=node,
|
@@ -1887,14 +1884,15 @@ class GenericSession(BaseDecentrAIObject):
|
|
1887
1884
|
kwargs.pop('use_ngrok', None)
|
1888
1885
|
kwargs.pop('ngrok_use_api', None)
|
1889
1886
|
|
1890
|
-
|
1891
|
-
|
1887
|
+
if ngrok_edge_label is None:
|
1888
|
+
raise ValueError("The `ngrok_edge_label` parameter is mandatory when creating a balanced web app, in order for all instances to respond to the same URL.")
|
1889
|
+
|
1892
1890
|
pipelines, instances = [], []
|
1893
1891
|
|
1894
1892
|
for node in nodes:
|
1895
1893
|
self.P("Creating web app on node {}...".format(node), color='b')
|
1896
1894
|
pipeline: WebappPipeline = self.create_pipeline(
|
1897
|
-
node=
|
1895
|
+
node=node,
|
1898
1896
|
name=name,
|
1899
1897
|
pipeline_type=WebappPipeline,
|
1900
1898
|
extra_debug=extra_debug,
|
@@ -377,6 +377,7 @@ class BaseBlockEngine:
|
|
377
377
|
password=self.__password,
|
378
378
|
)
|
379
379
|
self.P(" Loaded sk from {}".format(full_path), verbosity=1)
|
380
|
+
os.environ[BCct.K_USER_CONFIG_PEM_FILE] = self.__pem_file
|
380
381
|
except:
|
381
382
|
self.P(" Failed to load sk from {}".format(full_path), color='r', verbosity=1)
|
382
383
|
|
@@ -6,6 +6,7 @@ class PLUGIN_SIGNATURES:
|
|
6
6
|
NET_MON_01 = 'NET_MON_01'
|
7
7
|
VIEW_SCENE_01 = 'VIEW_SCENE_01'
|
8
8
|
CUSTOM_WEBAPI_01 = 'CUSTOM_CODE_FASTAPI_01'
|
9
|
+
GENERIC_WEB_APP = 'GENERIC_WEB_APP'
|
9
10
|
CHAIN_DIST_CUSTOM_JOB_01 = 'PROCESS_REAL_TIME_COLLECTED_DATA_CUSTOM_EXEC_CHAIN_DIST'
|
10
11
|
TELEGRAM_BASIC_BOT_01 = 'TELEGRAM_BASIC_BOT_01'
|
11
12
|
TELEGRAM_CONVERSATIONAL_BOT_01 = 'TELEGRAM_CONVERSATIONAL_BOT_01'
|
@@ -0,0 +1,159 @@
|
|
1
|
+
# NepCTL Manual
|
2
|
+
|
3
|
+
## Overview
|
4
|
+
**NepCTL** (Naeural Edge Protocol Command-Line Tool) is a CLI utility for interacting with a decentralized network of nodes running Naeural Edge Protocol. It provides commands to query network nodes, configure the client, and manage nodes directly from the terminal.
|
5
|
+
|
6
|
+
## Installation
|
7
|
+
|
8
|
+
Installation is straightforward using `pip` so make sure you have python 3.9+ and pip installed on your system.
|
9
|
+
|
10
|
+
```bash
|
11
|
+
pip install naeural_client
|
12
|
+
```
|
13
|
+
|
14
|
+
Following the instalation make sure you edit `~/.naeural/config` file and put the correct mqtt broker credentials, particularly `EE_MQTT_USER` and `EE_MQTT` which are the username and password for the mqtt broker.
|
15
|
+
|
16
|
+
```plaintext
|
17
|
+
EE_MQTT_HOST=r9092118.ala.eu-central-1.emqxsl.com
|
18
|
+
EE_MQTT_PORT=8883
|
19
|
+
EE_MQTT_USER=
|
20
|
+
EE_MQTT=
|
21
|
+
|
22
|
+
EE_SECURED=true
|
23
|
+
|
24
|
+
TARGET_NODE=
|
25
|
+
```
|
26
|
+
|
27
|
+
|
28
|
+
### General Usage
|
29
|
+
```bash
|
30
|
+
nepctl [COMMAND] [OPTIONS]
|
31
|
+
```
|
32
|
+
|
33
|
+
### Available Commands
|
34
|
+
- **`get`**: Query nodes or supervisors.
|
35
|
+
- **`config`**: Display and manage configuration settings.
|
36
|
+
- **`restart`**: Restart a specific node.
|
37
|
+
- **`shutdown`**: Shutdown a specific node.
|
38
|
+
|
39
|
+
## Commands and Options
|
40
|
+
|
41
|
+
### `get`
|
42
|
+
Query nodes or supervisors in the network.
|
43
|
+
|
44
|
+
#### `get nodes`
|
45
|
+
Retrieve information about network nodes.
|
46
|
+
|
47
|
+
**Options**:
|
48
|
+
- `--all`: Get all known nodes.
|
49
|
+
- `--online`: Get only online nodes.
|
50
|
+
- `--supervisor="addr"`: Query nodes using a specific supervisor address.
|
51
|
+
|
52
|
+
**Examples**:
|
53
|
+
```bash
|
54
|
+
# Get all known nodes:
|
55
|
+
nepctl get nodes --all
|
56
|
+
|
57
|
+
# Get online nodes using a specific supervisor:
|
58
|
+
nepctl get nodes --online --supervisor="Amfnbt3N-qg2-qGtywZIPQBTVlAnoADVRmSAsdDhlQ-6"
|
59
|
+
```
|
60
|
+
|
61
|
+
#### `get supervisors`
|
62
|
+
Retrieve information about supervisors in the network.
|
63
|
+
|
64
|
+
**Examples**:
|
65
|
+
```bash
|
66
|
+
# Get all supervisors:
|
67
|
+
nepctl get supervisors
|
68
|
+
```
|
69
|
+
|
70
|
+
### `config`
|
71
|
+
Manage client configuration settings.
|
72
|
+
|
73
|
+
#### `config show`
|
74
|
+
Display the current configuration, including its location and client address.
|
75
|
+
|
76
|
+
**Examples**:
|
77
|
+
```bash
|
78
|
+
# Show current configuration:
|
79
|
+
nepctl config show
|
80
|
+
```
|
81
|
+
|
82
|
+
#### `config reset`
|
83
|
+
Reset the configuration to its default values.
|
84
|
+
|
85
|
+
**Examples**:
|
86
|
+
```bash
|
87
|
+
# Reset configuration:
|
88
|
+
nepctl config reset
|
89
|
+
```
|
90
|
+
|
91
|
+
#### `config addr`
|
92
|
+
Display the current client address.
|
93
|
+
|
94
|
+
**Examples**:
|
95
|
+
```bash
|
96
|
+
# Show client address:
|
97
|
+
nepctl config addr
|
98
|
+
```
|
99
|
+
|
100
|
+
### `restart`
|
101
|
+
Restart a specific node.
|
102
|
+
|
103
|
+
|
104
|
+
**Options**:
|
105
|
+
- `node`: The address of the node to restart.
|
106
|
+
|
107
|
+
**Examples**:
|
108
|
+
```bash
|
109
|
+
# Restart a node:
|
110
|
+
nepctl restart --node="0xai_AleLPKqUHV-iPc-76-rUvDkRWW4dFMIGKW1xFVcy65nH"
|
111
|
+
```
|
112
|
+
|
113
|
+
### `shutdown`
|
114
|
+
Shutdown a specific node.
|
115
|
+
|
116
|
+
**Options**:
|
117
|
+
- `node`: The address of the node to shutdown.
|
118
|
+
|
119
|
+
**Examples**:
|
120
|
+
```bash
|
121
|
+
# Shutdown a node:
|
122
|
+
nepctl shutdown --node="0xai_AhsgqiqJZzav1OHUlam7K9tZWysPv1QWcZU0AhFJ6wsJ"
|
123
|
+
```
|
124
|
+
|
125
|
+
## Example Outputs
|
126
|
+
|
127
|
+
### `get nodes`
|
128
|
+
```plaintext
|
129
|
+
Network full map reported by <0xai_Amfnbt3N-qg2-qGtywZIPQBTVlAnoADVRmSAsdDhlQ-6>:
|
130
|
+
Address Alias Seen ago Last state Last probe Zone Supervisor
|
131
|
+
0 0xai_AkSf-Ocgg2ykXwF-QvsA3VRDbV7pK02T2vpYZeelkgVb 40ffd6d6a742 08:10:56 LOST STATUS 2024-12-23 17:47:00 UTC+2 False
|
132
|
+
...
|
133
|
+
```
|
134
|
+
|
135
|
+
### `get supervisors`
|
136
|
+
```plaintext
|
137
|
+
Supervisors reported by <0xai_AleLPKqUHV-iPc-76-rUvDkRWW4dFMIGKW1xFVcy65nH>:
|
138
|
+
Address Alias Seen ago Last state Last probe Zone Supervisor
|
139
|
+
0 0xai_Amfnbt3N-qg2-qGtywZIPQBTVlAnoADVRmSAsdDhlQ-6 nen-2 00:00:02 ONLINE 2024-12-24 02:06:03 UTC+2 True
|
140
|
+
...
|
141
|
+
```
|
142
|
+
|
143
|
+
### `config show`
|
144
|
+
```plaintext
|
145
|
+
NEP SDK folder: /root/.naeural
|
146
|
+
SDK Client address: 0xai_AjcIThkOqrPlp35-S8czHUOV-y4mnhksnLs8NGjTbmty
|
147
|
+
Current configuration (/root/.naeural/config):
|
148
|
+
|
149
|
+
EE_MQTT_HOST=r9092118.ala.eu-central-1.emqxsl.com
|
150
|
+
EE_MQTT_PORT=8883
|
151
|
+
EE_MQTT_USER=coreenaeural
|
152
|
+
EE_MQTT=<password>
|
153
|
+
...
|
154
|
+
```
|
155
|
+
|
156
|
+
## Notes
|
157
|
+
- Use `--verbose` or `-v` for detailed output on any command. This can be rather useful for debugging purposes.
|
158
|
+
- For help with any command or subcommand, append `-h` (e.g., `nepctl get nodes -h`).
|
159
|
+
|
@@ -0,0 +1,70 @@
|
|
1
|
+
"""
|
2
|
+
|
3
|
+
This demo starts a generic webapp and generates a dynamic URL that can be used to access the webapp.
|
4
|
+
For this demo, we will use a custom webapp that resides at a public repository.
|
5
|
+
|
6
|
+
"""
|
7
|
+
from os import environ
|
8
|
+
from naeural_client import Session, PLUGIN_SIGNATURES
|
9
|
+
|
10
|
+
|
11
|
+
if __name__ == "__main__":
|
12
|
+
session = Session()
|
13
|
+
|
14
|
+
nodes = [
|
15
|
+
environ.get("TARGET_NODE_1", "INSERT_YOUR_NODE_ADDRESS_HERE"),
|
16
|
+
environ.get("TARGET_NODE_2", "INSERT_YOUR_NODE_ADDRESS_HERE")
|
17
|
+
]
|
18
|
+
|
19
|
+
if isinstance(nodes, str):
|
20
|
+
nodes = [nodes]
|
21
|
+
|
22
|
+
for node in nodes:
|
23
|
+
session.wait_for_node(node)
|
24
|
+
|
25
|
+
# In case this is not provided and create_and_deploy_balanced_web_app is used an exception will be raised.
|
26
|
+
# In case this is not provided by the user, but create_webapp method is used, a unique URL will be generated by the ngrok service.
|
27
|
+
# Warning! create_webapp method does not support multiple nodes.
|
28
|
+
ngrok_edge_label = environ.get("NGROK_EDGE_LABEL", None)
|
29
|
+
|
30
|
+
# Defining the environment variables for the webapp.
|
31
|
+
port = 3000
|
32
|
+
env_vars = {
|
33
|
+
'APP_PORT': port,
|
34
|
+
'LOCAL_ADDRESS': '/edge_node/_local_cache/_data/local_address.txt'
|
35
|
+
}
|
36
|
+
|
37
|
+
# Defining the webapp setup commands.
|
38
|
+
setup_commands = [
|
39
|
+
"npm install"
|
40
|
+
]
|
41
|
+
|
42
|
+
# Defining the assets of the application.
|
43
|
+
assets = {
|
44
|
+
'operation': "clone",
|
45
|
+
"url": "https://github.com/NaeuralEdgeProtocol/demo-deploy-nodejs",
|
46
|
+
}
|
47
|
+
|
48
|
+
# Defining the webapp run commands.
|
49
|
+
run_command = "npm start"
|
50
|
+
|
51
|
+
# instance: PLUGIN_TYPES.CUSTOM_WEBAPI_01
|
52
|
+
session.create_and_deploy_balanced_web_app(
|
53
|
+
nodes=nodes,
|
54
|
+
name="Ratio1_WebApp_tutorial",
|
55
|
+
signature=PLUGIN_SIGNATURES.GENERIC_WEB_APP,
|
56
|
+
env_vars=env_vars,
|
57
|
+
port=port,
|
58
|
+
setup_commands=setup_commands,
|
59
|
+
run_command=run_command,
|
60
|
+
ngrok_edge_label=ngrok_edge_label,
|
61
|
+
assets=assets
|
62
|
+
)
|
63
|
+
|
64
|
+
# Observation:
|
65
|
+
# next code is not mandatory - it is used to keep the session open and cleanup the resources
|
66
|
+
# in production, you would not need this code as the script can close after the pipeline will be sent
|
67
|
+
session.run(
|
68
|
+
wait=True, # wait for the user to stop the execution
|
69
|
+
close_pipelines=True # when the user stops the execution, the remote edge-node pipelines will be closed
|
70
|
+
)
|
@@ -1,26 +0,0 @@
|
|
1
|
-
"""
|
2
|
-
|
3
|
-
This demo starts a generic webapp and generates a dynamic URL that can be used to access the webapp.
|
4
|
-
For this demo, we will use a custom webapp that resides at a public repository.
|
5
|
-
|
6
|
-
"""
|
7
|
-
|
8
|
-
from naeural_client import CustomPluginTemplate, Session, PLUGIN_TYPES
|
9
|
-
|
10
|
-
|
11
|
-
if __name__ == "__main__":
|
12
|
-
session = Session()
|
13
|
-
|
14
|
-
node = "INSERT_YOUR_NODE_ADDRESS_HERE"
|
15
|
-
session.wait_for_node(node)
|
16
|
-
|
17
|
-
instance: PLUGIN_TYPES.CUSTOM_WEBAPI_01
|
18
|
-
pipeline, instance = session.create_web_app(
|
19
|
-
|
20
|
-
)
|
21
|
-
|
22
|
-
|
23
|
-
url = pipeline.deploy()
|
24
|
-
|
25
|
-
print(f"Webapp is now available at: {url}")
|
26
|
-
|
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
|
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-2.5.9 → naeural_client-2.5.11}/naeural_client/default/instance/net_mon_01_plugin.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/default/session/mqtt_session.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/base/base_formatter.py
RENAMED
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/default/__init__.py
RENAMED
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/default/a_dummy.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/default/default.py
RENAMED
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/io_formatter/io_formatter_manager.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/__init__.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
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/process_mixin.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/timers_mixin.py
RENAMED
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/naeural_client/logging/logger_mixins/upload_mixin.py
RENAMED
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/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
|
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/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
|
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-2.5.9 → naeural_client-2.5.11}/tutorials/video_presentation/1. hello_world.ipynb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/_tutorials/4. real_time_custom_code_2.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-2.5.9 → naeural_client-2.5.11}/xperimental/decentralized/chain_dist_example.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
|