Автор оригинала: Michael Owolabi.
С увеличением количества мобильных устройств по всему миру сегодня и многочисленные мобильные приложения, доступные нам, SMS станет стандартом де-факто для проверки.
Источник: Статиста
SMS пригодится для целей проверки на разных этапах наших приложений, это особенно отличный вариант для мобильных приложений. Следует отметить, что SMS не только полезен для целей проверки, но может быть необходимым в различных случаях деловых дел, таких как эксплуатационные/транзакционные оповещения, размещение заказа и т. Д. TextMagic имеет всеобъемлющую статью о количестве случаев использования SMS для бизнеса здесь
Сегодня мы собираемся исследовать, как использовать Twilio для отправки SMS в приложении Node.js.
Предпосылки Для выполнения этого учебника вы должны иметь следующее:
Node JS NPM Postman Code Editor (VsCode) Twilio account
Если у вас нет Node.js установлено, просто отправляйтесь на официальный Node.js Сайт для получения копии Node.js для вашей платформы. После установки Node.js вы автоматически установите NPM.
Перейти к Twilio Теперь, чтобы получить учетную запись, установленную менее чем за 2 минуты бесплатно.
Начало работы Чтобы начать, создайте новый каталог для приложения, запустив следующую команду на терминале:
cd desktop && mkdir send-sms-with-twilio && cd send-sms-with-twilio
Команды выше CD Desktop – Перейдите к каталогу на рабочем столе mkdir send-sms-with-twilio – Создать новый каталог с именем «Отправить SMS-S-Twilio» CD SEND-SMS-С-Твилио – Перейдите в недавно созданный каталог send-sms-with-twilio
Инициализируйте каталог, чтобы создать файл Package.json, запустив:
npm init -y
Откройте вновь созданную папку в вашем редакторе выбора. Структура вашей папки теперь должна выглядеть следующим ниже:
Создайте простой экспресс-сервер, как показано ниже в index.js файл:
const express = require('express'); const app = express(); const port = 3000; app.listen(port, () => { console.log(`Server running on port ${port}`); }); module.exports = app;
Чтобы продемонстрировать простое использование случая SMS в нашем приложении, мы собираемся создать простую систему регистрации пользователей и использовать Twilio для отправки кода активации на номер телефона пользователя.
N: B.
Цель этого учебника состоит в том, чтобы показать, как отправить SMS с помощью Twilio в нашем Node.js приложение, следовательно, все лучшие практики регистрации пользователей не рассматриваются.
В файле index.js вставьте следующий код:
const express = require('express'); const bodyParser = require('body-parser'); const app = express(); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); const port = 3000; const userDatabase = []; // Create user endpoint app.post('/users', (req, res) => { const { email, password, phone } = req.body; const user = { email, password, phone }; userDatabase.push(user); res.status(201).send({ message: 'Account created successfully, kindly check your phone to activate your account!', data: user }) }); app.listen(port, () => { console.log(`Server running on port ${port}`); }); module.exports = app;
Теперь, когда мы можем успешно создавать пользователя, давайте теперь интегрируем Twilio, чтобы помочь нам отправить проверку SMS для новых пользователей, как только их учетная запись создана. Найдите на сайт Twilio и создайте свой аккаунт. После того, как вы успешно создали учетную запись, ваша приборная панель должна выглядеть аналогичной ниже:
Получите бесплатный пробный номер Twilio С вашей панели инструментов Twilio нажмите Получить пробный номер Чтобы получить бесплатный номер, который мы будем использовать в качестве отправителя при отправке SMS для пользователей. Вы сможете настроить свой идентификатор отправителя, как только обновись с вашей учетной записью, подписываясь на платформу Twilio, но наш пробный номер будет достаточно для этой руководства.
Интеграция Twilio в нашем приложении Создайте новый файл в каталоге проекта и назовите его Twilio.js Отказ В новой копии файла и вставьте следующий код:
require('dotenv').config(); const accountSid = process.env.TWILIO_ACCOUNT_SID; const authToken = process.env.TWILIO_AUTH_TOKEN; const sendSms = (phone, message) => { const client = require('twilio')(accountSid, authToken); client.messages .create({ body: message, from: process.env.TWILIO_PHONE_NUMBER, to: phone }) .then(message => console.log(message.sid)); } module.exports = sendSms;
Создайте файл .env в корне вашего проекта и добавьте ключ Twilio authy, аккаунт SID и номер телефона, как показано ниже:
Примечание: В зависимости от формата вы получаете номер телефона от своего пользователя, вам может потребоваться отформатировать его для удовлетворения международного формата для отправки и получения SMS. Читайте больше на этой теме здесь
Теперь в index.js Файл, добавьте следующий код:
const express = require('express'); const bodyParser = require('body-parser'); const sendSms = require('./twilio'); const app = express(); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); const port = 3000; const userDatabase = []; // Create users endpoint app.post('/users', (req, res) => { const { email, password, phone } = req.body; const user = { email, password, phone }; userDatabase.push(user); const welcomeMessage = 'Welcome to Opalod! Your verification code is 54875'; sendSms(user.phone, welcomeMessage); res.status(201).send({ message: 'Account created successfully, kindly check your phone to activate your account!', data: user }) }); app.listen(port, () => { console.log(`Server running on port ${port}`); }); module.exports = app;
Теперь мы готовы отправить SMS в нашем приложении Node.js, поэтому давайте проверим нашу работу
Тестирование нашего применения
Незадолго до того, как мы отправим наши первые SMS, нам нужно добавить подтвержденный номер телефона на нашу учетную запись Twilio. Это так, потому что мы находимся на пробной версии. Итак, с вашей панели инструментов Twilio нажмите «Проверьте номер телефона» и убедитесь, что телефон.
У вас должен быть хотя бы один проверенный номер телефона уже, если вы правильно настроите свой аккаунт. Сохраните свою работу и запустите сервер, запустив узел index.js на терминале
Откройте почтальон и отправьте сообщение запроса на конечную точку/пользователей с правильными параметрами
Поздравляю! Вы только что успешно отправили SMS из приложения Node.js.
У Twilio есть гораздо больше, чем просто отправлять SMS, чтобы получить больше своих предложений, пожалуйста, посетите их официальную документацию здесь
Полный код можно найти здесь: https://github.com/imichaelowolabi/send-sms-with-twilio.