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,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "Avoma ist ein KI-Meeting-Assistent, der Ihre Meetings automatisch aufzeichnet, überträgt und zusammenfasst.",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Ihr Avoma API Key (Bearer Token). Generieren Sie ihn aus Ihren Avoma API Integration Einstellungen: https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "Anruf erstellen",
|
||||
"Get Meeting Recording": "Besprechung abrufen",
|
||||
"Get Meeting Transcription": "Meeting Transkription abrufen",
|
||||
"Creates a new call in Avoma": "Erstellt einen neuen Anruf in Avoma",
|
||||
"Returns video and audio recording URLs for a given meeting": "Gibt URLs für Video- und Audioaufzeichnung für ein bestimmtes Meeting zurück",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "Gibt die Transkription mit Lautsprechern, Zeitstempel und VTT-Datei zurück",
|
||||
"External ID": "Externe ID",
|
||||
"User Email": "Benutzer-E-Mail",
|
||||
"Source": "Quelle",
|
||||
"Direction": "Richtung",
|
||||
"Start Time": "Startzeit",
|
||||
"From Phone Number": "Von Telefonnummer",
|
||||
"To Phone Number": "An Telefonnummer",
|
||||
"Recording URL": "Aufnahme-URL",
|
||||
"Participants": "Teilnehmer",
|
||||
"End Time": "Endzeit",
|
||||
"From Name": "Absendername",
|
||||
"To Name": "An Name",
|
||||
"Answered": "Beantwortet",
|
||||
"Is Voicemail": "Ist Voicemail",
|
||||
"Additional Details": "Zusätzliche Details",
|
||||
"Meeting": "Meeting",
|
||||
"Transcription": "Transkript",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "Einzigartige ID des Anrufs aus dem Dialer-System wie Hubspot, Dämmerung, Zoom, etc.",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "E-Mail des Benutzers, der den Anruf getätigt oder erhalten hat. Dies sollte die E-Mail-Adresse eines Avoma-Benutzers sein.",
|
||||
"Source of the call": "Quelle des Anrufs",
|
||||
"Direction of the call": "Richtung des Anrufs",
|
||||
"Start time of the call": "Startzeit des Anrufs",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "Telefonnummer, von der aus Anruf getätigt wurde (z.B. +11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "Telefonnummer, an die ein Anruf getätigt wurde (z.B. +12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "URL der Aufzeichnung des Anrufs. Dies sollte eine öffentliche URL sein, auf die Avoma zugreifen kann.",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "Liste der Teilnehmer am Anruf. Der erste Eintrag sollte der Prospekt/Lead sein.",
|
||||
"End time of the call": "Endzeit des Anrufs",
|
||||
"Name of the caller who made the call": "Name des Anrufers, der den Anruf durchgeführt hat",
|
||||
"Name of the person to whom call was made": "Name der Person, an die ein Anruf getätigt wurde",
|
||||
"Whether the call was answered": "Ob der Anruf beantwortet wurde",
|
||||
"Indicates if the call is a voicemail": "Zeigt an, ob der Anruf eine Sprachnachricht ist",
|
||||
"Additional details of the call (JSON object as string)": "Zusätzliche Details des Aufrufs (JSON-Objekt als Zeichenkette)",
|
||||
"Select a meeting from your Avoma account": "Wählen Sie ein Meeting aus Ihrem Avoma-Konto",
|
||||
"Select a transcription from your Avoma meetings": "Wählen Sie eine Transkription aus Ihren Avoma-Meetings",
|
||||
"Zoom": "Zoom",
|
||||
"Zoom Phone": "Telefon zoomen",
|
||||
"Twilio": "Zweimal",
|
||||
"PhoneBurner": "Telefonbrenner",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "Luftanruf",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "Andere",
|
||||
"Inbound": "Eingehend",
|
||||
"Outbound": "Ausgehend",
|
||||
"New Note": "Neue Notiz",
|
||||
"New Meeting Scheduled": "Neues Meeting geplant",
|
||||
"Meeting Rescheduled": "Meeting neu geplant",
|
||||
"Meeting Cancelled": "Meeting abgebrochen",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "Auslöser wenn Notizen erfolgreich für Besprechungen oder Anrufe generiert wurden",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "Wird ausgelöst, wenn ein Meeting über eine Ihrer Avoma-Planungsseiten gebucht wird",
|
||||
"Triggers when a scheduled meeting is rescheduled": "Wird ausgelöst, wenn ein geplantes Meeting verschoben wird",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "Wird ausgelöst, wenn ein Meeting über die Planungsseite gebucht wird",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Einstellungen > Integrationen > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Ereignistyp:** Wähle **\"AINOTE\"**\n4. **HTTP-Methode:** POST\n5. **Inhaltstyp:** application/json\n\n**Hinweis:** Benötigt Administratorrechte in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Einstellungen > Integrationen > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Typ:** Wähle **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Methode:** POST\n5. **Inhaltstyp:** application/json\n\n**Hinweis:** Benötigt Administratorrechte in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Einstellungen > Integrationen > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Ereignistyp:** Wähle **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP-Methode:** POST\n5. **Inhaltstyp:** application/json\n\n**Hinweis:** Benötigt Administratorrechte in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Einstellungen > Integrationen > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Typ:** Wähle **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Methode:** POST\n5. **Inhaltstyp:** application/json\n\n**Hinweis:** Benötigt Administratorrechte in Avoma.\n "
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "Avoma es un asistente de reuniones de IA que registra, transcribe y resume automáticamente sus reuniones.",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Tu clave de API de Avoma (token portador). Genérala a partir de tus ajustes de integración de Avoma API: https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "Crear llamada",
|
||||
"Get Meeting Recording": "Obtener grabación de reunión",
|
||||
"Get Meeting Transcription": "Transcripción de Reuniones",
|
||||
"Creates a new call in Avoma": "Crea una nueva llamada en Avoma",
|
||||
"Returns video and audio recording URLs for a given meeting": "Devuelve URL de grabación de vídeo y audio para una reunión determinada",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "Devuelve la transcripción con altavoces, marcas de tiempo y URL del archivo VTT",
|
||||
"External ID": "ID Externo",
|
||||
"User Email": "Email de usuario",
|
||||
"Source": "Fuente",
|
||||
"Direction": "Dirección",
|
||||
"Start Time": "Hora de inicio",
|
||||
"From Phone Number": "Desde el número de teléfono",
|
||||
"To Phone Number": "A número de teléfono",
|
||||
"Recording URL": "Grabando URL",
|
||||
"Participants": "Participantes",
|
||||
"End Time": "Hora de fin",
|
||||
"From Name": "De nombre",
|
||||
"To Name": "A nombre",
|
||||
"Answered": "Respondido",
|
||||
"Is Voicemail": "Es Voicemail",
|
||||
"Additional Details": "Detalles adicionales",
|
||||
"Meeting": "Reunión",
|
||||
"Transcription": "Transcripción",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "Id único de la llamada desde el sistema de marcadores como hubspot, twilio, zoom, etc.",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "Correo electrónico del usuario que hizo o recibió la llamada. Este debe ser el correo electrónico de un usuario de Avoma.",
|
||||
"Source of the call": "Fuente de la llamada",
|
||||
"Direction of the call": "Dirección de la llamada",
|
||||
"Start time of the call": "Hora de inicio de la llamada",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "Número de teléfono desde el cual se hizo la llamada (por ejemplo, +11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "Número de teléfono al que se hizo la llamada (por ejemplo, +12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "URL de la grabación de la llamada. Debe ser una URL pública a la que Avoma pueda acceder.",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "Lista de participantes en la llamada. La primera entrada debe ser el mó/lead.",
|
||||
"End time of the call": "Hora de fin de la llamada",
|
||||
"Name of the caller who made the call": "Nombre del llamante que hizo la llamada",
|
||||
"Name of the person to whom call was made": "Nombre de la persona a la que se hizo la llamada",
|
||||
"Whether the call was answered": "Si la llamada fue respondida",
|
||||
"Indicates if the call is a voicemail": "Indica si la llamada es un mensaje de voz",
|
||||
"Additional details of the call (JSON object as string)": "Detalles adicionales de la llamada (objeto JSON como cadena)",
|
||||
"Select a meeting from your Avoma account": "Seleccione una reunión de su cuenta de Avoma",
|
||||
"Select a transcription from your Avoma meetings": "Seleccione una transcripción de sus reuniones de Avoma",
|
||||
"Zoom": "Aceros",
|
||||
"Zoom Phone": "Teléfono de zoom",
|
||||
"Twilio": "Twilio",
|
||||
"PhoneBurner": "Corredor de teléfono",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "Aerolínea",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "Otro",
|
||||
"Inbound": "Entrante",
|
||||
"Outbound": "Salida",
|
||||
"New Note": "Nueva nota",
|
||||
"New Meeting Scheduled": "Nueva reunión programada",
|
||||
"Meeting Rescheduled": "Reunión reprogramada",
|
||||
"Meeting Cancelled": "Reunión cancelada",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "Dispara cuando las notas son generadas con éxito para reuniones o llamadas",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "Dispara cuando una reunión es reservada a través de una de sus páginas de programación de Avoma",
|
||||
"Triggers when a scheduled meeting is rescheduled": "Dispara cuando una reunión programada es reprogramada",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "Dispara cuando una reunión reservada a través de la página de programación es cancelada",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n "
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "Avoma est un assistant de réunion d’AI qui enregistre automatiquement, transcrit et résume vos réunions.",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Votre clé d'API Avoma (jeton Bearer Token). Générez-la à partir de vos paramètres d'intégration d'API Avoma : https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "Créer un appel",
|
||||
"Get Meeting Recording": "Obtenir l'enregistrement de la réunion",
|
||||
"Get Meeting Transcription": "Obtenir la transcription de la réunion",
|
||||
"Creates a new call in Avoma": "Crée un nouvel appel dans Avoma",
|
||||
"Returns video and audio recording URLs for a given meeting": "Renvoie les URL d'enregistrement vidéo et audio pour une réunion donnée",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "Renvoie la transcription avec les haut-parleurs, les horodatages et l'URL du fichier VTT",
|
||||
"External ID": "ID externe",
|
||||
"User Email": "E-mail de l'utilisateur",
|
||||
"Source": "Source",
|
||||
"Direction": "Orientation",
|
||||
"Start Time": "Start Time",
|
||||
"From Phone Number": "À partir du numéro de téléphone",
|
||||
"To Phone Number": "Vers le numéro de téléphone",
|
||||
"Recording URL": "URL de l'enregistrement",
|
||||
"Participants": "Participants",
|
||||
"End Time": "Heure de fin",
|
||||
"From Name": "De nom",
|
||||
"To Name": "À nommer",
|
||||
"Answered": "Répondu",
|
||||
"Is Voicemail": "Est la messagerie vocale",
|
||||
"Additional Details": "Détails supplémentaires",
|
||||
"Meeting": "Réunion",
|
||||
"Transcription": "Transcription",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "Identifiant unique de l'appel du système de numérotation comme hubspot, twilio, zoom, etc.",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "Courriel de l'utilisateur qui a effectué ou reçu l'appel. Ceci devrait être l'e-mail d'un utilisateur d'Avoma.",
|
||||
"Source of the call": "Source de l'appel",
|
||||
"Direction of the call": "Direction de l'appel",
|
||||
"Start time of the call": "Heure de début de l'appel",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "Numéro de téléphone à partir duquel l'appel a été fait (par exemple, +11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "Numéro de téléphone auquel l'appel a été fait (par exemple, +12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "URL de l'enregistrement de l'appel. Ce devrait être une URL publique à laquelle Avoma peut accéder.",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "Liste des participants à l'appel. La première entrée doit être le prospect/lead.",
|
||||
"End time of the call": "Heure de fin de l'appel",
|
||||
"Name of the caller who made the call": "Nom de l'appelant qui a effectué l'appel",
|
||||
"Name of the person to whom call was made": "Nom de la personne à qui l'appel a été fait",
|
||||
"Whether the call was answered": "Si l'appel a été répondu",
|
||||
"Indicates if the call is a voicemail": "Indique si l'appel est un message vocal",
|
||||
"Additional details of the call (JSON object as string)": "Détails supplémentaires de l'appel (objet JSON en tant que chaîne)",
|
||||
"Select a meeting from your Avoma account": "Sélectionnez une réunion de votre compte Avoma",
|
||||
"Select a transcription from your Avoma meetings": "Sélectionnez une transcription de vos réunions Avoma",
|
||||
"Zoom": "Zoom",
|
||||
"Zoom Phone": "Zoom Téléphone",
|
||||
"Twilio": "Twilio",
|
||||
"PhoneBurner": "Brûleur de téléphone",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "Appel aérien",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "Autres",
|
||||
"Inbound": "Entrants",
|
||||
"Outbound": "Sortant",
|
||||
"New Note": "Nouvelle note",
|
||||
"New Meeting Scheduled": "Nouvelle réunion planifiée",
|
||||
"Meeting Rescheduled": "Réunion reprogrammée",
|
||||
"Meeting Cancelled": "Réunion annulée",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "Déclenche lorsque les notes sont générées avec succès pour les réunions ou les appels",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "Déclenche quand une réunion est réservée via une de vos pages de planification Avoma",
|
||||
"Triggers when a scheduled meeting is rescheduled": "Déclenche quand une réunion planifiée est reprogrammée",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "Déclenche lorsqu'une réunion réservée via la page de planification est annulée",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Configuration rapide :**\n\n1. Dans Avoma : **Paramètres > Intégrations > Webhooks**\n2. **URL du Webhook :** `{{webhookUrl}}`\n3. **Type d'événement:** Sélectionnez **\"AINOTE\"**\n4. **Méthode HTTP :** POSTE\n5. **Type de contenu :** application/json\n\n**Note:** Nécessite des permissions d'administration dans Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Configuration rapide :**\n\n1. Dans Avoma : **Paramètres > Intégrations > Webhooks**\n2. **URL du Webhook :** `{{webhookUrl}}`\n3. **Type d'événement :** Sélectionnez **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **Méthode HTTP :** POST\n5. **Type de contenu :** application/json\n\n**Note:** Nécessite des permissions d'administration dans Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Configuration rapide :**\n\n1. Dans Avoma : **Paramètres > Intégrations > Webhooks**\n2. **URL du Webhook :** `{{webhookUrl}}`\n3. **Type d'événement :** Sélectionnez **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **Méthode HTTP :** POST\n5. **Type de contenu :** application/json\n\n**Note:** Nécessite des permissions d'administration dans Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Configuration rapide :**\n\n1. Dans Avoma : **Paramètres > Intégrations > Webhooks**\n2. **URL du Webhook :** `{{webhookUrl}}`\n3. **Type d'événement :** Sélectionnez **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **Méthode HTTP :** POST\n5. **Type de contenu :** application/json\n\n**Note:** Nécessite des permissions d'administration dans Avoma.\n "
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "AvomaはAIミーティングアシスタントで、自動的に記録、転記、会議の概要を記録します。",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Avoma APIキー(ベアラートークン)。Avoma API統合設定から生成します。https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "通話を作成",
|
||||
"Get Meeting Recording": "ミーティング録音を取得",
|
||||
"Get Meeting Transcription": "会議の表記を取得",
|
||||
"Creates a new call in Avoma": "Avomaで新しい呼び出しを作成します",
|
||||
"Returns video and audio recording URLs for a given meeting": "特定のミーティングのビデオと音声の記録URLを返します.",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "スピーカー、タイムスタンプ、VTTファイルのURLを持つ転写を返します。",
|
||||
"External ID": "外部 ID",
|
||||
"User Email": "ユーザーのメールアドレス",
|
||||
"Source": "ソース",
|
||||
"Direction": "方向",
|
||||
"Start Time": "開始時刻",
|
||||
"From Phone Number": "電話番号",
|
||||
"To Phone Number": "電話番号へ",
|
||||
"Recording URL": "記録用URL",
|
||||
"Participants": "参加者",
|
||||
"End Time": "終了時刻",
|
||||
"From Name": "差出人名",
|
||||
"To Name": "宛先名",
|
||||
"Answered": "回答済み",
|
||||
"Is Voicemail": "ボイスメール",
|
||||
"Additional Details": "その他の詳細",
|
||||
"Meeting": "会議",
|
||||
"Transcription": "表記文字",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "hubspot、twilio、zoomなどのダイヤラーシステムからの通話のユニークなid。",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "通話を発信または受信したユーザーの電子メール。これはAvomaユーザーの電子メールである必要があります。",
|
||||
"Source of the call": "発信元",
|
||||
"Direction of the call": "通話の方向",
|
||||
"Start time of the call": "通話の開始時刻",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "発信元の電話番号 (例: +11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "発信先の電話番号(例:+12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "通話記録のURL。Avomaがアクセスできる公開URLである必要があります。",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "通話中の参加者のリスト。最初のエントリは見込み客/リードである必要があります。",
|
||||
"End time of the call": "通話の終了時間",
|
||||
"Name of the caller who made the call": "発信者の名前",
|
||||
"Name of the person to whom call was made": "電話をかけた人の名前",
|
||||
"Whether the call was answered": "通話が応答されたかどうか",
|
||||
"Indicates if the call is a voicemail": "通話がボイスメールであるかどうかを示します",
|
||||
"Additional details of the call (JSON object as string)": "コールの追加の詳細 (JSON オブジェクトを文字列として)",
|
||||
"Select a meeting from your Avoma account": "Avomaアカウントからミーティングを選択してください",
|
||||
"Select a transcription from your Avoma meetings": "Avomaミーティングから転写を選択してください",
|
||||
"Zoom": "ズーム",
|
||||
"Zoom Phone": "ズーム電話",
|
||||
"Twilio": "Twilio",
|
||||
"PhoneBurner": "PhoneBurner",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "エアコール",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "その他",
|
||||
"Inbound": "Inbound",
|
||||
"Outbound": "Outbound",
|
||||
"New Note": "新しいメモ",
|
||||
"New Meeting Scheduled": "新しいミーティングがスケジュールされました",
|
||||
"Meeting Rescheduled": "会議のスケジュールを変更しました",
|
||||
"Meeting Cancelled": "会議がキャンセルされました",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "ミーティングや通話でメモが正常に生成されたときに発生する",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "会議がAvomaスケジューリングページのいずれかを介して予約されたときに発生します",
|
||||
"Triggers when a scheduled meeting is rescheduled": "スケジュールされたミーティングがスケジュール変更されたときにトリガーします",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "スケジューリングページ経由で予約されたミーティングがキャンセルされたときにトリガーされます",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n "
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "Avoma is een AI Meeting Assistant die je vergaderingen automatisch registreert, transcribeert en samenvoegt.",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Uw Avoma API-sleutel (Bearer token). Genereer het vanuit uw Avoma API integratie instellingen: https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "Oproep aanmaken",
|
||||
"Get Meeting Recording": "Opname van vergadering krijgen",
|
||||
"Get Meeting Transcription": "Krijg Meeting Transcriptie",
|
||||
"Creates a new call in Avoma": "Maakt een nieuwe oproep in Avoma",
|
||||
"Returns video and audio recording URLs for a given meeting": "Geeft video-en audio-opname-URL's voor een bepaalde vergadering terug",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "Retourneert transcriptie met luidsprekers, tijdstempels, en VTT-bestand URL",
|
||||
"External ID": "Extern ID",
|
||||
"User Email": "E-mail van gebruiker",
|
||||
"Source": "Bron",
|
||||
"Direction": "Richting",
|
||||
"Start Time": "Starttijd",
|
||||
"From Phone Number": "Van Telefoonnummer",
|
||||
"To Phone Number": "Naar telefoonnummer",
|
||||
"Recording URL": "Opname URL",
|
||||
"Participants": "Deelnemers",
|
||||
"End Time": "Eind Tijd",
|
||||
"From Name": "Afzender naam",
|
||||
"To Name": "Naar naam",
|
||||
"Answered": "beantwoord",
|
||||
"Is Voicemail": "Is voicemail",
|
||||
"Additional Details": "Aanvullende gegevens",
|
||||
"Meeting": "Afspraak",
|
||||
"Transcription": "Transcriptie",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "Uniek id van de oproep van het telefoonsysteem zoals hubspot, twilio, zoom, enz.",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "E-mail van de gebruiker die het gesprek heeft gemaakt of ontvangen. Dit moet een AVoma gebruiker e-mail zijn.",
|
||||
"Source of the call": "Bron van de oproep",
|
||||
"Direction of the call": "Richting van de oproep",
|
||||
"Start time of the call": "Start tijd van de oproep",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "Telefoonnummer van waaruit gebeld is (bijv. +11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "Telefoonnummer waarvoor werd gebeld (bijv. +12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "URL van de opname van het gesprek. Dit moet een openbare URL zijn die Avoma kan gebruiken.",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "Lijst van deelnemers aan de oproep. Eerste vermelding is het kanaal/lead.",
|
||||
"End time of the call": "Einde tijd van de oproep",
|
||||
"Name of the caller who made the call": "Naam van de beller die de oproep deed",
|
||||
"Name of the person to whom call was made": "Naam van de persoon aan wie werd gebeld",
|
||||
"Whether the call was answered": "Of de oproep is beantwoord",
|
||||
"Indicates if the call is a voicemail": "Geeft aan of de oproep een voicemail is",
|
||||
"Additional details of the call (JSON object as string)": "Aanvullende details van de oproep (JSON object als string)",
|
||||
"Select a meeting from your Avoma account": "Selecteer een vergadering van uw account",
|
||||
"Select a transcription from your Avoma meetings": "Selecteer een transcriptie van je Avoma vergaderingen",
|
||||
"Zoom": "Inzoomen",
|
||||
"Zoom Phone": "Telefoon inzoomen",
|
||||
"Twilio": "Twilio",
|
||||
"PhoneBurner": "PhoneBrander",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "Luchtbellen",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "anders",
|
||||
"Inbound": "Inkomende",
|
||||
"Outbound": "Uitgaande",
|
||||
"New Note": "Nieuwe notitie",
|
||||
"New Meeting Scheduled": "Nieuwe vergadering gepland",
|
||||
"Meeting Rescheduled": "Vergadering gerepareerd",
|
||||
"Meeting Cancelled": "Vergadering Geannuleerd",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "Triggers wanneer notities succesvol worden gegenereerd voor vergaderingen of oproepen",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "Triggert wanneer een vergadering wordt geboekt via een van je Avoma planner pagina's",
|
||||
"Triggers when a scheduled meeting is rescheduled": "Triggert wanneer een geplande vergadering wordt verplaatst",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "Triggert wanneer een vergadering is geboekt via de planningspagina",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Instellingen > Integraties > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Selecteer **\"AINOTE\"**\n4. **HTTP Methode:** POST\n5. **Content Type:** application/json\n\n**Opmerking:** Vereist admin rechten in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Instellingen > Integraties > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Selecteer **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Opmerking:** Vereist admin rechten in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Instellingen > Integraties > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Selecteer **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Opmerking:** Vereist admin rechten in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Instellingen > Integraties > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Selecteer **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Opmerking:** Vereist admin rechten in Avoma.\n "
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "Avoma é um Assistente de Reunião IA, que registra automaticamente, transcreve e resume suas reuniões.",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Sua chave de API Avoma (token Bearer). Gere a partir das suas configurações de integração da API Avoma: https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "Criar Ligação",
|
||||
"Get Meeting Recording": "Obter Gravação de Reunião",
|
||||
"Get Meeting Transcription": "Obter transmissão de reuniões",
|
||||
"Creates a new call in Avoma": "Cria uma nova chamada em Avoma",
|
||||
"Returns video and audio recording URLs for a given meeting": "Retorna URLs de gravação de vídeo e áudio para uma determinada reunião",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "Retorna transcrição com palestrantes, carimbos de tempo e URL de arquivo VTT",
|
||||
"External ID": "ID Externo",
|
||||
"User Email": "Email do Usuário",
|
||||
"Source": "fonte",
|
||||
"Direction": "Direção",
|
||||
"Start Time": "Hora de início",
|
||||
"From Phone Number": "De número de telefone",
|
||||
"To Phone Number": "Para número de telefone",
|
||||
"Recording URL": "URL de gravação",
|
||||
"Participants": "Participantes",
|
||||
"End Time": "Hora de término",
|
||||
"From Name": "Nome do Remetente",
|
||||
"To Name": "Para o Nome",
|
||||
"Answered": "Respondido",
|
||||
"Is Voicemail": "É Voicemail",
|
||||
"Additional Details": "Detalhes Adicionais",
|
||||
"Meeting": "Reunião",
|
||||
"Transcription": "Transcrição",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "Identificação única da chamada do sistema discador como hubspot, twilio, zoom, etc.",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "E-mail do usuário que fez ou recebeu a chamada. Este deve ser um e-mail de usuário da Avoma.",
|
||||
"Source of the call": "Fonte da chamada",
|
||||
"Direction of the call": "Direção da chamada",
|
||||
"Start time of the call": "Horário de início da chamada",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "Número de telefone de qual chamada foi feita (por exemplo, 11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "Número de telefone para o qual a chamada foi feita (por exemplo, +12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "URL da gravação da chamada. Esta deve ser uma URL pública que o Avoma pode acessar.",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "Lista de participantes na chamada. A primeira entrada deve ser uma perspectiva/lead.",
|
||||
"End time of the call": "Hora de término da chamada",
|
||||
"Name of the caller who made the call": "Nome do chamador que fez a chamada",
|
||||
"Name of the person to whom call was made": "Nome da pessoa a quem foi chamada",
|
||||
"Whether the call was answered": "Se a chamada foi atendida",
|
||||
"Indicates if the call is a voicemail": "Indica se a chamada é um correio de voz",
|
||||
"Additional details of the call (JSON object as string)": "Detalhes adicionais da chamada (objeto JSON como string)",
|
||||
"Select a meeting from your Avoma account": "Selecione uma reunião da sua conta Avoma",
|
||||
"Select a transcription from your Avoma meetings": "Selecione uma transcrição das suas reuniões da Avoma",
|
||||
"Zoom": "Ampliar",
|
||||
"Zoom Phone": "Ampliar telefone",
|
||||
"Twilio": "Twilio",
|
||||
"PhoneBurner": "PhoneBurner",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "Aeronave",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "Outros",
|
||||
"Inbound": "Entrada",
|
||||
"Outbound": "Saída",
|
||||
"New Note": "Nova anotação",
|
||||
"New Meeting Scheduled": "Nova reunião agendada",
|
||||
"Meeting Rescheduled": "Reunião reagendada",
|
||||
"Meeting Cancelled": "Reunião cancelada",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "Disparos quando notas são geradas com sucesso para reuniões ou chamadas",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "Acionar quando uma reunião for reservada em uma das suas páginas de agendamento da Avoma",
|
||||
"Triggers when a scheduled meeting is rescheduled": "Dispara quando uma reunião agendada é reagendada",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "Disparar quando uma reunião reservada por meio da página de agendamento for cancelada",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "**Instalação Rápida**\n\n1. No Avoma: **Configurações > Integrações > Webhooks**\n2. **Webhook URL:** '{{webhookUrl}}'\n3. **Tipo de evento:** Select **AINOTE**\n4. **Método HTTP:** POST\n5. **Tipo de Conteúdo:** application/json\n\n**Observação:\"** Requer permissões de administrador no Avoma.",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "**Instalação Rápida**\n\n1. No Avoma: **Configurações > Integrações > Webhooks**\n2. **Webhook URL:** '{{webhookUrl}}'\n3. **Tipo de evento:** Select **MEETING_BOOKED_VIA_SCHEDULER**\n4. **Método HTTP:** POST\n5. **Tipo de Conteúdo:** application/json\n\n**Observação:\"** Requer permissões de administrador no Avoma.",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "**Instalação Rápida**\n\n1. No Avoma: **Configurações > Integrações > Webhooks**\n2. **Webhook URL:** '{{webhookUrl}}'\n3. **Tipo de evento:** Select **MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED**\n4. **Método HTTP:** POST\n5. **Tipo de Conteúdo:** application/json\n\n**Observação:\"** Requer permissões de administrador no Avoma.",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "**Instalação Rápida**\n\n1. No Avoma: **Configurações > Integrações > Webhooks**\n2. **Webhook URL:** '{{webhookUrl}}'\n3. **Tipo de evento:** Select **MEETING_BOOKED_VIA_SCHEDULER_CANCELED**\n4. **Método HTTP:** POST\n5. **Tipo de Conteúdo:** application/json\n\n**Observação:\"** Requer permissões de administrador no Avoma."
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "Create Call",
|
||||
"Get Meeting Recording": "Get Meeting Recording",
|
||||
"Get Meeting Transcription": "Get Meeting Transcription",
|
||||
"Creates a new call in Avoma": "Creates a new call in Avoma",
|
||||
"Returns video and audio recording URLs for a given meeting": "Returns video and audio recording URLs for a given meeting",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "Returns transcription with speakers, timestamps, and VTT file URL",
|
||||
"External ID": "External ID",
|
||||
"User Email": "User Email",
|
||||
"Source": "Source",
|
||||
"Direction": "Direction",
|
||||
"Start Time": "Start Time",
|
||||
"From Phone Number": "From Phone Number",
|
||||
"To Phone Number": "To Phone Number",
|
||||
"Recording URL": "Recording URL",
|
||||
"Participants": "Participants",
|
||||
"End Time": "End Time",
|
||||
"From Name": "From Name",
|
||||
"To Name": "To Name",
|
||||
"Answered": "Answered",
|
||||
"Is Voicemail": "Is Voicemail",
|
||||
"Additional Details": "Additional Details",
|
||||
"Meeting": "Meeting",
|
||||
"Transcription": "Transcription",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "Email of the user who made or received the call. This should be an Avoma user's email.",
|
||||
"Source of the call": "Source of the call",
|
||||
"Direction of the call": "Direction of the call",
|
||||
"Start time of the call": "Start time of the call",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "Phone number from which call was made (e.g., +11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "Phone number to which call was made (e.g., +12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "URL of the recording of the call. This should be a public URL that Avoma can access.",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "List of participants in the call. First entry should be the prospect/lead.",
|
||||
"End time of the call": "End time of the call",
|
||||
"Name of the caller who made the call": "Name of the caller who made the call",
|
||||
"Name of the person to whom call was made": "Name of the person to whom call was made",
|
||||
"Whether the call was answered": "Whether the call was answered",
|
||||
"Indicates if the call is a voicemail": "Indicates if the call is a voicemail",
|
||||
"Additional details of the call (JSON object as string)": "Additional details of the call (JSON object as string)",
|
||||
"Select a meeting from your Avoma account": "Select a meeting from your Avoma account",
|
||||
"Select a transcription from your Avoma meetings": "Select a transcription from your Avoma meetings",
|
||||
"Zoom": "Zoom",
|
||||
"Zoom Phone": "Zoom Phone",
|
||||
"Twilio": "Twilio",
|
||||
"PhoneBurner": "PhoneBurner",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "Aircall",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "Other",
|
||||
"Inbound": "Inbound",
|
||||
"Outbound": "Outbound",
|
||||
"New Note": "New Note",
|
||||
"New Meeting Scheduled": "New Meeting Scheduled",
|
||||
"Meeting Rescheduled": "Meeting Rescheduled",
|
||||
"Meeting Cancelled": "Meeting Cancelled",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "Triggers when notes are successfully generated for meetings or calls",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "Triggers when a meeting is booked via one of your Avoma scheduling pages",
|
||||
"Triggers when a scheduled meeting is rescheduled": "Triggers when a scheduled meeting is rescheduled",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "Triggers when a meeting booked via the scheduling page is cancelled",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n "
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.": "Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.",
|
||||
"Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma": "Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma",
|
||||
"Create Call": "Create Call",
|
||||
"Get Meeting Recording": "Get Meeting Recording",
|
||||
"Get Meeting Transcription": "Get Meeting Transcription",
|
||||
"Creates a new call in Avoma": "Creates a new call in Avoma",
|
||||
"Returns video and audio recording URLs for a given meeting": "Returns video and audio recording URLs for a given meeting",
|
||||
"Returns transcription with speakers, timestamps, and VTT file URL": "Returns transcription with speakers, timestamps, and VTT file URL",
|
||||
"External ID": "外部ID",
|
||||
"User Email": "User Email",
|
||||
"Source": "来源",
|
||||
"Direction": "Direction",
|
||||
"Start Time": "开始时间",
|
||||
"From Phone Number": "From Phone Number",
|
||||
"To Phone Number": "To Phone Number",
|
||||
"Recording URL": "Recording URL",
|
||||
"Participants": "Participants",
|
||||
"End Time": "End Time",
|
||||
"From Name": "From Name",
|
||||
"To Name": "To Name",
|
||||
"Answered": "Answered",
|
||||
"Is Voicemail": "Is Voicemail",
|
||||
"Additional Details": "Additional Details",
|
||||
"Meeting": "Meeting",
|
||||
"Transcription": "Transcription",
|
||||
"Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.": "Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.",
|
||||
"Email of the user who made or received the call. This should be an Avoma user's email.": "Email of the user who made or received the call. This should be an Avoma user's email.",
|
||||
"Source of the call": "Source of the call",
|
||||
"Direction of the call": "Direction of the call",
|
||||
"Start time of the call": "Start time of the call",
|
||||
"Phone number from which call was made (e.g., +11234567890)": "Phone number from which call was made (e.g., +11234567890)",
|
||||
"Phone number to which call was made (e.g., +12234567890)": "Phone number to which call was made (e.g., +12234567890)",
|
||||
"URL of the recording of the call. This should be a public URL that Avoma can access.": "URL of the recording of the call. This should be a public URL that Avoma can access.",
|
||||
"List of participants in the call. First entry should be the prospect/lead.": "List of participants in the call. First entry should be the prospect/lead.",
|
||||
"End time of the call": "End time of the call",
|
||||
"Name of the caller who made the call": "Name of the caller who made the call",
|
||||
"Name of the person to whom call was made": "Name of the person to whom call was made",
|
||||
"Whether the call was answered": "Whether the call was answered",
|
||||
"Indicates if the call is a voicemail": "Indicates if the call is a voicemail",
|
||||
"Additional details of the call (JSON object as string)": "Additional details of the call (JSON object as string)",
|
||||
"Select a meeting from your Avoma account": "Select a meeting from your Avoma account",
|
||||
"Select a transcription from your Avoma meetings": "Select a transcription from your Avoma meetings",
|
||||
"Zoom": "Zoom",
|
||||
"Zoom Phone": "Zoom Phone",
|
||||
"Twilio": "Twilio",
|
||||
"PhoneBurner": "PhoneBurner",
|
||||
"RingCentral": "RingCentral",
|
||||
"Aircall": "Aircall",
|
||||
"HubSpot": "HubSpot",
|
||||
"Other": "Other",
|
||||
"Inbound": "Inbound",
|
||||
"Outbound": "Outbound",
|
||||
"New Note": "New Note",
|
||||
"New Meeting Scheduled": "New Meeting Scheduled",
|
||||
"Meeting Rescheduled": "Meeting Rescheduled",
|
||||
"Meeting Cancelled": "Meeting Cancelled",
|
||||
"Triggers when notes are successfully generated for meetings or calls": "Triggers when notes are successfully generated for meetings or calls",
|
||||
"Triggers when a meeting is booked via one of your Avoma scheduling pages": "Triggers when a meeting is booked via one of your Avoma scheduling pages",
|
||||
"Triggers when a scheduled meeting is rescheduled": "Triggers when a scheduled meeting is rescheduled",
|
||||
"Triggers when a meeting booked via the scheduling page is cancelled": "Triggers when a meeting booked via the scheduling page is cancelled",
|
||||
"Markdown": "Markdown",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"AINOTE\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ",
|
||||
"\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n ": "\n**Quick Setup:**\n\n1. In Avoma: **Settings > Integrations > Webhooks**\n2. **Webhook URL:** `{{webhookUrl}}`\n3. **Event Type:** Select **\"MEETING_BOOKED_VIA_SCHEDULER_CANCELED\"**\n4. **HTTP Method:** POST\n5. **Content Type:** application/json\n\n**Note:** Requires admin permissions in Avoma.\n "
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
import { createPiece } from "@activepieces/pieces-framework";
|
||||
import { newNote } from "./lib/triggers/new-note";
|
||||
import { createCall } from "./lib/actions/create-call";
|
||||
import { getMeetingTranscription } from "./lib/actions/get-meeting-transcription";
|
||||
import { getMeetingRecording } from "./lib/actions/get-meeting-recording";
|
||||
import { newMeetingScheduled } from "./lib/triggers/new-meeting-scheduled";
|
||||
import { meetingRescheduled } from "./lib/triggers/meeting-rescheduled";
|
||||
import { meetingCancelled } from "./lib/triggers/meeting-cancelled";
|
||||
import { avomaCommon } from "./lib/common";
|
||||
|
||||
export const avoma = createPiece({
|
||||
displayName: 'Avoma',
|
||||
description:
|
||||
'Avoma is an AI Meeting Assistant that automatically records, transcribes, and summarizes your meetings.',
|
||||
auth: avomaCommon.avomaAuth,
|
||||
minimumSupportedRelease: '0.36.1',
|
||||
logoUrl: 'https://cdn.activepieces.com/pieces/avoma.png',
|
||||
authors: ["fortunamide", "onyedikachi-david"],
|
||||
actions: [createCall, getMeetingRecording, getMeetingTranscription],
|
||||
triggers: [newNote, newMeetingScheduled, meetingRescheduled, meetingCancelled]
|
||||
});
|
||||
|
||||
@@ -0,0 +1,231 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import { avomaCommon } from '../common';
|
||||
|
||||
export const createCall = createAction({
|
||||
auth: avomaCommon.avomaAuth,
|
||||
name: 'create_call',
|
||||
displayName: 'Create Call',
|
||||
description: 'Creates a new call in Avoma',
|
||||
props: {
|
||||
external_id: Property.ShortText({
|
||||
displayName: 'External ID',
|
||||
description: 'Unique id of the call from the dialer system like hubspot, twilio, zoom, etc.',
|
||||
required: true
|
||||
}),
|
||||
user_email: Property.ShortText({
|
||||
displayName: 'User Email',
|
||||
description: 'Email of the user who made or received the call. This should be an Avoma user\'s email.',
|
||||
required: true
|
||||
}),
|
||||
source: Property.StaticDropdown({
|
||||
displayName: 'Source',
|
||||
description: 'Source of the call',
|
||||
required: true,
|
||||
options: {
|
||||
options: [
|
||||
{ label: 'Zoom', value: 'zoom' },
|
||||
{ label: 'Zoom Phone', value: 'zoomphone' },
|
||||
{ label: 'Twilio', value: 'twilio' },
|
||||
{ label: 'PhoneBurner', value: 'phoneburner' },
|
||||
{ label: 'RingCentral', value: 'ringcentral' },
|
||||
{ label: 'Aircall', value: 'aircall' },
|
||||
{ label: 'HubSpot', value: 'hubspot' },
|
||||
{ label: 'Other', value: 'other' }
|
||||
]
|
||||
}
|
||||
}),
|
||||
direction: Property.StaticDropdown({
|
||||
displayName: 'Direction',
|
||||
description: 'Direction of the call',
|
||||
required: true,
|
||||
options: {
|
||||
options: [
|
||||
{ label: 'Inbound', value: 'Inbound' },
|
||||
{ label: 'Outbound', value: 'Outbound' }
|
||||
]
|
||||
}
|
||||
}),
|
||||
start_at: Property.DateTime({
|
||||
displayName: 'Start Time',
|
||||
description: 'Start time of the call',
|
||||
required: true
|
||||
}),
|
||||
frm: Property.ShortText({
|
||||
displayName: 'From Phone Number',
|
||||
description: 'Phone number from which call was made (e.g., +11234567890)',
|
||||
required: true
|
||||
}),
|
||||
to: Property.ShortText({
|
||||
displayName: 'To Phone Number',
|
||||
description: 'Phone number to which call was made (e.g., +12234567890)',
|
||||
required: true
|
||||
}),
|
||||
recording_url: Property.LongText({
|
||||
displayName: 'Recording URL',
|
||||
description: 'URL of the recording of the call. This should be a public URL that Avoma can access.',
|
||||
required: true
|
||||
}),
|
||||
participants: Property.Array({
|
||||
displayName: 'Participants',
|
||||
description: 'List of participants in the call. First entry should be the prospect/lead.',
|
||||
required: true,
|
||||
properties: {
|
||||
name: Property.ShortText({
|
||||
displayName: 'Name',
|
||||
description: 'Name of the participant',
|
||||
required: true
|
||||
}),
|
||||
email: Property.ShortText({
|
||||
displayName: 'Email',
|
||||
description: 'Email of the participant',
|
||||
required: true
|
||||
}),
|
||||
crm_id: Property.ShortText({
|
||||
displayName: 'CRM Record ID',
|
||||
description: 'CRM record ID for this participant (optional)',
|
||||
required: false
|
||||
}),
|
||||
crm_type: Property.ShortText({
|
||||
displayName: 'CRM Record Type',
|
||||
description: 'Type of CRM record (e.g., contact, lead, opportunity)',
|
||||
required: false
|
||||
}),
|
||||
crm_system: Property.ShortText({
|
||||
displayName: 'CRM System',
|
||||
description: 'CRM system name (e.g., hubspot, salesforce)',
|
||||
required: false
|
||||
})
|
||||
}
|
||||
}),
|
||||
end_at: Property.DateTime({
|
||||
displayName: 'End Time',
|
||||
description: 'End time of the call',
|
||||
required: false
|
||||
}),
|
||||
frm_name: Property.ShortText({
|
||||
displayName: 'From Name',
|
||||
description: 'Name of the caller who made the call',
|
||||
required: false
|
||||
}),
|
||||
to_name: Property.ShortText({
|
||||
displayName: 'To Name',
|
||||
description: 'Name of the person to whom call was made',
|
||||
required: false
|
||||
}),
|
||||
answered: Property.Checkbox({
|
||||
displayName: 'Answered',
|
||||
description: 'Whether the call was answered',
|
||||
required: false
|
||||
}),
|
||||
is_voicemail: Property.Checkbox({
|
||||
displayName: 'Is Voicemail',
|
||||
description: 'Indicates if the call is a voicemail',
|
||||
required: false,
|
||||
defaultValue: false
|
||||
}),
|
||||
additional_details: Property.LongText({
|
||||
displayName: 'Additional Details',
|
||||
description: 'Additional details of the call (JSON object as string)',
|
||||
required: false
|
||||
})
|
||||
},
|
||||
async run(context) {
|
||||
const { auth, propsValue } = context;
|
||||
|
||||
const participants = propsValue.participants?.map((participant: any) => {
|
||||
const participantData: any = {
|
||||
email: participant.email,
|
||||
name: participant.name
|
||||
};
|
||||
|
||||
if (participant.crm_id && participant.crm_type && participant.crm_system) {
|
||||
participantData.associations = [{
|
||||
id: participant.crm_id,
|
||||
type: participant.crm_type,
|
||||
system: participant.crm_system
|
||||
}];
|
||||
}
|
||||
|
||||
return participantData;
|
||||
}) || [];
|
||||
|
||||
const requestBody: any = {
|
||||
external_id: propsValue.external_id,
|
||||
user_email: propsValue.user_email,
|
||||
source: propsValue.source,
|
||||
direction: propsValue.direction,
|
||||
start_at: propsValue.start_at,
|
||||
frm: propsValue.frm,
|
||||
to: propsValue.to,
|
||||
recording_url: propsValue.recording_url,
|
||||
participants: participants
|
||||
};
|
||||
|
||||
if (propsValue.end_at) {
|
||||
requestBody.end_at = propsValue.end_at;
|
||||
}
|
||||
if (propsValue.frm_name) {
|
||||
requestBody.frm_name = propsValue.frm_name;
|
||||
}
|
||||
if (propsValue.to_name) {
|
||||
requestBody.to_name = propsValue.to_name;
|
||||
}
|
||||
if (propsValue.answered !== undefined) {
|
||||
requestBody.answered = propsValue.answered;
|
||||
}
|
||||
if (propsValue.is_voicemail !== undefined) {
|
||||
requestBody.is_voicemail = propsValue.is_voicemail;
|
||||
}
|
||||
if (propsValue.additional_details) {
|
||||
try {
|
||||
requestBody.additional_details = JSON.parse(propsValue.additional_details);
|
||||
} catch (e) {
|
||||
requestBody.additional_details = propsValue.additional_details;
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.POST,
|
||||
url: 'https://api.avoma.com/v1/calls/',
|
||||
headers: {
|
||||
'Authorization': `Bearer ${auth.secret_text}`,
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: requestBody
|
||||
});
|
||||
|
||||
if (response.status === 400) {
|
||||
const errorDetails = response.body;
|
||||
let errorMessage = 'Bad request: ';
|
||||
|
||||
if (typeof errorDetails === 'object') {
|
||||
const fieldErrors = Object.entries(errorDetails)
|
||||
.map(([field, errors]) => `${field}: ${Array.isArray(errors) ? errors.join(', ') : errors}`)
|
||||
.join('; ');
|
||||
errorMessage += fieldErrors;
|
||||
} else {
|
||||
errorMessage += JSON.stringify(errorDetails) || 'Invalid input data';
|
||||
}
|
||||
|
||||
if (errorMessage.includes('external_id') && errorMessage.includes('source')) {
|
||||
errorMessage += '. This may be due to a duplicate call (same external_id and source already exists)';
|
||||
} else if (errorMessage.includes('user_email')) {
|
||||
errorMessage += '. Check that the user exists, is active, belongs to your organization, and has dialer permissions';
|
||||
}
|
||||
|
||||
throw new Error(errorMessage);
|
||||
}
|
||||
|
||||
if (response.status >= 400) {
|
||||
throw new Error(`API error (${response.status}): ${JSON.stringify(response.body) || 'Unknown error'}`);
|
||||
}
|
||||
|
||||
return response.body;
|
||||
} catch (error) {
|
||||
const errorMessage = error instanceof Error ? error.message : String(error);
|
||||
throw new Error(`Failed to create call: ${errorMessage}`);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,73 @@
|
||||
import { createAction } from '@activepieces/pieces-framework';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import { avomaCommon } from '../common';
|
||||
|
||||
export const getMeetingRecording = createAction({
|
||||
auth: avomaCommon.avomaAuth,
|
||||
name: 'get_meeting_recording',
|
||||
displayName: 'Get Meeting Recording',
|
||||
description: 'Returns video and audio recording URLs for a given meeting',
|
||||
props: {
|
||||
meeting_uuid: avomaCommon.meetingDropdown
|
||||
},
|
||||
async run(context) {
|
||||
const { auth, propsValue } = context;
|
||||
|
||||
const meetingUuid = propsValue.meeting_uuid;
|
||||
|
||||
if (!meetingUuid) {
|
||||
throw new Error('Please select a meeting from the dropdown');
|
||||
}
|
||||
|
||||
try {
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.GET,
|
||||
url: `https://api.avoma.com/v1/recordings/?meeting_uuid=${meetingUuid}`,
|
||||
headers: {
|
||||
'Authorization': `Bearer ${auth.secret_text}`,
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
});
|
||||
|
||||
if (response.status === 200) {
|
||||
return {
|
||||
success: true,
|
||||
status: 'available',
|
||||
meeting_uuid: response.body.meeting_uuid,
|
||||
recording_uuid: response.body.uuid,
|
||||
audio_url: response.body.audio_url,
|
||||
video_url: response.body.video_url,
|
||||
valid_till: response.body.valid_till,
|
||||
urls_expire_in_days: 5
|
||||
};
|
||||
} else if (response.status === 202) {
|
||||
return {
|
||||
success: true,
|
||||
status: 'processing',
|
||||
meeting_uuid: response.body.meeting_uuid,
|
||||
recording_uuid: response.body.uuid,
|
||||
message: response.body.message || 'Recording is being processed and not yet available',
|
||||
note: 'Check audio_ready and video_ready parameters in the meeting details to verify recording status'
|
||||
};
|
||||
} else if (response.status === 403) {
|
||||
throw new Error(`Permission denied: ${response.body.detail || 'You do not have permission to access this recording'}`);
|
||||
} else if (response.status === 404) {
|
||||
throw new Error(`Recording not found: ${response.body.detail || 'No recording exists for this meeting'}`);
|
||||
} else if (response.status === 429) {
|
||||
throw new Error(`Rate limit exceeded: ${response.body.detail || 'Too many requests. Please try again later'}`);
|
||||
} else if (response.status >= 400) {
|
||||
throw new Error(`API error (${response.status}): ${JSON.stringify(response.body) || 'Unknown error'}`);
|
||||
}
|
||||
|
||||
return {
|
||||
success: false,
|
||||
status: 'unknown',
|
||||
meeting_uuid: meetingUuid,
|
||||
error: 'Unexpected response from API'
|
||||
};
|
||||
} catch (error) {
|
||||
const errorMessage = error instanceof Error ? error.message : String(error);
|
||||
throw new Error(`Failed to retrieve meeting recording for UUID ${meetingUuid}: ${errorMessage}`);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,57 @@
|
||||
import { createAction } from '@activepieces/pieces-framework';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import { avomaCommon } from '../common';
|
||||
|
||||
export const getMeetingTranscription = createAction({
|
||||
auth: avomaCommon.avomaAuth,
|
||||
name: 'get_meeting_transcription',
|
||||
displayName: 'Get Meeting Transcription',
|
||||
description: 'Returns transcription with speakers, timestamps, and VTT file URL',
|
||||
props: {
|
||||
transcription_uuid: avomaCommon.transcriptionDropdown
|
||||
},
|
||||
async run(context) {
|
||||
const { auth, propsValue } = context;
|
||||
|
||||
const transcriptionUuid = propsValue.transcription_uuid;
|
||||
|
||||
if (!transcriptionUuid) {
|
||||
throw new Error('Please select a transcription from the dropdown');
|
||||
}
|
||||
|
||||
try {
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.GET,
|
||||
url: `https://api.avoma.com/v1/transcriptions/${transcriptionUuid}`,
|
||||
headers: {
|
||||
'Authorization': `Bearer ${auth}`,
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
});
|
||||
|
||||
if (response.status === 404) {
|
||||
const errorDetail = response.body?.detail || 'Transcription not found';
|
||||
throw new Error(`Transcription not found: ${errorDetail}`);
|
||||
} else if (response.status >= 400) {
|
||||
const errorDetail = response.body?.detail || JSON.stringify(response.body) || 'Unknown error';
|
||||
throw new Error(`API error (${response.status}): ${errorDetail}`);
|
||||
}
|
||||
|
||||
const transcription = response.body;
|
||||
return {
|
||||
success: true,
|
||||
meeting_uuid: transcription.meeting_uuid,
|
||||
transcription_uuid: transcription.uuid,
|
||||
transcription_vtt_url: transcription.transcription_vtt_url,
|
||||
speakers: transcription.speakers || [],
|
||||
transcript: transcription.transcript || [],
|
||||
transcript_paragraphs_count: transcription.transcript?.length || 0,
|
||||
speakers_count: transcription.speakers?.length || 0,
|
||||
note: 'Use transcription_vtt_url to download the VTT subtitle file for the meeting'
|
||||
};
|
||||
} catch (error) {
|
||||
const errorMessage = error instanceof Error ? error.message : String(error);
|
||||
throw new Error(`Failed to retrieve transcription: ${errorMessage}`);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,3 @@
|
||||
export { createCall } from './create-call';
|
||||
export { getMeetingRecording } from './get-meeting-recording';
|
||||
export { getMeetingTranscription } from './get-meeting-transcription';
|
||||
@@ -0,0 +1,155 @@
|
||||
import { PieceAuth, Property } from '@activepieces/pieces-framework';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
|
||||
const avomaAuth = PieceAuth.SecretText({
|
||||
displayName: 'API Key',
|
||||
description:
|
||||
'Your Avoma API Key (Bearer token). Generate it from your Avoma API Integration settings: https://help.avoma.com/api-integration-for-avoma',
|
||||
required: true
|
||||
});
|
||||
export const avomaCommon = {
|
||||
avomaAuth: avomaAuth,
|
||||
meetingDropdown: Property.Dropdown({
|
||||
auth: avomaAuth,
|
||||
displayName: 'Meeting',
|
||||
description: 'Select a meeting from your Avoma account',
|
||||
required: true,
|
||||
refreshers: [],
|
||||
options: async ({ auth }) => {
|
||||
if (!auth) {
|
||||
return {
|
||||
disabled: true,
|
||||
placeholder: 'Please connect your Avoma account first',
|
||||
options: []
|
||||
};
|
||||
}
|
||||
|
||||
try {
|
||||
const toDate = new Date().toISOString();
|
||||
const fromDate = new Date(Date.now() - 30 * 24 * 60 * 60 * 1000).toISOString();
|
||||
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.GET,
|
||||
url: `https://api.avoma.com/v1/meetings/?page_size=100&from_date=${encodeURIComponent(fromDate)}&to_date=${encodeURIComponent(toDate)}`,
|
||||
headers: {
|
||||
'Authorization': `Bearer ${auth.secret_text}`,
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
});
|
||||
|
||||
const meetings = response.body?.results || response.body?.data || response.body || [];
|
||||
|
||||
if (!Array.isArray(meetings)) {
|
||||
return {
|
||||
disabled: true,
|
||||
placeholder: 'No meetings found or unexpected response format',
|
||||
options: []
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
disabled: false,
|
||||
options: meetings.map((meeting: any) => {
|
||||
const subject = meeting.subject || meeting.title || 'Untitled Meeting';
|
||||
const startTime = meeting.start_time || meeting.startTime || meeting.created_at;
|
||||
const dateStr = startTime ? new Date(startTime).toLocaleDateString() : 'Unknown date';
|
||||
const uuid = meeting.uuid || meeting.id;
|
||||
|
||||
return {
|
||||
label: `${subject} - ${dateStr}`,
|
||||
value: uuid
|
||||
};
|
||||
})
|
||||
};
|
||||
} catch (error) {
|
||||
console.error('Error fetching meetings:', error);
|
||||
return {
|
||||
disabled: true,
|
||||
placeholder: 'Failed to load meetings. Please check your API key.',
|
||||
options: []
|
||||
};
|
||||
}
|
||||
}
|
||||
}),
|
||||
|
||||
transcriptionDropdown: Property.Dropdown({
|
||||
auth: avomaAuth,
|
||||
displayName: 'Transcription',
|
||||
description: 'Select a transcription from your Avoma meetings',
|
||||
required: true,
|
||||
refreshers: [],
|
||||
options: async ({ auth }) => {
|
||||
if (!auth) {
|
||||
return {
|
||||
disabled: true,
|
||||
placeholder: 'Please connect your Avoma account first',
|
||||
options: []
|
||||
};
|
||||
}
|
||||
|
||||
try {
|
||||
const toDate = new Date().toISOString();
|
||||
const fromDate = new Date(Date.now() - 30 * 24 * 60 * 60 * 1000).toISOString();
|
||||
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.GET,
|
||||
url: `https://api.avoma.com/v1/transcriptions/?page_size=100&from_date=${encodeURIComponent(fromDate)}&to_date=${encodeURIComponent(toDate)}`,
|
||||
headers: {
|
||||
'Authorization': `Bearer ${auth.secret_text}`,
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
});
|
||||
|
||||
let transcriptions = [];
|
||||
if (response.body?.results) {
|
||||
transcriptions = response.body.results;
|
||||
} else if (Array.isArray(response.body)) {
|
||||
transcriptions = response.body;
|
||||
} else if (response.body && typeof response.body === 'object') {
|
||||
transcriptions = [response.body];
|
||||
}
|
||||
|
||||
if (!Array.isArray(transcriptions)) {
|
||||
return {
|
||||
disabled: true,
|
||||
placeholder: 'Unexpected response format from API',
|
||||
options: []
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
disabled: false,
|
||||
options: transcriptions.map((transcription: any) => {
|
||||
const transcriptionUuid = transcription.uuid;
|
||||
const speakersCount = transcription.speakers?.length || 0;
|
||||
const transcriptLength = transcription.transcript?.length || 0;
|
||||
|
||||
return {
|
||||
label: `Transcription ${transcriptionUuid.substring(0, 8)}... - ${speakersCount} speakers, ${transcriptLength} paragraphs`,
|
||||
value: transcriptionUuid
|
||||
};
|
||||
})
|
||||
};
|
||||
} catch (error) {
|
||||
console.error('Error fetching transcriptions:', error);
|
||||
return {
|
||||
disabled: true,
|
||||
placeholder: 'Failed to load transcriptions. Please check your API key.',
|
||||
options: []
|
||||
};
|
||||
}
|
||||
}
|
||||
}),
|
||||
|
||||
meetingUuidProperty: Property.ShortText({
|
||||
displayName: 'Meeting UUID',
|
||||
description: 'Enter the meeting UUID directly, or use the dropdown below to select from your meetings',
|
||||
required: false
|
||||
}),
|
||||
|
||||
transcriptionUuidProperty: Property.ShortText({
|
||||
displayName: 'Transcription UUID',
|
||||
description: 'Enter the transcription UUID directly, or use the dropdown below to select from available transcriptions',
|
||||
required: false
|
||||
})
|
||||
};
|
||||
@@ -0,0 +1,4 @@
|
||||
export { newNote } from './new-note';
|
||||
export { newMeetingScheduled } from './new-meeting-scheduled';
|
||||
export { meetingRescheduled } from './meeting-rescheduled';
|
||||
export { meetingCancelled } from './meeting-cancelled';
|
||||
@@ -0,0 +1,67 @@
|
||||
import { createTrigger, TriggerStrategy, Property } from '@activepieces/pieces-framework';
|
||||
|
||||
export const meetingCancelled = createTrigger({
|
||||
name: 'meeting_cancelled',
|
||||
displayName: 'Meeting Cancelled',
|
||||
description: 'Triggers when a meeting booked via the scheduling page is cancelled',
|
||||
type: TriggerStrategy.WEBHOOK,
|
||||
props: {
|
||||
setupInstructions: Property.MarkDown({
|
||||
value: `
|
||||
**Quick Setup:**
|
||||
|
||||
1. In Avoma: **Settings > Integrations > Webhooks**
|
||||
2. **Webhook URL:** \`{{webhookUrl}}\`
|
||||
3. **Event Type:** Select **"MEETING_BOOKED_VIA_SCHEDULER_CANCELED"**
|
||||
4. **HTTP Method:** POST
|
||||
5. **Content Type:** application/json
|
||||
|
||||
**Note:** Requires admin permissions in Avoma.
|
||||
`,
|
||||
}),
|
||||
},
|
||||
sampleData: {
|
||||
booker_email: 'client@example.com',
|
||||
cancel_reason: 'Schedule conflict - need to reschedule for next week',
|
||||
conference_link: 'https://zoom.us/j/123456789',
|
||||
created: '2019-08-24T14:15:22Z',
|
||||
event_end_time: '2019-08-24T15:15:22Z',
|
||||
event_start_time: '2019-08-24T14:15:22Z',
|
||||
event_type: 'MEETING_BOOKED_VIA_SCHEDULER_CANCELED',
|
||||
invitee_details: {
|
||||
email: 'client@example.com',
|
||||
locale: 'en-US',
|
||||
name: 'John Client',
|
||||
tz: 'America/New_York'
|
||||
},
|
||||
invitee_responses: [
|
||||
{
|
||||
question: 'What would you like to discuss?',
|
||||
response: 'Product demo and pricing discussion'
|
||||
},
|
||||
{
|
||||
question: 'Company size?',
|
||||
response: '50-100 employees'
|
||||
}
|
||||
],
|
||||
meeting_uuid: '65fb768c-30b9-4a9a-999f-5dab85e66635',
|
||||
modified: '2019-08-24T16:30:22Z',
|
||||
organizer_email: 'sales@company.com',
|
||||
organizer_timezone: 'America/New_York',
|
||||
purpose: 'Sales Demo',
|
||||
scheduling_page_link: 'https://meet.avoma.com/sales-demo',
|
||||
subject: 'Product Demo - John Client (Cancelled)',
|
||||
uuid: '095be615-a8ad-4c33-8e9c-c7612fbf6c9f'
|
||||
},
|
||||
async onEnable(context) {
|
||||
// Manual setup - no programmatic registration needed
|
||||
},
|
||||
|
||||
async onDisable(context) {
|
||||
// Manual setup - users manage webhooks in Avoma UI
|
||||
},
|
||||
|
||||
async run(context) {
|
||||
return [context.payload.body];
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,67 @@
|
||||
import { createTrigger, TriggerStrategy, Property } from '@activepieces/pieces-framework';
|
||||
|
||||
export const meetingRescheduled = createTrigger({
|
||||
name: 'meeting_rescheduled',
|
||||
displayName: 'Meeting Rescheduled',
|
||||
description: 'Triggers when a scheduled meeting is rescheduled',
|
||||
type: TriggerStrategy.WEBHOOK,
|
||||
props: {
|
||||
setupInstructions: Property.MarkDown({
|
||||
value: `
|
||||
**Quick Setup:**
|
||||
|
||||
1. In Avoma: **Settings > Integrations > Webhooks**
|
||||
2. **Webhook URL:** \`{{webhookUrl}}\`
|
||||
3. **Event Type:** Select **"MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED"**
|
||||
4. **HTTP Method:** POST
|
||||
5. **Content Type:** application/json
|
||||
|
||||
**Note:** Requires admin permissions in Avoma.
|
||||
`,
|
||||
}),
|
||||
},
|
||||
sampleData: {
|
||||
booker_email: 'client@example.com',
|
||||
cancel_reason: null,
|
||||
conference_link: 'https://zoom.us/j/123456789',
|
||||
created: '2019-08-24T14:15:22Z',
|
||||
event_end_time: '2019-08-25T15:15:22Z',
|
||||
event_start_time: '2019-08-25T14:15:22Z',
|
||||
event_type: 'MEETING_BOOKED_VIA_SCHEDULER_RESCHEDULED',
|
||||
invitee_details: {
|
||||
email: 'client@example.com',
|
||||
locale: 'en-US',
|
||||
name: 'John Client',
|
||||
tz: 'America/New_York'
|
||||
},
|
||||
invitee_responses: [
|
||||
{
|
||||
question: 'What would you like to discuss?',
|
||||
response: 'Product demo and pricing discussion'
|
||||
},
|
||||
{
|
||||
question: 'Company size?',
|
||||
response: '50-100 employees'
|
||||
}
|
||||
],
|
||||
meeting_uuid: '65fb768c-30b9-4a9a-999f-5dab85e66635',
|
||||
modified: '2019-08-24T16:30:22Z',
|
||||
organizer_email: 'sales@company.com',
|
||||
organizer_timezone: 'America/New_York',
|
||||
purpose: 'Sales Demo',
|
||||
scheduling_page_link: 'https://meet.avoma.com/sales-demo',
|
||||
subject: 'Product Demo - John Client (Rescheduled)',
|
||||
uuid: '095be615-a8ad-4c33-8e9c-c7612fbf6c9f'
|
||||
},
|
||||
async onEnable(context) {
|
||||
// Manual setup - no programmatic registration needed
|
||||
},
|
||||
|
||||
async onDisable(context) {
|
||||
// Manual setup - users manage webhooks in Avoma UI
|
||||
},
|
||||
|
||||
async run(context) {
|
||||
return [context.payload.body];
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,67 @@
|
||||
import { createTrigger, TriggerStrategy, Property } from '@activepieces/pieces-framework';
|
||||
|
||||
export const newMeetingScheduled = createTrigger({
|
||||
name: 'new_meeting_scheduled',
|
||||
displayName: 'New Meeting Scheduled',
|
||||
description: 'Triggers when a meeting is booked via one of your Avoma scheduling pages',
|
||||
type: TriggerStrategy.WEBHOOK,
|
||||
props: {
|
||||
setupInstructions: Property.MarkDown({
|
||||
value: `
|
||||
**Quick Setup:**
|
||||
|
||||
1. In Avoma: **Settings > Integrations > Webhooks**
|
||||
2. **Webhook URL:** \`{{webhookUrl}}\`
|
||||
3. **Event Type:** Select **"MEETING_BOOKED_VIA_SCHEDULER"**
|
||||
4. **HTTP Method:** POST
|
||||
5. **Content Type:** application/json
|
||||
|
||||
**Note:** Requires admin permissions in Avoma.
|
||||
`,
|
||||
}),
|
||||
},
|
||||
sampleData: {
|
||||
booker_email: 'client@example.com',
|
||||
cancel_reason: null,
|
||||
conference_link: 'https://zoom.us/j/123456789',
|
||||
created: '2019-08-24T14:15:22Z',
|
||||
event_end_time: '2019-08-24T15:15:22Z',
|
||||
event_start_time: '2019-08-24T14:15:22Z',
|
||||
event_type: 'MEETING_BOOKED_VIA_SCHEDULER',
|
||||
invitee_details: {
|
||||
email: 'client@example.com',
|
||||
locale: 'en-US',
|
||||
name: 'John Client',
|
||||
tz: 'America/New_York'
|
||||
},
|
||||
invitee_responses: [
|
||||
{
|
||||
question: 'What would you like to discuss?',
|
||||
response: 'Product demo and pricing discussion'
|
||||
},
|
||||
{
|
||||
question: 'Company size?',
|
||||
response: '50-100 employees'
|
||||
}
|
||||
],
|
||||
meeting_uuid: '65fb768c-30b9-4a9a-999f-5dab85e66635',
|
||||
modified: '2019-08-24T14:15:22Z',
|
||||
organizer_email: 'sales@company.com',
|
||||
organizer_timezone: 'America/New_York',
|
||||
purpose: 'Sales Demo',
|
||||
scheduling_page_link: 'https://meet.avoma.com/sales-demo',
|
||||
subject: 'Product Demo - John Client',
|
||||
uuid: '095be615-a8ad-4c33-8e9c-c7612fbf6c9f'
|
||||
},
|
||||
async onEnable(context) {
|
||||
// Manual setup - no programmatic registration needed
|
||||
},
|
||||
|
||||
async onDisable(context) {
|
||||
// Manual setup - users manage webhooks in Avoma UI
|
||||
},
|
||||
|
||||
async run(context) {
|
||||
return [context.payload.body];
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,94 @@
|
||||
import { createTrigger, TriggerStrategy, Property } from '@activepieces/pieces-framework';
|
||||
|
||||
export const newNote = createTrigger({
|
||||
name: 'new_note',
|
||||
displayName: 'New Note',
|
||||
description:
|
||||
'Triggers when notes are successfully generated for meetings or calls',
|
||||
type: TriggerStrategy.WEBHOOK,
|
||||
props: {
|
||||
setupInstructions: Property.MarkDown({
|
||||
value: `
|
||||
**Quick Setup:**
|
||||
|
||||
1. In Avoma: **Settings > Integrations > Webhooks**
|
||||
2. **Webhook URL:** \`{{webhookUrl}}\`
|
||||
3. **Event Type:** Select **"AINOTE"**
|
||||
4. **HTTP Method:** POST
|
||||
5. **Content Type:** application/json
|
||||
|
||||
**Note:** Requires admin permissions in Avoma.
|
||||
`,
|
||||
}),
|
||||
},
|
||||
sampleData: {
|
||||
action_items: [
|
||||
{
|
||||
action_item: 'Follow up with client on project timeline',
|
||||
company: 'Avoma',
|
||||
email: 'john.doe@avoma.com',
|
||||
name: 'John Doe'
|
||||
}
|
||||
],
|
||||
ai_notes: '<h2>Participants</h2><ul><li><p>Avoma: John Doe</p></li></ul>',
|
||||
ai_notes_txt: 'Participants: Avoma: John Doe',
|
||||
attendees: [
|
||||
{
|
||||
email: 'user@example.com',
|
||||
name: 'John Doe',
|
||||
response_status: 'accepted',
|
||||
uuid: '095be615-a8ad-4c33-8e9c-c7612fbf6c9f'
|
||||
}
|
||||
],
|
||||
audio_ready: true,
|
||||
audio_url: 'http://example.com',
|
||||
created: '2019-08-24T14:15:22Z',
|
||||
duration: 3600,
|
||||
end_at: '2019-08-24T14:15:22Z',
|
||||
event_type: 'AINOTE',
|
||||
is_call: true,
|
||||
is_internal: false,
|
||||
meeting_url:
|
||||
'https://app.avoma.com/meeting/aa380fc2-725d-4ef8-909c-c595c0e62bcd',
|
||||
modified: '2019-08-24T14:15:22Z',
|
||||
notes_ready: true,
|
||||
organizer_email: 'user@example.com',
|
||||
organizer_name: 'John Doe',
|
||||
privacy: 'private',
|
||||
processing_status: 'completed',
|
||||
insights: {
|
||||
filler_wpm: [],
|
||||
longest_monologue: {},
|
||||
patience: [],
|
||||
sentiment: {},
|
||||
speaker_mapping: {},
|
||||
talk_stats: {},
|
||||
wpm: []
|
||||
},
|
||||
purpose: {
|
||||
label: 'Sales Call',
|
||||
uuid: '095be615-a8ad-4c33-8e9c-c7612fbf6c9f'
|
||||
},
|
||||
recording_uuid: '3e256a03-2cdd-4fe9-823b-2b61bb25d916',
|
||||
start_at: '2019-08-24T14:15:22Z',
|
||||
state: 'completed',
|
||||
subject: 'Weekly Team Meeting',
|
||||
transcript_ready: true,
|
||||
transcription_uuid: '4753c6bf-25a6-45a1-8d86-0af7c8bde615',
|
||||
transcription_vtt_url: 'http://example.com',
|
||||
uuid: '095be615-a8ad-4c33-8e9c-c7612fbf6c9f',
|
||||
video_ready: true,
|
||||
video_url: 'http://example.com'
|
||||
},
|
||||
async onEnable(context) {
|
||||
// Manual setup - no programmatic registration needed
|
||||
},
|
||||
|
||||
async onDisable(context) {
|
||||
// Manual setup - users manage webhooks in Avoma UI
|
||||
},
|
||||
|
||||
async run(context) {
|
||||
return [context.payload.body];
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user