Иногда необходимо выполнять некоторые действия в 1С при получении SMS
Пересыл смс реализовал через программу для андроид MacroDroid и веб-сервис на стороне 1С. MacroDroid много чего умеет, но я использовал только смс.
Например Localbitbot закрывает сделку, при получении оплаты на карту.
Работает это так:
- в MacroDroid добавить макрос HTTP GET. Адрес сервера 1С можно найти в настройках Телеграм, URL будет выглядеть примерно так: https://xx.ru/bot/hs/sms/12345?number=[sms_number]&sms=[sms_message]
- в 1С в настройках поставить галку SMS
- и указываю 2 настройки:
- в Банке указать номер телефона, с которого приходят смс (Сбер — 900), так же указать триггер суммы — текст после которого в смс идет сумма оплаты и триггер баланса, в обоих триггерах на конце не забываем пробел
- Через главное меню добавить банковскую карту, с указанием банка и триггера карты — идентификатор карты, текст с которого начинается смс (от сбера)
- в Банке указать номер телефона, с которого приходят смс (Сбер — 900), так же указать триггер суммы — текст после которого в смс идет сумма оплаты и триггер баланса, в обоих триггерах на конце не забываем пробел
- MacroDroid пересылает SMS в 1С, 1С понимает что это смс от Сбера и это платеж на карту, видит сумму платежа и баланс. Если в работе только 1 ордер с такой суммой, то закрывает сделку, если несколько ордеров, то просто пишет об этом в Телеграм. На моей практике открытых сделок с одинаковой суммой почти не было. На фото пример автоматического закрытия сделки 2167481, от регистрации в 1С, до закрытия по смс (отправка автоответчика не фиксируется в ТГ)
Пример СМС от Сбера, обвел идентификатор карты, триггер платежа и триггер баланса (с пробелами в конце
Если бота ставил я и достаточно давно, в публикации 1С на веб-сервере надо проверить описание веб-сервиса (как с ЯД было), в файле default.vrd должно быть прописано
<service name=»sms»
rootUrl=»sms»
enable=»true»
reuseSessions=»autouse»
sessionMaxAge=»20″
poolSize=»10″
poolTimeout=»5″/>
Все смс хранятся в базе, баланс по картам тоже фиксируется.
У меня есть только карты сбера, 1С парсит смс нормально, для других банков нужны примеры смс