diff --git a/docs/slim/slim-a2a.md b/docs/slim/slim-a2a.md index d7b32a5..e5afb4e 100644 --- a/docs/slim/slim-a2a.md +++ b/docs/slim/slim-a2a.md @@ -8,15 +8,15 @@ SLIMRPC is a framework that enables Protocol Buffers (protobuf) Remote Procedure To compile a protobuf file and generate the clients and service stub you can use the [SLIMRPC compiler](./slim-slimrpc-compiler.md). This works in a similar way to the protoc compiler. -For SLIM A2A we compiled the [a2a.proto](https://github.com/a2aproject/A2A/blob/main/specification/grpc/a2a.proto) file using the SLIM RPC compiler. The generated code is in [a2a_pb2_slimrpc.py](https://github.com/agntcy/slim/tree/slim-v0.6.0/data-plane/python/integrations/slima2a/examples/travel_planner_agent). +For SLIM A2A we compiled the [a2a.proto](https://github.com/a2aproject/A2A/blob/main/specification/grpc/a2a.proto) file using the SLIM RPC compiler. The generated code is in [a2a_pb2_slimrpc.py](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/integrations/slima2a/examples/travel_planner_agent). ## How to use SLIMA2A -Using SLIMA2A is very similar to using the standard A2A implementation. As a reference example here we use the [travel planner agent](https://github.com/a2aproject/a2a-samples/tree/main/samples/python/agents/travel_planner_agent) available on the A2A samples repository. The version adapted to use SLIM A2A can be found in [travel_planner_agent](https://github.com/agntcy/slim/tree/slim-v0.6.0/data-plane/python/integrations/slima2a/examples/travel_planner_agent) folder. In the following section, we highlight and explain the key difference between the standard and SLIM A2A implementations. +Using SLIMA2A is very similar to using the standard A2A implementation. As a reference example here we use the [travel planner agent](https://github.com/a2aproject/a2a-samples/tree/main/samples/python/agents/travel_planner_agent) available on the A2A samples repository. The version adapted to use SLIM A2A can be found in [travel_planner_agent](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/integrations/slima2a/examples/travel_planner_agent) folder. In the following section, we highlight and explain the key difference between the standard and SLIM A2A implementations. ### Travel Planner: Server -In this section we highlight the main differences between the SLIM A2A [server](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slima2a/examples/travel_planner_agent/server.py) implementation with respect to the original implementation in the A2A repository. +In this section we highlight the main differences between the SLIM A2A [server](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slima2a/examples/travel_planner_agent/server.py) implementation with respect to the original implementation in the A2A repository. 1. Import the SLIMRPC package. ```python @@ -76,7 +76,7 @@ Your A2A server is now ready to run on SLIM. ### Travel Planner: Client -These are the main differences between the [client](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slima2a/examples/travel_planner_agent/client.py) using SLIM A2A and the standard one. +These are the main differences between the [client](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/client.py) using SLIM A2A and the standard one. 1. Create a channel. This requires a configuration that is similar to the server ```python diff --git a/docs/slim/slim-authentication.md b/docs/slim/slim-authentication.md index 8723735..15cbab7 100644 --- a/docs/slim/slim-authentication.md +++ b/docs/slim/slim-authentication.md @@ -12,7 +12,7 @@ SLIM supports JWT (JSON Web Tokens) for identity management. Tokens can come from an external identity provider or can be generated by the SLIM nodes directly if you provide the necessary private key for signing the tokens and public key for verification. Check the [Identity -Test](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/tests/test_identity.py) +Test](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/tests/test_identity.py) for an example of how to use JWT tokens with SLIM if you have your own keys. If you are running your SLIM clients in a Kubernetes environment, using @@ -41,7 +41,7 @@ This section shows how to use SPIRE with SLIM to manage client identities. The f If you already have a Kubernetes cluster or an existing SPIRE deployment, you can adapt only the relevant subsections. -This tutorial is based on the [SLIM examples](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples). +This tutorial is based on the [SLIM examples](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples). ### Prerequisites diff --git a/docs/slim/slim-controller.md b/docs/slim/slim-controller.md index a7e2556..208b853 100644 --- a/docs/slim/slim-controller.md +++ b/docs/slim/slim-controller.md @@ -328,7 +328,7 @@ tls: key_file: "/path/to/client.key" ``` -The `server` endpoint should point to a [SLIM Control](https://github.com/agntcy/slim/tree/slim-v0.7.0/control-plane/control-plane) endpoint which is a central service managing SLIM node configurations. +The `server` endpoint should point to a [SLIM Control](https://github.com/agntcy/slim/tree/slim-v1.0.0/control-plane/control-plane) endpoint which is a central service managing SLIM node configurations. ### Commands @@ -398,7 +398,7 @@ slimctl controller route add org/default/alice/0 via connection_config.json slimctl controller route del org/default/alice/0 via http://localhost:46367 ``` -For full reference of connection_config.json, see the [client-config-schema.json](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/core/config/src/grpc/schema/client-config.schema.json). +For full reference of connection_config.json, see the [client-config-schema.json](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/core/config/src/grpc/schema/client-config.schema.json). ### Managing SLIM Nodes Directly diff --git a/docs/slim/slim-group-tutorial.md b/docs/slim/slim-group-tutorial.md index 5826478..197aca7 100644 --- a/docs/slim/slim-group-tutorial.md +++ b/docs/slim/slim-group-tutorial.md @@ -6,7 +6,7 @@ participants. Messages are sent to a shared channel where every member can read and write. All messages are end-to-end encrypted using the [MLS protocol](https://datatracker.ietf.org/doc/html/rfc9420). This tutorial is based on the -[group.py](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) +[group.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) example in the SLIM repo. ## Key Features @@ -26,7 +26,7 @@ Every participant in a group requires a unique identity for authentication and f ### Identity -Each participant must have a unique identity. This is required to set up end-to-end encryption using the MLS protocol. The identity can be a JWT or shared secret. For simplicity, this example uses a shared secret. For JWT-based identity, see the [tutorial](https://github.com/agntcy/slim/tree/slim-v0.7.0/data-plane/python/bindings/examples#running-in-kubernetes-spire--jwt) in the SLIM repository. +Each participant must have a unique identity. This is required to set up end-to-end encryption using the MLS protocol. The identity can be a JWT or shared secret. For simplicity, this example uses a shared secret. For JWT-based identity, see the [tutorial](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/bindings/examples#running-in-kubernetes-spire--jwt) in the SLIM repository. The Python objects managing the identity are called `IdentityProvider` and `IdentityVerifier`. The `IdentityProvider` provides the identity, while the `IdentityVerifier` verifies it: @@ -45,12 +45,12 @@ def shared_secret_identity(identity: str, secret: str): ``` This is a helper function defined in -[common.py](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/common.py#L85) +[common.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/common.py#L85) that can be used to create a `IdentityProvider` and `IdentityVerifier` from two input strings. ### SLIM App -The provider and verifier are used to create a local SLIM application that can exchange messages with other participants via the SLIM network. To create the SLIM app, use the helper function defined in [common.py](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/common.py#L289): +The provider and verifier are used to create a local SLIM application that can exchange messages with other participants via the SLIM network. To create the SLIM app, use the helper function defined in [common.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/common.py#L289): ```python async def create_local_app( @@ -195,7 +195,7 @@ In this example, we use the shared secret option. Now that you know how to set up a SLIM application, we can see how to create a group where multiple participants can exchange messages. We start by showing how to create a group session using the Python bindings. -In this setting, one participant acts as moderator: it creates the group session and invites participants by sending invitation control messages. A detailed description of group sessions and the invitation process is available [here](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/SESSION.md). +In this setting, one participant acts as moderator: it creates the group session and invites participants by sending invitation control messages. A detailed description of group sessions and the invitation process is available [here](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/SESSION.md). ### Creating the Group Session and Inviting Members @@ -271,10 +271,10 @@ if chat_channel and invites: ``` This code comes from the -[group.py](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) +[group.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) example. The local application is created using the helper function shown earlier. The channel name (the logical group topic) is produced via the -[split_id](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/common.py#L63) +[split_id](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/common.py#L63) helper by parsing the `remote` parameter. A new group session is created by calling `local_app.create_session(...)` with two parameters: @@ -346,7 +346,7 @@ The moderator already holds this information and therefore reuses the existing Participants (including the moderator) then call `ctx, payload = await session.get_message()` to receive messages. `payload` contains the raw message bytes and `ctx` is a -[MessageContext](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/slim_bindings/session.py) +[MessageContext](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/slim_bindings/session.py) with source, destination, message type, and metadata. ### Publish Messages to the Session @@ -414,7 +414,7 @@ only its local session is closed. Now we will show how to run a new group session and how to enable group communication on top of SLIM. The full code can be found in -[group.py](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) +[group.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) in the SLIM repo. To run the example, follow the steps listed here: #### Run SLIM @@ -424,7 +424,7 @@ up a SLIM instance representing the SLIM network. We use the pre-built docker image for this purpose. First execute this command to create the SLIM configuration file. Details about -the [configuration](https://github.com/agntcy/slim/tree/slim-v0.7.0/data-plane/config) +the [configuration](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/config) can be found in the SLIM repo. ```bash @@ -464,7 +464,7 @@ You can run the SLIM instance using Docker: ```bash docker run -it \ -v ./config.yaml:/config.yaml -p 46357:46357 \ - ghcr.io/agntcy/slim:0.7.0 /slim --config /config.yaml + ghcr.io/agntcy/slim:1.0.0 /slim --config /config.yaml ``` If everything goes fine, you should see an output like this one: @@ -566,7 +566,7 @@ With the controller, you do not need to set up a moderator in your application. ### Run the Group Communication Example Now we will show how to set up a group using the SLIM Controller. The reference code for the -application is still [group.py](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py). To run this example, follow the steps listed here. +application is still [group.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py). To run this example, follow the steps listed here. #### Run the SLIM Controller @@ -608,7 +608,7 @@ Start the controller with Docker: ```bash docker run -it \ -v ./config-controller.yaml:/config.yaml -v .:/db -p 50051:50051 -p 50052:50052 \ - ghcr.io/agntcy/slim/control-plane:0.7.0 --config /config.yaml + ghcr.io/agntcy/slim/control-plane:1.0.0 --config /config.yaml ``` If everything goes fine, you should see an output like this: @@ -669,7 +669,7 @@ This starts a SLIM node that connects to the controller: ```bash docker run -it \ -v ./config-slim.yaml:/config.yaml -p 46357:46357 \ - ghcr.io/agntcy/slim:0.7.0 /slim --config /config.yaml + ghcr.io/agntcy/slim:1.0.0 /slim --config /config.yaml ``` If everything goes fine, you should see an output like this one: @@ -769,7 +769,7 @@ if [ "$OS" != "linux" ] && [ "$OS" != "darwin" ]; then fi # Construct the download URL -VERSION="v0.7.0" +VERSION="v1.0.0" COMMIT_HASH="35c37ab" ARCHIVE_NAME="slimctl_slimctl-${VERSION}-SNAPSHOT-${COMMIT_HASH}_${OS}_${ARCH}.tar.gz" DOWNLOAD_URL="https://github.com/agntcy/slim/releases/download/slimctl-${VERSION}/${ARCHIVE_NAME}" diff --git a/docs/slim/slim-group.md b/docs/slim/slim-group.md index eb19c20..7c1dde9 100644 --- a/docs/slim/slim-group.md +++ b/docs/slim/slim-group.md @@ -24,7 +24,7 @@ of the application logic) or serve solely as a channel moderator. This section provides the basic steps to follow, along with Python code snippets, for setting up a group session. -The full code is available in the [group.py](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) example in the SLIM repository. +The full code is available in the [group.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) example in the SLIM repository. ### Create the Channel diff --git a/docs/slim/slim-howto.md b/docs/slim/slim-howto.md index 337983a..97ec744 100644 --- a/docs/slim/slim-howto.md +++ b/docs/slim/slim-howto.md @@ -21,7 +21,7 @@ installed using the provided container image, with #### Using Docker ```bash -docker pull ghcr.io/agntcy/slim:v0.7.0 +docker pull ghcr.io/agntcy/slim:v1.0.0 cat << EOF > ./config.yaml tracing: @@ -47,7 +47,7 @@ EOF docker run -it \ -v ./config.yaml:/config.yaml -p 46357:46357 \ - ghcr.io/agntcy/slim:v0.7.0 /slim --config /config.yaml + ghcr.io/agntcy/slim:v1.0.0 /slim --config /config.yaml ``` #### Using Cargo @@ -85,11 +85,11 @@ EOF We also provide a Helm chart for deploying SLIM in Kubernetes environments. ```bash -helm pull oci://ghcr.io/agntcy/slim/helm/slim --version v0.7.0 +helm pull oci://ghcr.io/agntcy/slim/helm/slim --version v1.0.0 ``` For information about how to use the Helm chart, see the -[values.yaml](https://github.com/agntcy/slim/blob/slim-v0.7.0/charts/slim/values.yaml) +[values.yaml](https://github.com/agntcy/slim/blob/slim-v1.0.0/charts/slim/values.yaml) ### SLIM Controller @@ -100,7 +100,7 @@ provided container image or with [Helm](https://helm.sh/). ### Using Docker ```bash -docker pull ghcr.io/agntcy/slim/control-plane:v0.7.0 +docker pull ghcr.io/agntcy/slim/control-plane:v1.0.0 cat << EOF > ./slim-control-plane.yaml northbound: @@ -129,14 +129,14 @@ EOF docker run -it \ -v ./slim-control-plane.yaml:/config.yaml -v .:/db \ -p 50051:50051 -p 50052:50052 \ - ghcr.io/agntcy/slim/control-plane:v0.7.0 \ + ghcr.io/agntcy/slim/control-plane:v1.0.0 \ -config /config.yaml ``` ### Using Helm ```bash -helm pull oci://ghcr.io/agntcy/slim/helm/slim-control-plane --version v0.7.0 +helm pull oci://ghcr.io/agntcy/slim/helm/slim-control-plane --version v1.0.0 ``` ### SLIM Bindings @@ -154,18 +154,18 @@ pip install slim-bindings ```toml [project] ... -dependencies = ["slim-bindings>=0.7.0"] +dependencies = ["slim-bindings>=1.0.0"] ``` A tutorial on how to use the bindings in an application can be found in the [messaging layer documentation](./slim-data-plane.md). Otherwise examples are available in the -[SLIM Repository](https://github.com/agntcy/slim/tree/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples). +[SLIM Repository](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples). ### Slimctl `slimctl` is a command-line tool for managing SLIM Nodes and Controllers. It can be downloaded from the [releases -page](https://github.com/agntcy/slim/releases/tag/slimctl-v0.7.0) in the SLIM repo. +page](https://github.com/agntcy/slim/releases/tag/slimctl-v1.0.0) in the SLIM repo. #### Installation @@ -174,7 +174,7 @@ Choose the appropriate installation method for your operating system: === "macOS (Apple Silicon)" ```bash - curl -LO https://github.com/agntcy/slim/releases/download/slimctl-v0.7.0/slimctl_slimctl-v0.7.0-SNAPSHOT-35c37ab_darwin_arm64.tar.gz + curl -LO https://github.com/agntcy/slim/releases/download/slimctl-v1.0.0/slimctl_slimctl-v1.0.0-SNAPSHOT-35c37ab_darwin_arm64.tar.gz sudo mv slimctl-darwin-arm64 /usr/local/bin/slimctl sudo chmod +x /usr/local/bin/slimctl ``` @@ -191,7 +191,7 @@ Choose the appropriate installation method for your operating system: === "Linux (AMD64)" ```bash - curl -LO https://github.com/agntcy/slim/releases/download/slimctl-v0.7.0/slimctl_slimctl-v0.7.0-SNAPSHOT-35c37ab_linux_amd64.tar.gz + curl -LO https://github.com/agntcy/slim/releases/download/slimctl-v1.0.0/slimctl_slimctl-v1.0.0-SNAPSHOT-35c37ab_linux_amd64.tar.gz sudo mv slimctl-linux-amd64 /usr/local/bin/slimctl sudo chmod +x /usr/local/bin/slimctl ``` diff --git a/docs/slim/slim-mcp.md b/docs/slim/slim-mcp.md index b6aa6c2..82e8bf2 100644 --- a/docs/slim/slim-mcp.md +++ b/docs/slim/slim-mcp.md @@ -30,10 +30,10 @@ architecture. In this section of the tutorial, we implement and deploy two sample applications: -- A [LlamaIndex agent](https://github.com/agntcy/slim/tree/slim-v0.7.0/data-plane/python/integrations/slim-mcp/slim_mcp/examples/llamaindex_time_agent) +- A [LlamaIndex agent](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/integrations/slim-mcp/slim_mcp/examples/llamaindex_time_agent) that communicates with an MCP server over SLIM to perform time queries and timezone conversions. - An [MCP time - server](https://github.com/agntcy/slim/tree/slim-v0.7.0/data-plane/python/integrations/slim-mcp/slim_mcp/examples/mcp_server_time) that implements SLIM as its transport protocol and processes requests from the LlamaIndex agent. + server](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/integrations/slim-mcp/slim_mcp/examples/mcp_server_time) that implements SLIM as its transport protocol and processes requests from the LlamaIndex agent. ### Prerequisites diff --git a/docs/slim/slim-rpc.md b/docs/slim/slim-rpc.md index ef2b2e6..5a552e6 100644 --- a/docs/slim/slim-rpc.md +++ b/docs/slim/slim-rpc.md @@ -24,7 +24,7 @@ documentation](./slim-slimrpc-compiler.md). In SLIMRPC, each service and its individual RPC handlers are assigned a SLIM name, facilitating efficient message routing and processing. Consider the [example -protobuf](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/example.proto) +protobuf](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/example.proto) definition, which defines four distinct services: ```proto @@ -95,7 +95,7 @@ standard gRPC. This section provides a detailed walkthrough of a basic SLIMRPC client-server interaction, leveraging the simple example provided in -[example](https://github.com/agntcy/slim/tree/slim-v0.6.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple) +[example](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple) folder. ### Generated Code @@ -104,9 +104,9 @@ The foundation of this example is the `example.proto` file, which is a standard Protocol Buffers definition file. This file is compiled using the [SLIMRPC compiler](./slim-slimrpc-compiler.md) to generate the necessary Python stub code. The generated code is available in two files: -[example_pb2.py](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/types/example_pb2.py) +[example_pb2.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/types/example_pb2.py) and -[example_pb2_slimrpc.py](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/types/example_pb2_slimrpc.py). +[example_pb2_slimrpc.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/types/example_pb2_slimrpc.py). Specifically, `example_pb2_slimrpc.py` contains the SLIMRPC-specific stubs for both client and server implementations. Below are the key classes and functions generated by the compiler: @@ -216,7 +216,7 @@ def add_TestServicer_to_server(servicer, server: slimrpc.Server): ### Server implementation The server-side logic is defined in -[server.py](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/server.py). +[server.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/server.py). Similar to standard gRPC implementations, the core service functionality is provided by the TestService class, which inherits from TestServicer (as introduced in the previous section). This class contains the concrete @@ -304,7 +304,7 @@ available. ### Client implementation The client-side implementation, found in -[client.py](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/client.py), +[client.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/examples/simple/client.py), largely mirrors the structure of a standard gRPC client. The primary distinction and SLIM-specific aspect lies in the creation of the SLIMRPC channel: @@ -355,7 +355,7 @@ details, as these aspects are handled automatically by SLIMRPC and SLIM. All RPC services underneath utilize a sticky point-to-point session. The SLIM session creation is implemented in inside SLIMRPC in -[channel.py](https://github.com/agntcy/slim/blob/slim-v0.6.0/data-plane/python/integrations/slimrpc/slimrpc/channel.py): +[channel.py](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/integrations/slimrpc/slimrpc/channel.py): ```python # Create a session diff --git a/docs/slim/slim-session.md b/docs/slim/slim-session.md index a52dc70..4a3fefa 100644 --- a/docs/slim/slim-session.md +++ b/docs/slim/slim-session.md @@ -3,7 +3,7 @@ This document explains the SLIM session layer and the two supported session types. It helps you understand the two session interfaces, reliability, and security trade‑offs. -The SLIM repository ships with practical, runnable [examples](https://github.com/agntcy/slim/tree/slim-v0.7.0/data-plane/python/bindings/examples) that demonstrate how to create sessions and exchange messages between applications using the Python bindings. +The SLIM repository ships with practical, runnable [examples](https://github.com/agntcy/slim/tree/slim-v1.0.0/data-plane/python/bindings/examples) that demonstrate how to create sessions and exchange messages between applications using the Python bindings. ## Point-to-Point Session @@ -118,9 +118,9 @@ await session.publish(payload) ### Point-to-Point Example -This [example](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/point_to_point.py) walks through the creation of a point-to-point session. When running the point-to-point example multiple times, the session binds to different running instances, while the message stream always sticks to the same endpoint. +This [example](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/point_to_point.py) walks through the creation of a point-to-point session. When running the point-to-point example multiple times, the session binds to different running instances, while the message stream always sticks to the same endpoint. -The example demonstrates how to publish messages, enable reliability, and enable MLS for end‑to‑end security. The associated [README](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/README_point_to_point.md) shows more information and how to run the example using the Taskfile provided in the repository. +The example demonstrates how to publish messages, enable reliability, and enable MLS for end‑to‑end security. The associated [README](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/README_point_to_point.md) shows more information and how to run the example using the Taskfile provided in the repository. ## Group Session @@ -371,4 +371,4 @@ stops, all participants are removed from the group. ### Group Example -This [example](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) demonstrates how to create a group session, invite participants, and (if enabled) establish an MLS group for end-to-end encryption. It also shows how to broadcast messages to all current members and handle inbound group messages. The associated [README](https://github.com/agntcy/slim/blob/slim-v0.7.0/data-plane/python/bindings/examples/src/slim_bindings_examples/README_group.md) shows more information and how to run the example using the Taskfile. +This [example](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/group.py) demonstrates how to create a group session, invite participants, and (if enabled) establish an MLS group for end-to-end encryption. It also shows how to broadcast messages to all current members and handle inbound group messages. The associated [README](https://github.com/agntcy/slim/blob/slim-v1.0.0/data-plane/python/bindings/examples/src/slim_bindings_examples/README_group.md) shows more information and how to run the example using the Taskfile.