Skip to content

Commit

Permalink
docs: peering integration guide
Browse files Browse the repository at this point in the history
Initial draft (repurposed the manging peering relationships admin page into a technical integration guide)
Completed a few tasks from #3139 as well, including the following:
- Place the peering integration doc within the Integration > Requirements section.
- Create a new section in Integration, called Deployment, and move the "Docker Compose" and "Helm and Kubernetes" pages into the section.
- Move Integration > Services so that it's a subsection of Deployment (e.g., Integration > Deployment > Services > auth service).
- The content in the "Manage peering relationships" page should become part of Brad's peering integration page. The "Manage" page should go away.
- Update sidenav's TOCs as needed
  • Loading branch information
brad-dow committed Dec 6, 2024
1 parent 497d160 commit a02e32a
Show file tree
Hide file tree
Showing 9 changed files with 330 additions and 37 deletions.
74 changes: 40 additions & 34 deletions packages/documentation/astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,10 @@ export default defineConfig({
label: 'Assets',
link: '/integration/requirements/assets'
},
{
label: 'Peers',
link: '/integration/requirements/peers'
},
{
label: 'Wallet addresses',
link: '/integration/requirements/wallet-addresses'
Expand All @@ -134,36 +138,6 @@ export default defineConfig({
}
]
},
{
label: 'Docker Compose',
link: '/integration/prod/docker-compose'
},
{
label: 'Helm and Kubernetes',
link: '/integration/prod/helm-k8s'
},
{
label: 'Services',
collapsed: true,
items: [
{
label: 'Auth service',
link: '/integration/services/auth-service'
},
{
label: 'Backend service',
link: '/integration/services/backend-service'
},
{
label: 'Frontend service',
link: '/integration/services/frontend-service'
},
{
label: 'Token introspection',
link: '/integration/services/token-introspection'
}
]
},
{
label: 'Test locally',
collapsed: true,
Expand All @@ -181,6 +155,42 @@ export default defineConfig({
link: '/integration/playground/testnet'
}
]
},
{
label: 'Deployment',
collapsed: true,
items: [
{
label: 'Services',
collapsed: true,
items: [
{
label: 'Auth service',
link: '/integration/deployment/services/auth-service'
},
{
label: 'Backend service',
link: '/integration/deployment/services/backend-service'
},
{
label: 'Frontend service',
link: '/integration/deployment/services/frontend-service'
},
{
label: 'Token introspection',
link: '/integration/deployment/services/token-introspection'
}
]
},
{
label: 'Docker Compose',
link: '/integration/deployment/docker-compose'
},
{
label: 'Helm and Kubernetes',
link: '/integration/deployment/helm-k8s'
},
]
}
]
},
Expand All @@ -192,10 +202,6 @@ export default defineConfig({
label: 'Rafiki Admin',
link: '/admin/admin-user-guide'
},
{
label: 'Manage peering relationships',
link: '/admin/manage-peering'
},
{
label: 'Manage liquidity',
link: '/admin/manage-liquidity'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Some of the responsibilities of a connector include:

- Authenticating packets against ILP account credentials.
- Forwarding packets to a sender or receiver.
- Rejecting a packet for any number of reasons, including expiration, insufficient liquidity, rate limit exceeded, or if the amount exceeds the `maxPacketAmount` [agreed to](/admin/manage-peering) by the connector and its peer.
- Rejecting a packet for any number of reasons, including expiration, insufficient liquidity, rate limit exceeded, or if the amount exceeds the `maxPacketAmount` [agreed to](/integration/requirements/peers#prerequisites) by the connector and its peer.
- Converting currencies.
- Fulfilling packets with an internal STREAM server.

Expand All @@ -48,7 +48,7 @@ The `backend` service includes an HTTP server listening on the configured `CONNE
Similarly, if a packet's destination address corresponds to a peer, your connector will forward the packet to your peer over HTTP, along with your peer's outgoing HTTP `authToken`.

:::note[Auth tokens]
You and your peer should have exchanged incoming and outgoing auth tokens as part of establishing your [peering relationship](/admin/manage-peering).
You and your peer should have exchanged incoming and outgoing auth tokens as part of establishing your [peering relationship](/integration/requirements/peers#prerequisites).
:::

A packet can either continue on to your peer via HTTP or terminate at your Rafiki instance's STREAM server. If the packet terminates at your STREAM server, your connector will attempt to extract and decode the payment tag from the packet's destination address. When your connector successfully matches the tag with a locally managed wallet address or incoming payment, the connector will not forward the packet. Instead, it will credit the corresponding balance and track the total amount received in Redis to support STREAM receipts. Packets addressed to a wallet address happen via SPSP.
Expand Down
Loading

0 comments on commit a02e32a

Please sign in to comment.