Page Properties | |||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
🎯 Objective
There are plenty of bugs from customers that existing logic is not working well.
...
Requirement | User Story | Importance | Jira Issue | Notes | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
We would like to use FUSE for SQS registration. | Need to implement a new feature on the FUSE side for supporting SQS registration without EventBridge |
|
| As a temporal workaround we can create it manually. | ||||||||||||||
Implement Lambda webhooks handler. | Most of the events will be handled using lambdas but some of them(app installed & uninstalled) should be redirected to the SQS. |
|
| Update page relations based on the following events(confluence webhooks) on the backend side:
| ||||||||||||||
Implement ECS service. | Need to scan all Confluence pages and update link references. |
| Background job must scan all confluence pages since the last re-index date if exists and update page relations. |
\uD83C\uDFA8 New design high level architecture:
...
Lambda webhooks handler
This is an entry point for the whole scheme and there two key ideas.
[1] When we receive page content related updates
Page content related webhooks that we plan to support:
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
we need to check a content of a page and identify external links and if there any we need to update storage through a REST API.
[2] Long running events
When we receive:
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
Event example:
Code Block | ||
---|---|---|
| ||
connect_addon_enabled {
key: 'net.customware.confluence.plugin.linking',
clientKey: 'f...8',
publicKey: 'MIIBI...AB',
serverVersion: '6452',
pluginsVersion: '1000.0.0.df206a1a35d4',
baseUrl: 'https://appfire-supercat.atlassian.net/wiki',
productType: 'confluence',
description: 'Atlassian Confluence at https://appfire-supercat.atlassian.net/wiki',
eventType: 'enabled',
displayUrl: 'https://appfire-supercat.atlassian.net/wiki'
} |
ECS service
The idea is to
Open Questions
Question | Answer | Date Answered |
---|---|---|
Do we need to keep links for archived pages? | [most likely no, but…] |