• Использование Интернета резко возросло за последние несколько лет, и сегодня мы с трудом представляем свою жизнь без него. По состоянию на 2021 год в Интернете зарегистрировано около 1,8 миллиарда веб-сайтов, поэтому удержать клиентов может быть непросто. Поэтому разработчики используют стратегии для информирования пользователей; одним из них является интеграция обмена текстовыми сообщениями.
  • Из-за сложной кривой обучения, обширной поддержки сообщества, открытого исходного кода и многих других факторов PHP является одним из предпочтительных вариантов для серверных приложений. В этой статье описаны три метода отправки SMS из веб-приложения PHP. Вы должны выбрать подход, который лучше всего подходит вам после того, как я опишу преимущества и недостатки каждого из них.
  • В этой статье будет подробно рассмотрено использование SMTP для многоканальных служб уведомлений, SMS API и SMS. После этого мы перейдем к техническим аспектам, поскольку я изложу доступные варианты, объясню, как включить их в ваше приложение, а затем мы поговорим о преимуществах и недостатках каждого подхода.

1. Использование SMTP

Самый популярный метод отправки электронных писем, созданных системой, называется Simple Mail Transfer Protocol (SMTP). Различные библиотеки предлагают службы SMTP на основе внутреннего языка программирования. Например, использование PHPMailer и SwiftMailer для приложений PHP и Nodemailer для приложений Node.js.

Тем не менее, основное внимание в этом руководстве уделяется тому, как отправлять SMS-сообщения. Я буду использовать стороннее приложение в качестве посредника между почтовым сервером и мобильным телефоном.

Отправить SMS PHP с помощью SMTP

На приведенном выше рисунке показана двусторонняя линия связи. Синяя стрелка показывает, как SMS принимается из мобильной сети и отправляется почтовому клиенту (например, Outlook) через почтовый сервер с использованием протокола SMTP. Конечно, вы можете не обращать внимания на синие стрелки, если вас интересует только пересылка электронной почты.

Он требует двух вещей:

  • Номер телефона, который вы ищете.
  • Название перевозчика (многие из них можно найти в этом списке).
  • Для большинства перевозчиков обычная процедура выглядит следующим образом: (Может быть применима не ко всем странам.)

Вам не нужен PHP, если все, что вам нужно сделать, это отправить SMS. Предположим, например, что ваш номер телефона — 5555551234, а Verizon Wireless Network — ваш сетевой провайдер (крупный сетевой провайдер в США и Канаде). Затем Вы можете отправить сообщение, введя [email protected] в своем почтовом клиенте. Получатель текстового сообщения: +1 (555) 555–1234.

PHPMailer или почтовая функция PHP могут быть использованы для достижения того же самого с помощью PHP. В качестве примера я буду использовать почтовую функцию PHP (более подробную информацию вы можете найти в документации). Сигнатура функции следующая:

1 bool mail (строки «$to», «$subject», «$message», «$дополнительные заголовки», «$дополнительные параметры»)

Теперь запустите сигнатуру функции редактирования и добавьте ее в наш PHP-код:

1\s2\s3

Это самый простой способ, но когда вы получаете текстовое сообщение в заголовке сообщения, оно будет отображать сообщение от Gmail. Вы можете использовать альтернативный SMS-шлюз

например, Ozeki SMS Gateway, чтобы предотвратить это.

Преимущества отправки SMS с использованием SMTP

  • Отправка текстовых сообщений с помощью вашего почтового клиента является основным преимуществом использования службы SMTP для SMS.
  • Реализация не займет более 10 минут и требует лишь небольшого количества кода.

Минусы отправки SMS с использованием SMTP

  • Вы должны знать оператора связи (доменное имя беспроводной сети), подключенного к номеру мобильного телефона (многие из них можно найти в этом списке). Во-вторых, при отправке сообщения вы должны быть осторожны с его длиной. Ваше сообщение может быть потеряно или разбито на несколько текстов, если вы превысите лимит символов, который составляет около 55.
  • Кроме того, SMPT включает в себя отправку сообщений туда и обратно, что замедляет работу.
  • В этом случае сообщения должны проходить через SMS-шлюз. Поэтому возможны сбои доставки.
  • Использование SMS API

Используя API, отправьте SMS с помощью PHP.

  • Вы можете включить текстовые сообщения в свою программу, используя SMS API. Его также можно использовать для двусторонней связи. Используя это, вы можете быстро уведомлять клиентов и предоставлять им информацию, поддерживая круглосуточную работу вашей фирмы.
  • Существует множество поставщиков SMS API. Примеры включают MessageBird, Twilio и Nexmo. Я приму во внимание API MessageBird для веб-приложения PHP в руководстве. Для того, чтобы начать, вы должны:
  • Создайте бесплатную учетную запись на MessageBird. Когда вы создаете учетную запись, укажите свой номер телефона (он предлагает вам десять вариантов).
  • В разделе для разработчиков доступны два ключа API. Один используется для тестирования, а другой используется.

3. Мы должны установить пакет для связи с поставщиком API MessageBird.

требуется messagebird/php-rest-api в композиторе

4. Вы можете включить HTML-форму для сбора номера телефона и электронной почты получателя, но поскольку наше внимание сосредоточено на бэкэнде, я предложу его вручную.

1\s2\s3\s4\s5\s6\s7\s8\s9\s10\s11

«ИСПОЛЬЗУЙТЕ СВОЙ ТЕЛЕФОН, ЗАРЕГИСТРИРОВАННЫЙ В MESSAGEBIRD ЗДЕСЬ» в качестве отправителя; В коде укажите отправителя SMS-сообщения. Ответ от API будет храниться в этом объекте ответа. $message-›recipients = [$recipient]; $message-›body = $sms; $response = $messageBird-›messages-›create($message);

эхо $е; поймать(исключение $e)?›

Вы можете использовать ключ Live API для получения фактического сообщения после тестирования кода с помощью ключа Test API. Для проверки Вы можете распечатать объект $responce с ответом API, чтобы увидеть статус доставки сообщения.

Преимущества использования SMS API

  • Любой SMS API можно легко включить в ваше приложение. Для реализации требуется очень мало кодирования, а сервисы предлагают исчерпывающую документацию по использованию и API.
  • Некоторые также предлагают дополнительные функции, такие как статистика и рейтинг кликов. Кроме того, это быстрее, чем подход SMTP к SMS.

Минусы использования SMS API

  • Стоимость варьируется в зависимости от того, что вы выбираете и сколько текстовых сообщений вы хотите отправить, и все поставщики API получают компенсацию.
  • Если ваше приложение должно отправлять оповещения, использование SMS API, а не поставщика многоканальных уведомлений (о котором я расскажу ниже), имеет еще один недостаток. Например, вам нужно будет независимо интегрировать SMS, инструменты чата, такие как Slack и WhatsApp, а также мобильные и веб-передачи. Вы должны определить ценность всего дополнительного времени и усилий.

3. Использование API многоканальных уведомлений

Многоканальные службы уведомлений (MNS), как следует из названия, используют стандартизированный API для отправки предупреждений по различным каналам (таким как электронная почта, текстовые сообщения, push-уведомления, WhatsApp, Slack и т. д.). Курьер создан для этого. Он имеет единый API для уведомления пользователей обо всех каналах, а также журналы и аналитику в реальном времени, где вы можете отслеживать производительность всех каналов.

Отправить СМС с помощью PHP

Несмотря на то, что это руководство посвящено отправке текстовых сообщений, есть некоторые факторы, которые необходимо учитывать при работе.

Сначала вы должны посетить веб-сайт, зарегистрироваться и выполнить первоначальную настройку.

Войдите, используя свой адрес Gmail.

  • Назовите рабочее пространство.
  • Выберите СМС
  • Ваш выбор внутреннего языка программирования
  • Выберите провайдера SMS (я выбираю MessageBird)
  • Дайте номер, связанный с MessageBird, ключ доступа, а затем настройте поставщика (если вы используете Windows, запустите данный фрагмент кода в PowerShell).
  • Если вы удовлетворительно выполнили основные шаги настройки, вы были перенаправлены в следующее окно.
  • Используя PHP, отправляйте SMS-уведомления

2. После создания нового уведомления вы можете просмотреть, как оно будет выглядеть на мобильном устройстве получателя.

3. Построить курьерский SDK:

Композитор должен использовать курьера или попробовать курьера

Courier самостоятельно создаст код PHP для вашего уведомления. Его можно скопировать и вставить с помощью вкладки «Отправить». Это будет выглядеть следующим образом:

1\s2\s3\s4\s5\s6\s7\s8\s9\s10\s11\s12\s13\s14\s15\s16\s17\s18

sendEnhancedNotification(\s (объект) (объект) [\s 'кому' =› ['номер телефона'] = «НОМЕР ПОЛУЧАТЕЛЯ ЗДЕСЬ», ['шаблон'] = «F3Q0EWXH5W4S70H4CS99695STCYX», ['данные'] = echo($ результат-›requestId);?›['recipientName' =› «Индраджит», ], ]);

Статусы «Очередь», «Отправлено», «Доставлено», «Открыто», «Отправлено» и «Не доставлено» SMS-сообщения можно увидеть в разделе «Журналы» панели управления Courier. Если в конвейере доставки есть какие-либо ошибки, курьер также сообщит вам, когда они произошли.

Преимущества использования многоканальных систем оповещения

Принятие собственных решений имеет решающее значение в сегодняшней масштабируемости программного обеспечения. Эта масштабируемость обеспечивается многоканальными службами уведомлений, которые также поддерживают чистоту вашей кодовой базы. Это огромный бонус, поскольку потребности бизнеса и технологические достижения постоянно развиваются.

Во-вторых, конструкторы шаблонов с возможностью перетаскивания доступны на таких сайтах, как Courier, что может сэкономить вам массу времени. Журналы и аналитика в режиме реального времени также помогают фирмам отслеживать и оценивать производительность.

Использование многоканальных служб уведомлений имеет недостатки

Недостатки многоканальных служб уведомлений сравнимы с недостатками, описанными в обсуждении SMS API. Каждое преимущество имеет соответствующий расход (но в Courier есть бесплатные планы до 10000 уведомлений в месяц). Кроме того, есть еще раз вмешательство извне. Вы полагаетесь на стороннюю службу для отправки уведомлений по всем каналам.

Заключение:

В этой статье обсуждаются три способа отправки текстовых сообщений в веб-приложении PHP. Мы рассмотрели преимущества и недостатки SMTP-to-SMS, SMS API и многоканальных служб уведомлений, и вы можете выбрать подход, исходя из ваших временных и финансовых ограничений.