Гостевой пост: GitHub Hook Twilio от Дэвида Чарнецки

Автор: | 18.07.2026

Дэвид Чарнецки — ведущий инженер в Agora Games и заядлый разработчик на Ruby/Rails/Scala/Java. Однажды вечером в воскресенье он начал экспериментировать с Twilio и в итоге написал GitHub Service Hook. Вот как это произошло:

Если вы думаете, что интегрировать Voice, VoIP или SMS в ваше приложение сложно, вы глубоко ошибаетесь. В этой статье я покажу, насколько легко я интегрировал Twilio в GitHub Service Hook. Все началось с вечерних экспериментов в воскресенье. Я честно не уверен, почему я решил покопаться в GitHub Services или почему уведомления о push-коммитах GitHub через SMS показались мне полезными (или бесполезными), но теперь это существует.

Если вы не знакомы, GitHub Services — это набор открытых интеграций для различных сервисов, таких как Bugzilla, HipChat, Jabber, Twitter и других. Когда GitHub Service включен для вашего репозитория GitHub, он может выполнять действия, например, уведомлять вас через чат о том, что кто-то закоммитил код, с ссылкой для просмотра изменений. У меня возникла идея, что было бы полезно получать SMS-уведомления при коммите кода в репозиторий. И здесь на помощь приходит Twilio.

Это мой первый опыт интеграции Twilio в приложение, и Twilio делает это действительно легко, предлагая библиотеки для взаимодействия с API Twilio на самых популярных языках, таких как Java, Python и .NET. Вы можете найти их все на сайте Twilio здесь: https://www.twilio.com/docs/libraries/. Моим предпочтительным языком в настоящее время является Ruby. К счастью, как проект GitHub Services, так и Twilio Ruby API хорошо документированы, настолько, что написание Twilio GitHub Service было почти копированием и вставкой. Код для Twilio GitHub Service можно найти здесь: https://github.com/github/github-services/blob/master/services/twilio.rb.

Процесс выглядит следующим образом:

— Сначала мы проверяем, доступны ли все настройки конфигурации для взаимодействия с Twilio, такие как наш токен авторизации, SID аккаунта, номер телефона Twilio, с которого отправляются сообщения, и номер телефона, который будет получать уведомления о новых коммитах через SMS в репозиторий GitHub.

— Затем мы создаем клиент с нашими учетными данными Twilio.

— Наконец, мы создаем новое SMS-сообщение, собирая некоторые данные, которые мы получаем из события push в GitHub, такие как имя коммитера, количество коммитов и репозиторий, в который был сделан коммит.

4 строки кода, и у меня был работающий сервис, который делает именно это! Теперь, когда Twilio GitHub Service был официально интегрирован, он доступен для каждого из более чем 1 миллиона проектов, размещенных на GitHub.

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

В следующий раз, когда вы задумаетесь об интеграции Voice, VoIP или SMS в ваше приложение — сделайте это с Twilio.