вторник, 30 июля 2019 г.

Облачный Битрикс24 и почтовый трекинг - интеграция по SOAP через AWS Lambda

Читатели моего блога уже знают, что в последнее время я полюбила использовать Serverless технологии AWS: Lambda и API Gateway, вебхуки и их обработчики на языке Python3 для кастомизации облачного Битрикс24. Это удобно, просто, изящно и очень дешево.

К примеру, дергать SOAP-сервис Почты России из AWS Lambda - можно бесплатно целый год, а потом, если мои замеры и подсчеты верны, проверка 100 000 почтовых квиточков за год, что с лихвой покроет нужды любого малого бизнеса, обойдется примерно в 12$.

Что же нам для этого потребуется:

Как обновить элемент списка Битрикс24 на Python3 из AWS Lambda

Себе на память: Как обновить элемент списка Битрикс24 на Python3 из AWS Lambda:
Основная проблема заключается в том, что при апдейте элемента списка необходимо передать не только то поле, которое нужно обновить, а вообще все поля. Поэтому перед апдейтом необходимо сначала запросить все поля элемента по ID, переформировать их в другой массив и только потом проапдейтить.

воскресенье, 28 июля 2019 г.

Как собрать AWS Lambda Layer с библиотекой Zeep

Python библиотека Zeep - предназначена для работы с SOAP - сервисами. Эта библиотека написана на чистом Python, но одна из ее зависимостей lxml содержит код на C, так как использует libxml2 и libxslt. Из-за этого библиотеку Zeep невозможно залить в Lambda Layer без танцев с бубном.

В одном из моих Serverless проектов мне нужно было использовать эту библиотеку, и я нашла такой способ засунуть ее в Layer:

четверг, 25 июля 2019 г.

AWS Lambda и API Gateway для обработки вебхуков Битрикс24

Многие мои клиенты выбрали в качестве CRM-системы и системы управления проектами Битрикс24 в облаке. Основное преимущество облака перед коробой состоит в том, что клиенту не нужно думать о настройке сервера, его мощностях, безопасности, амортизации железа, нанимать отдельно администратора сервера. Однако это преимущество частично теряется, когда возникает необходимость расширить функционал Битрикс24 за счет кастомных приложений.

Да, приложения под Битрикс24 может хостить партнер, принимая на себя эту головную боль. Но для работы простых нетиражных приложений, тех, для которых обычно используют вебхуки Битрикс24, вообще не нужен сервер. Достаточно беcсерверного (Serverless) сервиса Lambda от AWS (Amazon Web Services) https://aws.amazon.com/ru/lambda/ и Amazon API Gateway https://aws.amazon.com/ru/api-gateway/.
Об их применении  для расширения функционала Битрикс24 и пойдет речь в данном посте.