Aufzeichnung eines Gesprächs mit geteiltem Ton

Ein Codeschnipsel, der zeigt, wie man einen eingehenden Anruf entgegennimmt und ihn so einrichtet, dass die Gesprächsabschnitte getrennt aufzeichnet und dann den Anruf verbindet. Wenn der Anruf beendet ist, wird der eventUrl die Sie in der Datei record Aktion des NCCO erhalten einen Webhook mit der URL der Aufzeichnung zum Download.

Beispiel

Ersetzen Sie die folgenden Variablen im Beispielcode:

SchlüsselBeschreibung
VONAGE_VIRTUAL_NUMBER

Your Vonage Number. E.g. 447700900000

VOICE_TO_NUMBER

The recipient number to call, e.g. 447700900002.

Voraussetzungen

npm install express body-parser

Schreiben Sie den Code

Fügen Sie Folgendes zu record-a-call-with-split-audio.js hinzu:

const Express = require('express');
const bodyParser = require('body-parser');

const app = new Express();
app.use(bodyParser.json());

const onInboundCall = (request, response) => {
  const ncco = [
    {
      action: 'record',
      split: 'conversation',
      channels: 2,
      eventUrl: [`${request.protocol}://${request.get('host')}/webhooks/recordings`],
    },
    {
      action: 'connect',
      from: VONAGE_VIRTUAL_NUMBER,
      endpoint: [
        {
          type: 'phone',
          number: VOICE_TO_NUMBER,
        },
      ],
    },
  ];
  response.json(ncco);
};

const onRecording = (request, response) => {
  const recording_url = request.body.recording_url;
  console.log(`Recording URL = ${recording_url}`);

  response.status(204).send();
};

app
  .get('/webhooks/answer', onInboundCall)
  .post('/webhooks/recordings', onRecording);

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`);
});

Vollständige Quelle anzeigen

Führen Sie Ihren Code aus

Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:

node record-a-call-with-split-audio.js

Probieren Sie es aus

Das müssen Sie tun:

  1. Nehmen Sie den Anruf entgegen und zeichnen Sie ihn mit geteiltem Ton auf (dieses Codeschnipsel).
  2. Laden Sie die Aufzeichnung herunter. Siehe die Eine Aufnahme herunterladen Codeschnipsel, wie das geht.