Рубрики
Без рубрики

Как отправлять MMS-сообщения с изображениями с помощью Python

Учебное пособие по отправке MMS (мультимедийных сообщений с картинками) с помощью языка программирования Python.

Автор оригинала: Matt Makai.

Мультимедийные сообщения (MMS) с изображениями и видео – обычное дело. расширение к системе службы коротких сообщений (SMS) для отправки текста Сообщения. Используя интерфейс программирования веб-приложений (API) с Python позволяет легко отправлять MMS-сообщения из веб-приложения или сценарий. В этом коротком руководстве мы узнаем, как добавить возможность отправки MMS. в новое или существующее приложение Python.

Инструменты, которые нам нужны

Либо Python 2, либо 3 работает для кода в этом руководство. Просто убедитесь, что у вас установлена ​​одна из этих двух версий. вашей системе, перейдя в терминал и набрав python --version . К другим зависимостям этого руководства относятся:

Если вы не знаете, как установить pip и virtualenv, посмотрите на первых шагах как настроить Python 3, Flask и Green Unicorn на Ubuntu 16.04 LTS руководство.

Веб-API Twilio

Наш простой пример приложения Python будет использовать веб-API Twilio для отправки графические сообщения. Перейти на сайт Twilio зарегистрируйте бесплатную пробную учетную запись . Если у вас уже есть учетная запись Twilio (и вы должны, потому что это упрощает чтобы добавить к приложениям практически любые типы коммуникаций!) затем войдите в ваш существующий аккаунт.

В пробном режиме Twilio может отправлять MMS на подтвержденный номер телефона, связанный со счетом. Когда вы будете готовы отправлять MMS-сообщения на любой телефон в в любой стране вам придется обновить свою учетную запись.

После регистрации учетной записи Twilio вы получите свой собственный телефон. номер, который будет использоваться для отправки сообщений. С этого номера телефона можно отправлять исходящие MMS-сообщения без какой-либо конфигурации. Он также может получать сообщения, но это требует изменение веб-перехватчика URL-адреса запроса на экране сведений о номере телефона.

Установка нашей зависимости

Мы будем использовать вспомогательную библиотеку twilio . как зависимость для нашего кода Python. Можно установить вспомогательную библиотеку с помощью команды pip , которая извлекает код из PyPI в наш локальный virtualenv. В этом руководство мы назовем наш virtualenv pymms , но вы можете назвать его как угодно вы хотите для своего приложения.

Мы должны создать virtualenv перед его использованием. В вашем терминале введите:

virtualenv pymms

Если вам нужно установить virtualenv, взгляните на как настроить Python 3, Django и Green Unicorn на Ubuntu 16.04 LTS руководство.

Активируйте virtualenv с помощью команды source .

source pymms/bin/activate

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

Теперь установите Вспомогательная библиотека Python Twilio . Убедитесь, что вы установили версия 6.0.0 или более поздняя текущая версия, поскольку синтаксис для этого код немного изменен по сравнению с более ранними версиями вспомогательной библиотеки до 6.0.0.

pip install twilio>=6.0.0

После установки вспомогательной библиотеки мы можем использовать ее в нашем коде Python.

Отправка MMS из Python

Запустите интерпретатор Python, выполнив команду python в ваш терминал. Вы также можете создать новый файл с именем send_mms.py , если вы хотите повторно использовать код после того, как попробуем.

Нам нужно получить учетные данные нашей учетной записи из консоли Twilio для подключения наш код Python в нашу учетную запись Twilio. Перейти к Twilio Console и скопируйте SID учетной записи. и токен аутентификации в ваш код Python.

Введите следующий код в новый файл Python или скопируйте его из этот репозиторий GitHub, содержащий все примеры кода блога .

# import the Twilio client from the dependency we just installed
from twilio.rest import Client

# the following line needs your Twilio Account SID and Auth Token
client = Client("ACxxxxxxxxxxxxxx", "zzzzzzzzzzzzz")

# this is the URL to an image file we're going to send in the MMS
media = "https://raw.githubusercontent.com/mattmakai/fullstackpython.com/master/static/img/logos/f.png"

# change the "from_" number to your Twilio number and the "to" number
# to the phone number you signed up for Twilio with, or upgrade your
# account to send MMS to any phone number that MMS is available
client.api.account.messages.create(to="+19732644152",
                                   from_="+12023351278",
                                   body="MMS via Python? Nice!",
                                   media_url=media)

Все строки выше, начинающиеся с # , являются комментариями, чтобы дать вам некоторые контекст того, что делает каждая строка. После ввода этого кода в интерпретатор или запуск сценария Python с python send_mms.py Twilio отправит ваше MMS.

Через несколько секунд вы должны увидеть сообщение на вашем телефоне – обратите внимание, что MMS может занять немного больше времени, потому что ваш телефон должен загрузить изображение. Я использую iPhone, поэтому вот как выглядело сообщение, когда я его получил:

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

И последнее замечание: держите свой токен Twilio Auth в секрете, иначе все, кто получает, он сможет отправлять и получать сообщения через вашу учетную запись.

Вопросов? Свяжитесь со мной через Twitter @fullstackpython или @mattmakai . Я также на GitHub с имя пользователя mattmakai .

Что-то не так в этом посте? Вилка исходный код этой страницы на GitHub и отправьте запрос на перенос.