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:
@@ -0,0 +1,44 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { HttpMethod } from '@activepieces/pieces-common';
|
||||
import { sevenAuth } from '../index';
|
||||
import { callSevenApi } from '../common';
|
||||
|
||||
export const lookup = createAction({
|
||||
auth: sevenAuth,
|
||||
name: 'lookup',
|
||||
displayName: 'Lookup Phone Numbers',
|
||||
description: 'Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.',
|
||||
props: {
|
||||
type: Property.StaticDropdown<string, true>({
|
||||
options: {
|
||||
options: [
|
||||
{label: 'CNAM', value: 'cnam'},
|
||||
{label: 'HLR', value: 'hlr'},
|
||||
{label: 'Format', value: 'format'},
|
||||
{label: 'MNP', value: 'mnp'},
|
||||
{label: 'RCS capabilities', value: 'rcs'}
|
||||
]
|
||||
},
|
||||
displayName: 'Type',
|
||||
required: true
|
||||
}),
|
||||
numbers: Property.Array({
|
||||
description: 'The phone numbers to look up.',
|
||||
displayName: 'Numbers',
|
||||
required: true
|
||||
}),
|
||||
},
|
||||
async run(context) {
|
||||
const { numbers, type } = context.propsValue;
|
||||
|
||||
const response= await callSevenApi({
|
||||
queryParams: {
|
||||
number: numbers.join(','),
|
||||
},
|
||||
method: HttpMethod.GET
|
||||
}, `lookup/${type}`, context.auth.secret_text);
|
||||
|
||||
return response.body;
|
||||
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,94 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { HttpMethod } from '@activepieces/pieces-common';
|
||||
import { sevenAuth } from '../index';
|
||||
import { callSevenApi } from '../common';
|
||||
|
||||
export const sendRcsAction = createAction({
|
||||
auth: sevenAuth,
|
||||
name: 'send-rcs',
|
||||
displayName: 'Send RCS',
|
||||
description: 'Sends a Rich Communication Services message.',
|
||||
props: {
|
||||
to: Property.ShortText({
|
||||
displayName: 'To',
|
||||
description: 'Recipient phone number for the RCS message (e.g., 49176123456789).',
|
||||
required: true
|
||||
}),
|
||||
text: Property.LongText({
|
||||
displayName: 'Message Body',
|
||||
description: 'The body of the message to send.',
|
||||
required: true
|
||||
}),
|
||||
from: Property.ShortText({
|
||||
displayName: 'From',
|
||||
description: 'The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.',
|
||||
required: false
|
||||
}),
|
||||
delay: Property.DateTime({
|
||||
displayName: 'Delay',
|
||||
description: 'Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.',
|
||||
required: false
|
||||
}),
|
||||
fallback: Property.StaticDropdown({
|
||||
displayName: 'Fallback',
|
||||
description: 'Alternative channel if RCS is not available. If not specified, fallback is disabled.',
|
||||
required: false,
|
||||
options: {
|
||||
options: [
|
||||
{ label: 'SMS', value: 'sms' },
|
||||
{ label: 'Webview', value: 'webview' }
|
||||
]
|
||||
}
|
||||
}),
|
||||
ttl: Property.Number({
|
||||
displayName: 'TTL (Time to Live)',
|
||||
description: 'Validity period of the RCS in minutes. Default is 2880 (48 hours).',
|
||||
required: false
|
||||
}),
|
||||
label: Property.ShortText({
|
||||
displayName: 'Label',
|
||||
description: 'Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).',
|
||||
required: false
|
||||
}),
|
||||
performance_tracking: Property.Checkbox({
|
||||
displayName: 'Performance Tracking',
|
||||
description: 'Activate click and performance tracking for URLs (also enables URL shortener).',
|
||||
required: false
|
||||
}),
|
||||
foreign_id: Property.ShortText({
|
||||
displayName: 'Foreign ID',
|
||||
description: 'Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).',
|
||||
required: false
|
||||
}),
|
||||
},
|
||||
async run(context) {
|
||||
const {
|
||||
to,
|
||||
text,
|
||||
from,
|
||||
delay,
|
||||
fallback,
|
||||
ttl,
|
||||
label,
|
||||
performance_tracking,
|
||||
foreign_id
|
||||
} = context.propsValue;
|
||||
|
||||
const response = await callSevenApi({
|
||||
body: {
|
||||
to,
|
||||
text,
|
||||
from,
|
||||
delay: delay ? new Date(delay).toISOString().replace('T', ' ').substring(0, 19) : undefined,
|
||||
fallback,
|
||||
ttl,
|
||||
label,
|
||||
performance_tracking,
|
||||
foreign_id
|
||||
},
|
||||
method: HttpMethod.POST
|
||||
}, 'rcs/messages', context.auth.secret_text);
|
||||
|
||||
return response.body;
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,43 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { HttpMethod } from '@activepieces/pieces-common';
|
||||
import { sevenAuth } from '../index';
|
||||
import { callSevenApi } from '../common';
|
||||
|
||||
export const sendVoiceCallAction = createAction({
|
||||
auth: sevenAuth,
|
||||
name: 'send-voice-call',
|
||||
displayName: 'Send Voice Call',
|
||||
description: 'Creates a new Text-To-Speech call to a number.',
|
||||
props: {
|
||||
to: Property.ShortText({
|
||||
description: 'Recipient number(s) of the voice calls.',
|
||||
displayName: 'To',
|
||||
required: true
|
||||
}),
|
||||
from: Property.ShortText({
|
||||
displayName: 'From',
|
||||
required: false
|
||||
}),
|
||||
text: Property.LongText({
|
||||
displayName: 'Message Body',
|
||||
description: 'Text message to be read out.',
|
||||
required: true
|
||||
}),
|
||||
|
||||
},
|
||||
async run(context) {
|
||||
const { from, text, to } = context.propsValue;
|
||||
|
||||
const response= await callSevenApi({
|
||||
body: {
|
||||
from,
|
||||
text,
|
||||
to
|
||||
},
|
||||
method: HttpMethod.POST
|
||||
}, 'voice', context.auth.secret_text);
|
||||
|
||||
return response.body;
|
||||
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,53 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { HttpMethod } from '@activepieces/pieces-common';
|
||||
import { sevenAuth } from '../index';
|
||||
import { callSevenApi } from '../common';
|
||||
|
||||
export const sendSmsAction = createAction({
|
||||
auth: sevenAuth,
|
||||
name: 'send-sms',
|
||||
displayName: 'Send SMS',
|
||||
description: 'Sends an SMS to one or more recipients.',
|
||||
props: {
|
||||
to: Property.Array({
|
||||
displayName: 'To',
|
||||
description: 'Recipient numbers of the SMS.',
|
||||
required: true
|
||||
}),
|
||||
delay: Property.DateTime({
|
||||
displayName: 'Delay',
|
||||
required: false
|
||||
}),
|
||||
flash: Property.Checkbox({
|
||||
displayName: 'Flash SMS ?',
|
||||
required: false
|
||||
}),
|
||||
from: Property.ShortText({
|
||||
displayName: 'From',
|
||||
required: false
|
||||
}),
|
||||
text: Property.LongText({
|
||||
displayName: 'Message Body',
|
||||
description: 'The body of the message to send.',
|
||||
required: true
|
||||
}),
|
||||
|
||||
},
|
||||
async run(context) {
|
||||
const { delay, flash, from, text, to } = context.propsValue;
|
||||
|
||||
const response = await callSevenApi({
|
||||
body: {
|
||||
delay: delay ? new Date(delay).toISOString().replace('T', ' ').substring(0, 19) : undefined,
|
||||
flash,
|
||||
from,
|
||||
text,
|
||||
to
|
||||
},
|
||||
method: HttpMethod.POST
|
||||
}, 'sms', context.auth.secret_text);
|
||||
|
||||
return response.body;
|
||||
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,23 @@
|
||||
import {
|
||||
type HttpResponse,
|
||||
type HttpRequest,
|
||||
httpClient
|
||||
} from '@activepieces/pieces-common';
|
||||
|
||||
export const callSevenApi = async <T>(
|
||||
httpRequest: Omit<HttpRequest, 'url'>,
|
||||
path: string,
|
||||
apiKey: string
|
||||
): Promise<HttpResponse<T>> => {
|
||||
return await httpClient.sendRequest<T>({
|
||||
...httpRequest,
|
||||
headers: {
|
||||
...httpRequest.headers,
|
||||
Accept: 'application/json',
|
||||
'Content-Type': 'application/json',
|
||||
SentWith: 'Activepieces',
|
||||
'X-Api-Key': apiKey
|
||||
},
|
||||
url: `https://gateway.seven.io/api/${path}`
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Gateway für Geschäftsnachrichten",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "Du findest deinen API-Schlüssel im [Developer Menu](https://app.seven.io/developer).",
|
||||
"Send SMS": "SMS senden",
|
||||
"Send Voice Call": "Sprachanruf senden",
|
||||
"Lookup Phone Numbers": "Telefonnummern suchen",
|
||||
"Send RCS": "RCS senden",
|
||||
"Sends an SMS to one or more recipients.": "Sendet eine SMS an einen oder mehrere Empfänger.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Erstellt einen neuen Text-zu-Sprach-Aufruf mit einer Nummer.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Informieren Sie sich über CNAM, HLR, MNP, RCS und Nummernformate.",
|
||||
"Sends a Rich Communication Services message.": "Sendet eine Nachricht von Rich Communication Services.",
|
||||
"To": "An",
|
||||
"Delay": "Verzögerung",
|
||||
"Flash SMS ?": "SMS flashen ?",
|
||||
"From": "Von",
|
||||
"Message Body": "Nachrichtentext",
|
||||
"Type": "Typ",
|
||||
"Numbers": "Nummern",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (Zeit zum Live)",
|
||||
"Label": "Label",
|
||||
"Performance Tracking": "Leistungsverfolgung",
|
||||
"Foreign ID": "Fremde ID",
|
||||
"Recipient numbers of the SMS.": "Empfängernummern der SMS.",
|
||||
"The body of the message to send.": "Der Inhalt der zu sendenden Nachricht.",
|
||||
"Recipient number(s) of the voice calls.": "Empfängernummer(n) der Sprachanrufe.",
|
||||
"Text message to be read out.": "Textnachricht zum Auslesen.",
|
||||
"The phone numbers to look up.": "Die Telefonnummern, um nach oben zu schauen.",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "Empfängernummer für die RCS-Nachricht (z. B. 49176123456789).",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "Die eindeutige ID Ihres RCS-Agenten. Wenn nicht angegeben, wird der erste RCS-fähige Absender verwendet.",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "Datum/Zeit für verzögerten Versand. Format: yyyy-mm-dd hh:ii oder Unix-Zeitstempel.",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "Alternativer Kanal, wenn RCS nicht verfügbar ist. Falls nicht angegeben, ist Fallback deaktiviert.",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "Gültigkeitsdauer des RCS in Minuten. Standard ist 2880 (48 Stunden).",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "Bezeichnung für Statistik-Tracking. Maximal 100 Zeichen (a-z, A-Z, 0-9, .-_@).",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "Aktivieren Sie Klicken und Performance-Tracking für URLs (auch URL-Verkürzung aktiviert).",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "Ihre eigene ID für diese Nachricht (wird in Callbacks verwendet). Maximal 64 Zeichen (a-z, A-Z, 0-9, .-_@).",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "Format",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "RCS-Fähigkeiten",
|
||||
"SMS": "SMS",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "Neue eingehende SMS",
|
||||
"Triggers when a new SMS message is received": "Wird ausgelöst, wenn eine neue SMS empfangen wird",
|
||||
"Phone Number": "Telefonnummer",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Begrenzen Sie eingehende SMS optional auf diese bestimmte Telefonnummer."
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Portal de Mensajería de Negocio",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "Puedes encontrar tu clave API en [Menú de Desarrollador](https://app.seven.io/developer).",
|
||||
"Send SMS": "Enviar SMS",
|
||||
"Send Voice Call": "Enviar llamada de voz",
|
||||
"Lookup Phone Numbers": "Buscar números de teléfono",
|
||||
"Send RCS": "Enviar RCS",
|
||||
"Sends an SMS to one or more recipients.": "Envía un SMS a uno o más destinatarios.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Crea una nueva llamada de Texto a Voz a un número.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Obtenga información sobre CNAM, HLR, MNP, capacidades RCS y formatos numéricos.",
|
||||
"Sends a Rich Communication Services message.": "Envía un mensaje de servicios de comunicación enriquecidos.",
|
||||
"To": "A",
|
||||
"Delay": "Retraso",
|
||||
"Flash SMS ?": "Flash SMS?",
|
||||
"From": "De",
|
||||
"Message Body": "Cuerpo",
|
||||
"Type": "Tipo",
|
||||
"Numbers": "Números",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (hora de vivir)",
|
||||
"Label": "Etiqueta",
|
||||
"Performance Tracking": "Seguimiento de rendimiento",
|
||||
"Foreign ID": "ID Extranjero",
|
||||
"Recipient numbers of the SMS.": "Número de destinatarios del SMS.",
|
||||
"The body of the message to send.": "El cuerpo del mensaje a enviar.",
|
||||
"Recipient number(s) of the voice calls.": "Número de destino(s) de las llamadas de voz.",
|
||||
"Text message to be read out.": "Mensaje de texto para ser leído.",
|
||||
"The phone numbers to look up.": "Los números de teléfono a buscar.",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "Número de teléfono del destinatario del mensaje RCS (por ejemplo, 49176123456789).",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "El ID único de su agente RCS. Si no se especifica, se utilizará el primer remitente capaz de RCS.",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "Fecha/hora para el envío retrasado. Formato: yyyy-mm-dd hh:ii o marca de tiempo Unix.",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "Canal alternativo si RCS no está disponible. Si no se especifica, fallback está deshabilitado.",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "Período de validez del RCS en minutos. Por defecto es 2880 (48 horas).",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "Etiqueta para el seguimiento de estadísticas. Máximo 100 caracteres (a-z, A-Z, 0-9, .-_@).",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "Activar clic y seguimiento de rendimiento para URLs (también permite acortar URLs).",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "Tu propio ID para este mensaje (usado en callbacks). Máximo 64 caracteres (a-z, A-Z, 0-9, .-_@).",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "Formatear",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "Capacidades RCS",
|
||||
"SMS": "SMS",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "Nuevo SMS entrante",
|
||||
"Triggers when a new SMS message is received": "Dispara cuando se recibe un nuevo mensaje SMS",
|
||||
"Phone Number": "Número de teléfono",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Opcionalmente limitar los SMS entrantes a este número de teléfono en particular."
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Passerelle de messagerie professionnelle",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "Vous pouvez trouver votre clé API dans [Menu Développeur] (https://app.seven.io/developer).",
|
||||
"Send SMS": "Envoyer un SMS",
|
||||
"Send Voice Call": "Envoyer un appel vocal",
|
||||
"Lookup Phone Numbers": "Rechercher des numéros de téléphone",
|
||||
"Send RCS": "Envoyer le RCS",
|
||||
"Sends an SMS to one or more recipients.": "Envoie un SMS à un ou plusieurs destinataires.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Crée un nouvel appel textuel à voix sur un numéro.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Obtenez des informations sur les formats CNAM, HLR, MNP, RCS et Numéros.",
|
||||
"Sends a Rich Communication Services message.": "Envoie un message de services de communication enrichis.",
|
||||
"To": "À",
|
||||
"Delay": "Délai",
|
||||
"Flash SMS ?": "Flash SMS ?",
|
||||
"From": "A partir de",
|
||||
"Message Body": "Corps du message",
|
||||
"Type": "Type de texte",
|
||||
"Numbers": "Numéros",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (Temps en direct)",
|
||||
"Label": "Étiquette",
|
||||
"Performance Tracking": "Suivi des performances",
|
||||
"Foreign ID": "ID étranger",
|
||||
"Recipient numbers of the SMS.": "Nombre de destinataires du SMS.",
|
||||
"The body of the message to send.": "Le corps du message à envoyer.",
|
||||
"Recipient number(s) of the voice calls.": "Numéro(s) destinataire(s) des appels vocaux.",
|
||||
"Text message to be read out.": "Message texte à lire.",
|
||||
"The phone numbers to look up.": "Les numéros de téléphone à rechercher.",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "Numéro de téléphone du destinataire du message RCS (par exemple, 49176123456789).",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "L'ID unique de votre agent RCS. Si non spécifié, le premier expéditeur capable de RCS sera utilisé.",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "Date/heure pour l'envoi retardé. Format: yyyy-mm-dd hh:ii ou timestamp Unix.",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "Canal alternatif si RCS n'est pas disponible. S'il n'est pas spécifié, la valeur de secours est désactivée.",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "Durée de validité du RCS en minutes. La valeur par défaut est 2880 (48 heures).",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "Étiquette pour le suivi des statistiques. Maximum 100 caractères (a-z, A-Z, 0-9, .-_@).",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "Activer le suivi des clics et des performances des URLs (permet également de raccourcir les URLs).",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "Votre propre ID pour ce message (utilisé dans les rappels). Maximum 64 caractères (a-z, A-Z, 0-9, .-_@).",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "Formater",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "Capacités RCS",
|
||||
"SMS": "SMS",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "Nouveau SMS entrant",
|
||||
"Triggers when a new SMS message is received": "Déclenche quand un nouveau SMS est reçu",
|
||||
"Phone Number": "Numéro de téléphone",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Vous pouvez éventuellement limiter les SMS entrants à ce numéro de téléphone particulier."
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Business Messaging Gateway",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "API キーは [Developer Menu](https://app.seven.io/developer) にあります。",
|
||||
"Send SMS": "SMSの送信",
|
||||
"Send Voice Call": "音声通話を送信",
|
||||
"Lookup Phone Numbers": "電話番号を検索",
|
||||
"Send RCS": "RCS を送信",
|
||||
"Sends an SMS to one or more recipients.": "1 つまたは複数の受信者に SMS を送信します。",
|
||||
"Creates a new Text-To-Speech call to a number.": "番号に新しいテキスト読み上げコールを作成します。",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "CNAM、HLR、MNP、RCS機能と数値フォーマットに関する情報を取得します。",
|
||||
"Sends a Rich Communication Services message.": "リッチ・コミュニケーション・サービス・メッセージを送信します。",
|
||||
"To": "終了日",
|
||||
"Delay": "遅延",
|
||||
"Flash SMS ?": "SMSのフラッシュ",
|
||||
"From": "差出人:",
|
||||
"Message Body": "メッセージ本文",
|
||||
"Type": "タイプ",
|
||||
"Numbers": "数値",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (Time to Live)",
|
||||
"Label": "ラベル",
|
||||
"Performance Tracking": "パフォーマンストラッキング",
|
||||
"Foreign ID": "外部ID",
|
||||
"Recipient numbers of the SMS.": "SMSの受信者番号",
|
||||
"The body of the message to send.": "送信するメッセージの本文.",
|
||||
"Recipient number(s) of the voice calls.": "音声通話の受信者番号",
|
||||
"Text message to be read out.": "読み上げるテキストメッセージ。",
|
||||
"The phone numbers to look up.": "上を見るための電話番号。",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "RCS メッセージの受信者電話番号 (例: 49176123456789)",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "RCS エージェントの一意の ID です。指定しない場合は、最初の RCS 対応の送信者が使用されます。",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "発送の遅延日時。フォーマット:yyyy-mm-dd hh:ii または Unix タイムスタンプ。",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "RCS が利用できない場合の代替チャンネル。指定しない場合は、フォールバックは無効になります。",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "RCS の有効期間を分単位で指定します。デフォルトは 2880 (48 時間) です。",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "統計トラッキングのラベル。最大100文字(a-z、A-Z、0-9、.-_@)。",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "URLのクリックとパフォーマンストラッキングを有効にします (URL短縮も有効にします)。",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "このメッセージの独自のID(コールバックで使用)。最大64文字(a-z、A-Z、0-9、.-_@)。",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "書式",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "RCS 機能",
|
||||
"SMS": "SMS",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "新しいSMS着信",
|
||||
"Triggers when a new SMS message is received": "新しいSMSメッセージを受信したときにトリガーします",
|
||||
"Phone Number": "電話番号",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "必要に応じて、着信SMSをこの電話番号に制限します。"
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Business Messaging Gateway",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "Je kunt je API-sleutel vinden in [Developer Menu](https://app.seven.io/developer).",
|
||||
"Send SMS": "Sms verzenden",
|
||||
"Send Voice Call": "Spraakoproep verzenden",
|
||||
"Lookup Phone Numbers": "Telefoonnummers opzoeken",
|
||||
"Send RCS": "Stuur RCS",
|
||||
"Sends an SMS to one or more recipients.": "Stuurt een sms naar één of meer ontvangers.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Maakt een nieuwe Text-To-Spraak-oproep naar een nummer.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Krijg informatie over CNAM, HLR, MNP, RCS mogelijkheden en Number formaten.",
|
||||
"Sends a Rich Communication Services message.": "Verstuurt een Rich Communication Services bericht.",
|
||||
"To": "tot",
|
||||
"Delay": "Vertraging",
|
||||
"Flash SMS ?": "Sms laten knipperen?",
|
||||
"From": "van",
|
||||
"Message Body": "Bericht Body",
|
||||
"Type": "Type",
|
||||
"Numbers": "Nummers",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (Tijd tot leven)",
|
||||
"Label": "Omschrijving",
|
||||
"Performance Tracking": "Prestaties volgen",
|
||||
"Foreign ID": "Vreemde ID",
|
||||
"Recipient numbers of the SMS.": "Aantal geadresseerden van de SMS.",
|
||||
"The body of the message to send.": "De inhoud van het te verzenden bericht.",
|
||||
"Recipient number(s) of the voice calls.": "Ontvanger nummer(s) van de spraakoproepen.",
|
||||
"Text message to be read out.": "Tekstbericht om uit te lezen.",
|
||||
"The phone numbers to look up.": "De telefoonnummers om op te zoeken.",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "Telefoonnummer van de ontvanger voor het RCS-bericht (bijv. 49176123456789).",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "Het unieke ID van uw RCS-agent. Indien niet opgegeven, zal de eerste RCS-geschikte afzender worden gebruikt.",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "Datum/tijd voor vertraagd verzenden. Formaat: yyyy-mm-dd hh:ii of Unix tijdstempel.",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "Alternatief kanaal als RCS niet beschikbaar is. Indien niet opgegeven, dan is fallback uitgeschakeld.",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "Geldigheid van de RCS in minuten. Standaard is 2880 (48 uur).",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "Label voor het volgen van statistieken. Max 100 tekens (a-z, A-Z, 0-9, .-_@).",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "Activeer klik en performance tracking voor URLs (schakelt ook URL verkorter in).",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "Uw eigen ID voor dit bericht (gebruikt in callbacks). Maximaal 64 tekens (a-z, A-Z, 0-9, .-_@).",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "Formatteren",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "RCS mogelijkheden",
|
||||
"SMS": "sms",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "Nieuwe inkomende SMS",
|
||||
"Triggers when a new SMS message is received": "Triggert wanneer een nieuw SMS-bericht wordt ontvangen",
|
||||
"Phone Number": "Telefoon nummer",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Optioneel beperken van inkomende SMS tot dit specifieke telefoonnummer."
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Gateway Business Messaging",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "Você pode encontrar sua chave de API no [Menu do Desenvolvedor](https://app.seven.io/developer).",
|
||||
"Send SMS": "Enviar SMS",
|
||||
"Send Voice Call": "Enviar chamada de voz",
|
||||
"Lookup Phone Numbers": "Procurar números de telefone",
|
||||
"Send RCS": "Enviar RCS",
|
||||
"Sends an SMS to one or more recipients.": "Envia um SMS para um ou mais destinatários.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Cria uma nova chamada de texto para fala para um número.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Obter informações sobre CNAM, HLR, MNP, recursos RCS e formatos numéricos.",
|
||||
"Sends a Rich Communication Services message.": "Envia uma mensagem de Serviços de Comunicação Riica.",
|
||||
"To": "Para",
|
||||
"Delay": "Atraso",
|
||||
"Flash SMS ?": "Flash SMS?",
|
||||
"From": "De",
|
||||
"Message Body": "Corpo da Mensagem",
|
||||
"Type": "tipo",
|
||||
"Numbers": "Números",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (Tempo para Viver)",
|
||||
"Label": "Descrição",
|
||||
"Performance Tracking": "Rastreamento de Desempenho",
|
||||
"Foreign ID": "ID Externo",
|
||||
"Recipient numbers of the SMS.": "Números destinatários do SMS.",
|
||||
"The body of the message to send.": "O corpo da mensagem a enviar.",
|
||||
"Recipient number(s) of the voice calls.": "Número(s) destinatário(s) das chamadas de voz.",
|
||||
"Text message to be read out.": "Mensagem de texto a ser lida.",
|
||||
"The phone numbers to look up.": "Os números de telefone para procurar.",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "Número de telefone destinatário para a mensagem RCS (por exemplo, 49176123456789).",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "O ID exclusivo do seu agente RCS. Se não for especificado, o primeiro remetente compatível com RCS será usado.",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "Data/hora para envio atrasado. Formato: aaaa-mm-dd hh:ii ou Unix timestamp.",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "Canal alternativo se RCS não está disponível. Se não for especificado, o fallback está desativado.",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "Período de validade do RCS em minutos. O padrão é 2880 (48 horas).",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "Rótulo para estatísticas de rastreamento. Máximo de 100 caracteres (a-z, A-Z, 0-9, .-_@).",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "Ativar rastreamento de clique e desempenho para URLs (também ativa encurtador de URL).",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "Seu próprio ID para esta mensagem (usado em callbacks). Máximo de 64 caracteres (a-z, A-Z, 0-9, .-_@).",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "FLR",
|
||||
"Format": "Formato",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "Capacidades RCS",
|
||||
"SMS": "SMS",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "Novo SMS de entrada",
|
||||
"Triggers when a new SMS message is received": "Aciona quando uma nova mensagem SMS é recebida",
|
||||
"Phone Number": "Número de telefone",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Limite opcional de entrada de SMS para este número de telefone específico."
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"seven": "семь",
|
||||
"Business Messaging Gateway": "Шлюз бизнес-обмена сообщениями",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "Ключ API можно найти в [меню разработчика](https://app.seven.io/developer).",
|
||||
"Send SMS": "Отправить СМС",
|
||||
"Send Voice Call": "Отправить голосовой вызов",
|
||||
"Lookup Phone Numbers": "Поиск номеров телефонов",
|
||||
"Sends an SMS to one or more recipients.": "Отправляет SMS одному или нескольким получателям.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Создает новый вызов для речи текста на номер.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Получить информацию о CNAM, HLR, MNP, RCS и числовых форматах.",
|
||||
"To": "Кому",
|
||||
"Delay": "Задержка",
|
||||
"Flash SMS ?": "Установить СМС?",
|
||||
"From": "От",
|
||||
"Message Body": "Тело сообщения",
|
||||
"Type": "Тип",
|
||||
"Numbers": "Числа",
|
||||
"Recipient numbers of the SMS.": "Номера получателей СМС.",
|
||||
"The body of the message to send.": "Тело сообщения для отправки.",
|
||||
"Recipient number(s) of the voice calls.": "Номер (номера) получателя голосовых звонков.",
|
||||
"Text message to be read out.": "Текстовое сообщение для чтения.",
|
||||
"The phone numbers to look up.": "Телефонные номера для поиска.",
|
||||
"CNAM": "ЧПУ",
|
||||
"HLR": "HLR",
|
||||
"Format": "Формат",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "Возможности RCS",
|
||||
"New Incoming SMS": "Новые входящие SMS",
|
||||
"Triggers when a new SMS message is received": "Включает при получении нового SMS-сообщения",
|
||||
"Phone Number": "Номер телефона",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "При необходимости ограничить входящие SMS определенным номером телефона."
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Business Messaging Gateway",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "You can find your API key in [Developer Menu](https://app.seven.io/developer).",
|
||||
"Send SMS": "Send SMS",
|
||||
"Send Voice Call": "Send Voice Call",
|
||||
"Lookup Phone Numbers": "Lookup Phone Numbers",
|
||||
"Send RCS": "Send RCS",
|
||||
"Sends an SMS to one or more recipients.": "Sends an SMS to one or more recipients.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Creates a new Text-To-Speech call to a number.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.",
|
||||
"Sends a Rich Communication Services message.": "Sends a Rich Communication Services message.",
|
||||
"To": "To",
|
||||
"Delay": "Delay",
|
||||
"Flash SMS ?": "Flash SMS ?",
|
||||
"From": "From",
|
||||
"Message Body": "Message Body",
|
||||
"Type": "Type",
|
||||
"Numbers": "Numbers",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (Time to Live)",
|
||||
"Label": "Label",
|
||||
"Performance Tracking": "Performance Tracking",
|
||||
"Foreign ID": "Foreign ID",
|
||||
"Recipient numbers of the SMS.": "Recipient numbers of the SMS.",
|
||||
"The body of the message to send.": "The body of the message to send.",
|
||||
"Recipient number(s) of the voice calls.": "Recipient number(s) of the voice calls.",
|
||||
"Text message to be read out.": "Text message to be read out.",
|
||||
"The phone numbers to look up.": "The phone numbers to look up.",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "Recipient phone number for the RCS message (e.g., 49176123456789).",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "Alternative channel if RCS is not available. If not specified, fallback is disabled.",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "Validity period of the RCS in minutes. Default is 2880 (48 hours).",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "Activate click and performance tracking for URLs (also enables URL shortener).",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "Format",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "RCS capabilities",
|
||||
"SMS": "SMS",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "New Incoming SMS",
|
||||
"Triggers when a new SMS message is received": "Triggers when a new SMS message is received",
|
||||
"Phone Number": "Phone Number",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Optionally limit inbound SMS to this particular phone number."
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"seven": "seven",
|
||||
"Business Messaging Gateway": "Business Messaging Gateway",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "You can find your API key in [Developer Menu](https://app.seven.io/developer).",
|
||||
"Send SMS": "Send SMS",
|
||||
"Send Voice Call": "Send Voice Call",
|
||||
"Lookup Phone Numbers": "Lookup Phone Numbers",
|
||||
"Sends an SMS to one or more recipients.": "Sends an SMS to one or more recipients.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Creates a new Text-To-Speech call to a number.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.",
|
||||
"To": "To",
|
||||
"Delay": "Delay",
|
||||
"Flash SMS ?": "Flash SMS ?",
|
||||
"From": "From",
|
||||
"Message Body": "Message Body",
|
||||
"Type": "Type",
|
||||
"Numbers": "Numbers",
|
||||
"Recipient numbers of the SMS.": "Recipient numbers of the SMS.",
|
||||
"The body of the message to send.": "The body of the message to send.",
|
||||
"Recipient number(s) of the voice calls.": "Recipient number(s) of the voice calls.",
|
||||
"Text message to be read out.": "Text message to be read out.",
|
||||
"The phone numbers to look up.": "The phone numbers to look up.",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "Format",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "RCS capabilities",
|
||||
"New Incoming SMS": "New Incoming SMS",
|
||||
"Triggers when a new SMS message is received": "Triggers when a new SMS message is received",
|
||||
"Phone Number": "Phone Number",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Optionally limit inbound SMS to this particular phone number."
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"Business Messaging Gateway": "Business Messaging Gateway",
|
||||
"You can find your API key in [Developer Menu](https://app.seven.io/developer).": "You can find your API key in [Developer Menu](https://app.seven.io/developer).",
|
||||
"Send SMS": "Send SMS",
|
||||
"Send Voice Call": "Send Voice Call",
|
||||
"Lookup Phone Numbers": "Lookup Phone Numbers",
|
||||
"Send RCS": "Send RCS",
|
||||
"Sends an SMS to one or more recipients.": "Sends an SMS to one or more recipients.",
|
||||
"Creates a new Text-To-Speech call to a number.": "Creates a new Text-To-Speech call to a number.",
|
||||
"Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.": "Get information about CNAM, HLR, MNP, RCS capabilities and Number formats.",
|
||||
"Sends a Rich Communication Services message.": "Sends a Rich Communication Services message.",
|
||||
"To": "To",
|
||||
"Delay": "Delay",
|
||||
"Flash SMS ?": "Flash SMS ?",
|
||||
"From": "From",
|
||||
"Message Body": "Message Body",
|
||||
"Type": "类型",
|
||||
"Numbers": "Numbers",
|
||||
"Fallback": "Fallback",
|
||||
"TTL (Time to Live)": "TTL (Time to Live)",
|
||||
"Label": "Label",
|
||||
"Performance Tracking": "Performance Tracking",
|
||||
"Foreign ID": "Foreign ID",
|
||||
"Recipient numbers of the SMS.": "Recipient numbers of the SMS.",
|
||||
"The body of the message to send.": "The body of the message to send.",
|
||||
"Recipient number(s) of the voice calls.": "Recipient number(s) of the voice calls.",
|
||||
"Text message to be read out.": "Text message to be read out.",
|
||||
"The phone numbers to look up.": "The phone numbers to look up.",
|
||||
"Recipient phone number for the RCS message (e.g., 49176123456789).": "Recipient phone number for the RCS message (e.g., 49176123456789).",
|
||||
"The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.": "The unique ID of your RCS agent. If not specified, the first RCS-capable sender will be used.",
|
||||
"Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.": "Date/time for delayed dispatch. Format: yyyy-mm-dd hh:ii or Unix timestamp.",
|
||||
"Alternative channel if RCS is not available. If not specified, fallback is disabled.": "Alternative channel if RCS is not available. If not specified, fallback is disabled.",
|
||||
"Validity period of the RCS in minutes. Default is 2880 (48 hours).": "Validity period of the RCS in minutes. Default is 2880 (48 hours).",
|
||||
"Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).": "Label for statistics tracking. Max 100 characters (a-z, A-Z, 0-9, .-_@).",
|
||||
"Activate click and performance tracking for URLs (also enables URL shortener).": "Activate click and performance tracking for URLs (also enables URL shortener).",
|
||||
"Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).": "Your own ID for this message (used in callbacks). Max 64 characters (a-z, A-Z, 0-9, .-_@).",
|
||||
"CNAM": "CNAM",
|
||||
"HLR": "HLR",
|
||||
"Format": "Format",
|
||||
"MNP": "MNP",
|
||||
"RCS capabilities": "RCS capabilities",
|
||||
"SMS": "SMS",
|
||||
"Webview": "Webview",
|
||||
"New Incoming SMS": "New Incoming SMS",
|
||||
"Triggers when a new SMS message is received": "Triggers when a new SMS message is received",
|
||||
"Phone Number": "Phone Number",
|
||||
"Optionally limit inbound SMS to this particular phone number.": "Optionally limit inbound SMS to this particular phone number."
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
import { createPiece, PieceAuth } from '@activepieces/pieces-framework';
|
||||
import { sendSmsAction } from './action/sms-send';
|
||||
import { sendRcsAction } from './action/rcs-send';
|
||||
import { sendVoiceCallAction } from './action/send-voice-call';
|
||||
import { lookup } from './action/lookup';
|
||||
import { smsInbound } from './trigger/sms-inbound';
|
||||
import { PieceCategory } from '@activepieces/shared';
|
||||
|
||||
export const sevenAuth = PieceAuth.SecretText({
|
||||
description:
|
||||
'You can find your API key in [Developer Menu](https://app.seven.io/developer).',
|
||||
displayName: 'API key',
|
||||
required: true,
|
||||
});
|
||||
|
||||
export const seven = createPiece({
|
||||
displayName: 'seven',
|
||||
description: 'Business Messaging Gateway',
|
||||
auth: sevenAuth,
|
||||
minimumSupportedRelease: '0.30.0',
|
||||
logoUrl: 'https://cdn.activepieces.com/pieces/seven.jpg',
|
||||
categories: [PieceCategory.MARKETING],
|
||||
authors: ['seven-io'],
|
||||
actions: [sendSmsAction, sendVoiceCallAction, lookup, sendRcsAction],
|
||||
triggers: [smsInbound],
|
||||
});
|
||||
@@ -0,0 +1,81 @@
|
||||
import { createTrigger, Property, TriggerStrategy } from '@activepieces/pieces-framework';
|
||||
import { callSevenApi } from '../common';
|
||||
import { sevenAuth } from '../index';
|
||||
import { HttpMethod } from '@activepieces/pieces-common';
|
||||
|
||||
interface SubscribeHookResponse {
|
||||
id: number | null;
|
||||
success: boolean;
|
||||
}
|
||||
|
||||
interface UnsubscribeHookResponse {
|
||||
success: boolean;
|
||||
}
|
||||
|
||||
interface SevenWebhookInformation {
|
||||
webhookId: number;
|
||||
}
|
||||
|
||||
const triggerNameInStore = 'seven_new_sms_trigger';
|
||||
|
||||
export const smsInbound = createTrigger({
|
||||
auth: sevenAuth,
|
||||
description: 'Triggers when a new SMS message is received',
|
||||
displayName: 'New Incoming SMS',
|
||||
name: 'new_incoming_sms',
|
||||
props: {
|
||||
from: Property.ShortText({
|
||||
displayName: 'Phone Number',
|
||||
description: 'Optionally limit inbound SMS to this particular phone number.',
|
||||
required: false
|
||||
})
|
||||
},
|
||||
sampleData: {
|
||||
data: {
|
||||
id: '681590',
|
||||
sender: 'SMS',
|
||||
system: '491771783130',
|
||||
text: 'Hello. I am an example for demonstrating a webhook payload.',
|
||||
time: '1605878104'
|
||||
},
|
||||
webhook_event: 'sms_mo',
|
||||
webhook_timestamp: '2020-12-02 11:55:44'
|
||||
},
|
||||
type: TriggerStrategy.WEBHOOK,
|
||||
async onEnable(context) {
|
||||
const { from = '' } = context.propsValue;
|
||||
const { body } = await callSevenApi<SubscribeHookResponse>({
|
||||
body: {
|
||||
event_filter: from,
|
||||
event_type: 'sms_mo',
|
||||
target_url: context.webhookUrl
|
||||
},
|
||||
method: HttpMethod.POST
|
||||
}, 'hooks', context.auth.secret_text);
|
||||
|
||||
if (!body.success) return;
|
||||
|
||||
await context.store?.put<SevenWebhookInformation>(triggerNameInStore, {
|
||||
webhookId: body.id!
|
||||
});
|
||||
},
|
||||
async onDisable(context) {
|
||||
const info = await context.store?.get<SevenWebhookInformation>(triggerNameInStore);
|
||||
if (!info) return;
|
||||
|
||||
const { body } = await callSevenApi<UnsubscribeHookResponse>({
|
||||
body: {
|
||||
action: 'unsubscribe',
|
||||
id: info.webhookId
|
||||
},
|
||||
method: HttpMethod.POST
|
||||
}, 'hooks', context.auth.secret_text);
|
||||
|
||||
if (!body.success) return;
|
||||
|
||||
await context.store.put(triggerNameInStore, null);
|
||||
},
|
||||
async run(context) {
|
||||
return [context.payload.body];
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user