Add Activepieces integration for workflow automation

- Add Activepieces fork with SmoothSchedule custom piece
- Create integrations app with Activepieces service layer
- Add embed token endpoint for iframe integration
- Create Automations page with embedded workflow builder
- Add sidebar visibility fix for embed mode
- Add list inactive customers endpoint to Public API
- Include SmoothSchedule triggers: event created/updated/cancelled
- Include SmoothSchedule actions: create/update/cancel events, list resources/services/customers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
poduck
2025-12-18 22:59:37 -05:00
parent 9848268d34
commit 3aa7199503
16292 changed files with 1284892 additions and 4708 deletions

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "Offener Standard für interoperable, dezentralisierte Echtzeit-Kommunikation",
"Home Server": "Home-Server",
"Access Token": "Zugangs-Token",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n Um Zugangs-Token & Home Server zu erhalten:\n\n 1. Loggen Sie sich in das Konto ein, für das Sie das Zugangs-Token von Element erhalten möchten.\n 2. Klicken Sie auf den Namen in der linken oberen Ecke des Bildschirms und wählen Sie dann \"Einstellungen\" aus dem Dropdown-Menü.\n 3. Klicken Sie im Einstellungsdialog auf die Registerkarte \"Hilfe & Über\" auf der linken Seite des Bildschirms.\n . Scrollen Sie nach unten auf der Seite und klicken Sie auf den \"Click to reveal\" Teil des \"Access Token\" Abschnitts.\n 5. Kopieren Sie Ihre Zugangs-Token & Home Server URL und fügen Sie sie in die untenstehenden Felder ein.\n ",
"Send Message": "Nachricht senden",
"Custom API Call": "Eigener API-Aufruf",
"Send a message to a room": "Sende eine Nachricht an einen Raum",
"Make a custom API call to a specific endpoint": "Einen benutzerdefinierten API-Aufruf an einen bestimmten Endpunkt machen",
"Room Alias": "Raum-Alias",
"Message": "Nachricht",
"Method": "Methode",
"Headers": "Kopfzeilen",
"Query Parameters": "Abfrageparameter",
"Body": "Körper",
"Response is Binary ?": "Antwort ist binär?",
"No Error on Failure": "Kein Fehler bei Fehler",
"Timeout (in seconds)": "Timeout (in Sekunden)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Kopieren Sie es aus Raumeinstellungen -> Fortgeschrittene -> Raumadressen -> Hauptadresse",
"The message to send (markdown)": "Die zu sendende Nachricht (Markdown)",
"Authorization headers are injected automatically from your connection.": "Autorisierungs-Header werden automatisch von Ihrer Verbindung injiziert.",
"Enable for files like PDFs, images, etc..": "Aktivieren für Dateien wie PDFs, Bilder, etc..",
"GET": "ERHALTEN",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "LÖSCHEN",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "Estándar abierto para comunicación interoperable, descentralizada, en tiempo real",
"Home Server": "Servidor Home",
"Access Token": "Token de acceso",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the fields below.\n ",
"Send Message": "Enviar mensaje",
"Custom API Call": "Llamada API personalizada",
"Send a message to a room": "Enviar un mensaje a una sala",
"Make a custom API call to a specific endpoint": "Hacer una llamada API personalizada a un extremo específico",
"Room Alias": "Alias de sala",
"Message": "Mensaje",
"Method": "Método",
"Headers": "Encabezados",
"Query Parameters": "Parámetros de consulta",
"Body": "Cuerpo",
"Response is Binary ?": "¿Respuesta es binaria?",
"No Error on Failure": "No hay ningún error en fallo",
"Timeout (in seconds)": "Tiempo de espera (en segundos)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Copiar desde la configuración de la habitación -> avanzado-> direcciones de la sala -> dirección principal",
"The message to send (markdown)": "El mensaje a enviar (markdown)",
"Authorization headers are injected automatically from your connection.": "Las cabeceras de autorización se inyectan automáticamente desde tu conexión.",
"Enable for files like PDFs, images, etc..": "Activar para archivos como PDFs, imágenes, etc.",
"GET": "RECOGER",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "BORRAR",
"HEAD": "LIMPIO"
}

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "Norme ouverte pour la communication interopérable, décentralisée et en temps réel",
"Home Server": "Serveur Home",
"Access Token": "Jeton d'accès",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the fields below.\n ",
"Send Message": "Envoyer un message",
"Custom API Call": "Appel API personnalisé",
"Send a message to a room": "Envoyer un message à une salle",
"Make a custom API call to a specific endpoint": "Passez un appel API personnalisé à un point de terminaison spécifique",
"Room Alias": "Alias de la salle",
"Message": "Message",
"Method": "Méthode",
"Headers": "En-têtes",
"Query Parameters": "Paramètres de requête",
"Body": "Corps",
"Response is Binary ?": "La réponse est Binaire ?",
"No Error on Failure": "Aucune erreur en cas d'échec",
"Timeout (in seconds)": "Délai d'attente (en secondes)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Copier depuis les paramètres de la salle -> Avancé -> Adresses de la salle -> Adresse principale",
"The message to send (markdown)": "Le message à envoyer (markdown)",
"Authorization headers are injected automatically from your connection.": "Les en-têtes d'autorisation sont injectés automatiquement à partir de votre connexion.",
"Enable for files like PDFs, images, etc..": "Activer pour les fichiers comme les PDFs, les images, etc.",
"GET": "OBTENIR",
"POST": "POSTER",
"PATCH": "PATCH",
"PUT": "EFFACER",
"DELETE": "SUPPRIMER",
"HEAD": "TÊTE"
}

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "相互運用性、分散化、リアルタイム通信のためのオープンな標準",
"Home Server": "ホームサーバー",
"Access Token": "アクセストークン",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the fields below.\n ",
"Send Message": "メッセージを送信",
"Custom API Call": "カスタムAPI通話",
"Send a message to a room": "ルームにメッセージを送信する",
"Make a custom API call to a specific endpoint": "特定のエンドポイントへのカスタム API コールを実行します。",
"Room Alias": "部屋のエイリアス",
"Message": "メッセージ",
"Method": "方法",
"Headers": "ヘッダー",
"Query Parameters": "クエリパラメータ",
"Body": "本文",
"Response is Binary ?": "応答はバイナリですか?",
"No Error on Failure": "失敗時にエラーはありません",
"Timeout (in seconds)": "タイムアウト(秒)",
"Copy it from room settings -> advanced -> room addresses -> main address": "部屋設定からコピー→詳細→部屋住所→メインアドレス",
"The message to send (markdown)": "送信するメッセージ (マークダウン)",
"Authorization headers are injected automatically from your connection.": "認証ヘッダは接続から自動的に注入されます。",
"Enable for files like PDFs, images, etc..": "PDF、画像などのファイルを有効にします。",
"GET": "取得",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "削除",
"HEAD": "頭"
}

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "Open standaard voor interoperabel en gedecentraliseerd, real-time communicatie",
"Home Server": "Thuis server",
"Access Token": "Toegangs-token",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n Om toegangstoken & Home server te krijgen:\n\n 1. Log in op het account dat je een toegangstoken wilt krijgen voor Element.\n 2. Klik op de naam in de linkerbovenhoek van het scherm en selecteer vervolgens \"Instellingen\" in het uitklapmenu.\n 3. Klik in het dialoogvenster Instellingen op het tabblad \"Help & About\" aan de linkerkant van het scherm.\n 4. Scroll naar de onderkant van de pagina en klik op het \"klik om te onthullen\" gedeelte van de \"Toegang token\" sectie.\n 5. Kopieer uw toegangstoken & Home Server URL en plak ze in de onderstaande velden.\n ",
"Send Message": "Verstuur bericht",
"Custom API Call": "Custom API Call",
"Send a message to a room": "Stuur een bericht naar een kamer",
"Make a custom API call to a specific endpoint": "Maak een aangepaste API call naar een specifiek eindpunt",
"Room Alias": "Kamer alias",
"Message": "bericht",
"Method": "Methode",
"Headers": "Kopteksten",
"Query Parameters": "Query parameters",
"Body": "Lichaam",
"Response is Binary ?": "Antwoord is binair?",
"No Error on Failure": "Geen fout bij fout",
"Timeout (in seconds)": "Time-out (in seconden)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Kopieer het vanuit ruimte instellingen -> geavanceerde -> ruimte adressen -> hoofdadres",
"The message to send (markdown)": "Het te verzenden bericht (markdown)",
"Authorization headers are injected automatically from your connection.": "Autorisatie headers worden automatisch geïnjecteerd vanuit uw verbinding.",
"Enable for files like PDFs, images, etc..": "Inschakelen voor bestanden zoals PDF's, afbeeldingen etc..",
"GET": "KRIJG",
"POST": "POSTE",
"PATCH": "BEKIJK",
"PUT": "PUT",
"DELETE": "VERWIJDEREN",
"HEAD": "HOOFD"
}

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "Padrão aberto para comunicação interoperável, descentralizada, em tempo real",
"Home Server": "Servidor Inicial",
"Access Token": "Token de acesso",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the fields below.\n ",
"Send Message": "Enviar mensagem",
"Custom API Call": "Chamada de API personalizada",
"Send a message to a room": "Enviar uma mensagem para uma sala",
"Make a custom API call to a specific endpoint": "Faça uma chamada de API personalizada para um ponto de extremidade específico",
"Room Alias": "Apelido da Sala",
"Message": "mensagem",
"Method": "Método",
"Headers": "Cabeçalhos",
"Query Parameters": "Parâmetros da consulta",
"Body": "Conteúdo",
"Response is Binary ?": "A resposta é binária ?",
"No Error on Failure": "Nenhum erro no Failure",
"Timeout (in seconds)": "Tempo limite (em segundos)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Copie-o das configurações da sala -> avançado-> endereços do quarto -> endereço principal",
"The message to send (markdown)": "Mensagem a enviar (markdown)",
"Authorization headers are injected automatically from your connection.": "Os cabeçalhos de autorização são inseridos automaticamente a partir da sua conexão.",
"Enable for files like PDFs, images, etc..": "Habilitar para arquivos como PDFs, imagens, etc..",
"GET": "OBTER",
"POST": "POSTAR",
"PATCH": "COMPRAR",
"PUT": "COLOCAR",
"DELETE": "EXCLUIR",
"HEAD": "CABEÇA"
}

View File

@@ -0,0 +1,28 @@
{
"Matrix": "Матрица",
"Open standard for interoperable, decentralized, real-time communication": "Открытый стандарт для интерактивной, децентрализованной коммуникации в реальном времени",
"Home Server": "Домашний сервер",
"Access Token": "Маркер доступа",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n Получить токен и домашний сервер:\n\n 1. Войдите в аккаунт, который вы хотите получить токен доступа к элементу.\n 2. Нажмите на название в левом верхнем углу экрана, затем выберите «Настройки» из выпадающего меню.\n 3. В диалоговом окне \"Настройки\" нажмите на вкладку \"Справка\" в левой части экрана.\n 4. Прокрутите в нижнюю часть страницы и нажмите на кнопку \"Нажмите, чтобы открыть\" часть раздела \"Маркер доступа\".\n 5. Скопируйте ваш маркер доступа & домашний сервер и вставьте их в поля ниже.\n ",
"Send Message": "Отправить сообщение",
"Custom API Call": "Пользовательский вызов API",
"Send a message to a room": "Отправить сообщение в комнату",
"Make a custom API call to a specific endpoint": "Сделать пользовательский API вызов к определенной конечной точке",
"Room Alias": "Псевдоним комнаты",
"Message": "Сообщение",
"Method": "Метод",
"Headers": "Заголовки",
"Query Parameters": "Параметры запроса",
"Body": "Тело",
"No Error on Failure": "Нет ошибок при ошибке",
"Timeout (in seconds)": "Таймаут (в секундах)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Скопировать его из настроек комнаты -> дополнительные -> адреса комнаты -> основной адрес",
"The message to send (markdown)": "Сообщение для отправки (markdown)",
"Authorization headers are injected automatically from your connection.": "Заголовки авторизации включаются автоматически из вашего соединения.",
"GET": "ПОЛУЧИТЬ",
"POST": "ПОСТ",
"PATCH": "ПАТЧ",
"PUT": "ПОКУПИТЬ",
"DELETE": "УДАЛИТЬ",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "Open standard for interoperable, decentralized, real-time communication",
"Home Server": "Home Server",
"Access Token": "Access Token",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the fields below.\n ",
"Send Message": "Send Message",
"Custom API Call": "Custom API Call",
"Send a message to a room": "Send a message to a room",
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
"Room Alias": "Room Alias",
"Message": "Message",
"Method": "Method",
"Headers": "Headers",
"Query Parameters": "Query Parameters",
"Body": "Body",
"Response is Binary ?": "Response is Binary ?",
"No Error on Failure": "No Error on Failure",
"Timeout (in seconds)": "Timeout (in seconds)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Copy it from room settings -> advanced -> room addresses -> main address",
"The message to send (markdown)": "The message to send (markdown)",
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
"GET": "GET",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "DELETE",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,28 @@
{
"Matrix": "Matrix",
"Open standard for interoperable, decentralized, real-time communication": "Open standard for interoperable, decentralized, real-time communication",
"Home Server": "Home Server",
"Access Token": "Access Token",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the fields below.\n ",
"Send Message": "Send Message",
"Custom API Call": "Custom API Call",
"Send a message to a room": "Send a message to a room",
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
"Room Alias": "Room Alias",
"Message": "Message",
"Method": "Method",
"Headers": "Headers",
"Query Parameters": "Query Parameters",
"Body": "Body",
"No Error on Failure": "No Error on Failure",
"Timeout (in seconds)": "Timeout (in seconds)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Copy it from room settings -> advanced -> room addresses -> main address",
"The message to send (markdown)": "The message to send (markdown)",
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
"GET": "GET",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "DELETE",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,29 @@
{
"Open standard for interoperable, decentralized, real-time communication": "Open standard for interoperable, decentralized, real-time communication",
"Home Server": "Home Server",
"Access Token": "Access Token",
"\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the field": "\n To obtain access token & Home server:\n\n 1. Log in to the account you want to get the access token for on Element.\n 2. Click on the name in the top left corner of the screen, then select \"Settings\" from the dropdown menu.\n 3. In the Settings dialog, click the \"Help & About\" tab on the left side of the screen.\n 4. Scroll to the bottom of the page and click on the \"click to reveal\" part of the \"Access Token\" section.\n 5. Copy your access token & Home Server URL and paste them into the fields below.\n ",
"Send Message": "Send Message",
"Custom API Call": "自定义 API 呼叫",
"Send a message to a room": "Send a message to a room",
"Make a custom API call to a specific endpoint": "将一个自定义 API 调用到一个特定的终点",
"Room Alias": "Room Alias",
"Message": "Message",
"Method": "方法",
"Headers": "信头",
"Query Parameters": "查询参数",
"Body": "正文内容",
"Response is Binary ?": "Response is Binary ?",
"No Error on Failure": "失败时没有错误",
"Timeout (in seconds)": "超时(秒)",
"Copy it from room settings -> advanced -> room addresses -> main address": "Copy it from room settings -> advanced -> room addresses -> main address",
"The message to send (markdown)": "The message to send (markdown)",
"Authorization headers are injected automatically from your connection.": "授权头自动从您的连接中注入。",
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
"GET": "获取",
"POST": "帖子",
"PATCH": "PATCH",
"PUT": "弹出",
"DELETE": "删除",
"HEAD": "黑色"
}

View File

@@ -0,0 +1,56 @@
import { createCustomApiCallAction } from '@activepieces/pieces-common';
import {
PieceAuth,
Property,
createPiece,
} from '@activepieces/pieces-framework';
import { PieceCategory } from '@activepieces/shared';
import { sendMessage } from './lib/actions/send-message';
export const matrixAuth = PieceAuth.CustomAuth({
description: `
To obtain access token & Home server:
1. Log in to the account you want to get the access token for on Element.
2. Click on the name in the top left corner of the screen, then select "Settings" from the dropdown menu.
3. In the Settings dialog, click the "Help & About" tab on the left side of the screen.
4. Scroll to the bottom of the page and click on the "click to reveal" part of the "Access Token" section.
5. Copy your access token & Home Server URL and paste them into the fields below.
`,
props: {
base_url: Property.ShortText({
displayName: 'Home Server',
required: true,
}),
access_token: PieceAuth.SecretText({
displayName: 'Access Token',
required: true,
}),
},
required: true,
});
export const matrix = createPiece({
displayName: 'Matrix',
description:
'Open standard for interoperable, decentralized, real-time communication',
logoUrl: 'https://cdn.activepieces.com/pieces/matrix.png',
categories: [PieceCategory.COMMUNICATION],
minimumSupportedRelease: '0.30.0',
authors: ["MyWay","kishanprmr","MoShizzle","khaledmashaly","abuaboud"],
auth: matrixAuth,
actions: [
sendMessage,
createCustomApiCallAction({
baseUrl: (auth) => auth?(auth ).props .base_url: '',
auth: matrixAuth,
authMapping: async (auth) => ({
Authorization: `Bearer ${
(auth ).props .access_token
}`,
}),
}),
],
triggers: [],
});

View File

@@ -0,0 +1,37 @@
import { createAction, Property } from '@activepieces/pieces-framework';
import { getRoomId, sendMessage as sendMatrixMessage } from '../common/common';
import { matrixAuth } from '../..';
export const sendMessage = createAction({
auth: matrixAuth,
name: 'send_message',
displayName: 'Send Message',
description: 'Send a message to a room',
props: {
room_alias: Property.ShortText({
displayName: 'Room Alias',
description:
'Copy it from room settings -> advanced -> room addresses -> main address',
required: true,
}),
message: Property.LongText({
displayName: 'Message',
description: 'The message to send (markdown)',
required: true,
}),
},
async run({ auth, propsValue }) {
const baseUrl = auth.props.base_url.replace(/\/$/, '');
const accessToken = auth.props.access_token;
const roomId = (
await getRoomId(baseUrl, propsValue.room_alias, accessToken)
).body.room_id;
return await sendMatrixMessage(
baseUrl,
roomId,
accessToken,
propsValue.message
);
},
});

View File

@@ -0,0 +1,51 @@
import {
httpClient,
HttpMethod,
AuthenticationType,
HttpResponse,
} from '@activepieces/pieces-common';
import { marked } from 'marked';
export async function getRoomId(
baseUrl: string,
roomAlias: string,
accessToken: string
): Promise<HttpResponse> {
const response = httpClient.sendRequest({
method: HttpMethod.GET,
url: `${baseUrl}/_matrix/client/r0/directory/room/${encodeURIComponent(
roomAlias
)}`,
authentication: {
type: AuthenticationType.BEARER_TOKEN,
token: accessToken,
},
});
return response;
}
export async function sendMessage(
baseUrl: string,
roomId: string,
accessToken: string,
message: string
): Promise<HttpResponse> {
const response = httpClient.sendRequest({
method: HttpMethod.POST,
url:
`${baseUrl}/_matrix/client/r0/rooms/` + roomId + '/send/m.room.message',
authentication: {
type: AuthenticationType.BEARER_TOKEN,
token: accessToken,
},
body: {
msgtype: 'm.text',
body: message,
format: 'org.matrix.custom.html',
formatted_body: marked(message),
},
});
return response;
}

View File

@@ -0,0 +1,22 @@
---
title: 'Matrix'
description: ''
---
# How to obtain Internal room Id:
1- Right click on the room you want to get the ID from
2- Click on "Advanced"
3- Copy the Internal Room Id
---
## Triggers
TRIGGERS
---
## Actions
ACTIONS