https://d226lax1qjow5r.cloudfront.net/blog/blogposts/sms-voice-programmable-communications-dr/programmable-sms-and-voice.png

Premiers pas avec les SMS et les communications programmables par la voix

Publié le May 18, 2021

Temps de lecture : 3 minutes

Nous avons récemment organisé un webinaire avec David Leary de Intuit Developer pour présenter les bases de l'utilisation des API SMS et Voice de Nexmo. Si vous prévoyez d'assister au prochain Intuit Small Business Hack et que vous souhaitez avoir un aperçu de ce qui est possible, ou si vous souhaitez simplement avoir une vue d'ensemble rapide des communications programmables par SMS et Voice avec Nexmo, voici les sections du webinaire qui traitent directement de l'envoi d'un SMS, de la réception d'un SMS, de l'émission d'un appel téléphonique sortant et de la réception d'un appel téléphonique entrant. Tous les exemples sont accompagnés d'extraits de code et de liens vers des lectures plus approfondies.

Vonage API Account

To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.

This tutorial also uses a virtual phone number. To purchase one, go to Numbers > Buy Numbers and search for one that meets your needs.

Comment envoyer un SMS

Cette section du webinaire explique comment envoyer un SMS sortant. Elle couvre l'utilisation d'expéditeurs alphanumériques et l'utilisation d'un numéro acheté auprès de Nexmo en tant que numéro. from numéro.

const Nexmo = require('nexmo');

const nexmo = new Nexmo({
apiKey: API_KEY,
apiSecret: API_SECRET,
}, {debug: true});

nexmo.message.sendSms(
FROM_NUMBER,
TO_NUMBER,
'Hello from @leggetter', (error, result) => {
if(error) {
console.error(error);
}
else {
console.log(result);
}
});

Pour plus d'informations sur l'envoi de SMS, consultez notre article sur l'envoi de SMS avec Node JS. l'envoi de SMS avec Node.JSle Guide de l'API SMS et la Référence de l'API SMS. Lorsque vous envoyez des SMS, vous pouvez également souhaiter savoir si le message a été délivré. Pour ce faire, vous pouvez vous inscrire pour obtenir un accusé de réception de SMS. Il existe également un article de blog sur la réception d'un accusé de réception de SMS avec Node.JS.

Comment recevoir un SMS ?

Dans cette partie du webinaire, nous couvrons la réception d'un webhook entrant contenant les informations du SMS entrant.

const Nexmo = require('nexmo');

const app = require('express')();
app.set('port', (process.env.PORT || 5000));
app.use(require('body-parser').urlencoded({ extended: false }));

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

app.post('/sms', (request, response) => {
console.log('Received message text "%s"', request.body.text);

response.sendStatus(200);
});

Vous pouvez trouver plus d'informations sur la réception d'un SMS dans notre article sur recevoir un SMS avec Node.JSle Guide de l'API SMS et Référence de l'API SMS.

Comment passer un appel téléphonique sortant

Voici comment passer un appel téléphonique sortant à l'aide de l'API Voice de Nexmo.

const Nexmo = require('nexmo');

const nexmo = new Nexmo({
apiKey: API_KEY,
apiSecret: API_SECRET,
applicationId: APPLICATION_ID,
privateKey: PRIVATE_KEY
});

nexmo.calls.create({
to: [{
type: 'phone',
number: TO_NUMBER
}],
from: {
type: 'phone',
number: FROM_NUMBER
},
answer_url: ['https://nexmo-community.github.io/ncco-examples/conference.json']
}, (err, res) => {
if(err) { console.error(err); }
else { console.log(res); }
});

Nous avons un article de blog qui couvre passer un appel téléphonique sortant avec Node.JSil y a un Guide de l'API des appels téléphoniques sortants Voice et bien sûr une Référence de l'API Voice. Jetez également un coup d'œil à la référence NCCO pour obtenir des informations sur le contrôle des conversations et des appels Nexmo, tel qu'il est utilisé dans l'exemple ci-dessus. answer_url dans l'exemple ci-dessus.

Réception d'un appel téléphonique entrant

Enfin, voici comment recevoir et contrôler un appel téléphonique entrant. Ceci introduit le concept de objets de contrôle de conversation Nexmo (NCCO).

const Nexmo = require('nexmo');

const nexmo = new Nexmo({
apiKey: API_KEY,
apiSecret: API_SECRET,
applicationId: APPLICATION_ID,
privateKey: PRIVATE_KEY
});

const app = require('express')();
const bodyParser = require('body-parser');
app.set('port', (process.env.PORT || 5000));
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

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

app.get('/answer', (request, response) => {
console.log('Incoming call from "%s"', request.query.from);

// record - All or part of a Call No
// conversation - A conference.
// connect - To a connectable endpoint such as a phone number
// talk - Send synthesized speech to a call
// stream - Send audio files to a call
var ncco = [
// {
// action: 'talk',
// text: 'hello from me',
// loop: 3,
// bargeIn: true
// },
{
action: 'stream',
streamUrl: ['http://www.ladyofthecake.com/rdmp3/theme.mp3'],
loop: 3,
bargeIn: true
},
{
action: 'input',
eventUrl: ['https://nexmo.ngrok.io/event']
}
];

response.json(ncco);
});

app.post('/event', (request, response) => {
console.log('Received event', request.body);

response.sendStatus(200);
});

Pour plus d'informations sur la réception d'un appel téléphonique entrant, consultez notre article sur la réception d'un appel téléphonique entrant avec Node JS. recevoir un appel téléphonique entrant avec Node.JSdans le guide de l'API Guide de l'API Voice pour les appels téléphoniques entrants et dans la Référence de l'API Voice. L'exemple ci-dessus mentionne également record, talk, stream et d'autres actions NCCO. Jetez donc un coup d'œil à la référence référence NCCO pour obtenir des informations sur le contrôle des conversations et des appels Nexmo.

Plus d'informations sur les communications programmables !

Il y a beaucoup plus d'informations sur les API Nexmo dans la documentation qui n'ont pas été mentionnées ci-dessus. Par exemple, l'API Verify API pour 2FA et les mots de passe à usage unique et Number Insight pour la recherche d'informations sur les numéros de téléphone. Nous avons également une sélection de tutoriels sur les communications programmables qui couvrent la construction de cas d'utilisation spécifiques en matière de communications, tels que les communications vocales privées, l'assistance clientèle par SMS, réponse vocale interactiveet bien plus encore en utilisant les API Nexmo.

Si vous allez au Small Business Hack, bonne chance, et nous vous y verrons. Si vous êtes juste passé pour en savoir plus sur les communications programmables, nous espérons que vous trouverez ceci utile. Dans tous les cas, n'hésitez pas à rejoindre le Slack de la Communauté Nexmo Slack si vous avez des questions.

Partager:

https://a.storyblok.com/f/270183/400x400/73e68604be/phil-leggetter.jpg
Phil Leggetter

Phil is Head of Developer Relations at Hookdeck, an asynchronous messaging platform, and a proud Vonage alumni.