Expand Cut Tags

No cut tags

Nov. 23rd, 2017

microcell: (Default)
Вчерв весь день возился с закачкой результатов доствки sms сообщений из sms glibal в adobe. Это как поженить кошку с собакой. С одной стороны, adobe хочет получить не более 200 сообщений за один вызов функции. С другой стороны sms global предлагает выкачивать сообщения, отсортированные по дате в убывающем порядке. Можно настроить пагинацию но она тоже будет работать в убывающим порядке. То есть если процесс где-то поломался, то часть сообщений можно просто не увидеть. Но это еще не все. Пагинация работает до 10000 сообщений, после чего sms global падает с ошибкой. Разгрваривал с их инженером по этому поводу, получил стандартное "это не баг, это фича."

Короче страдания. Баг с пагинацией можно обойти, если записать дату последнего сообщения в блоке, настроить фильтр пагинации на эту дату и перенести оффесет на начало. Тогда можно выкачать еще 10к. На самом деле, правда, меньше так как оффесет начинается с единицы... что очень много говорит о способностях программистов с sms global.

Но проблема еще и в том, что javascript для коннекторов в Adobe поставляется какой-то урезанный. Массы нужных функций там просто нет, к примеру, отсутствует такая нужная, казалось бы, вещь как xtk.session.getOotion/setOption. То есть нет возможности сохранить на каком месте пагинации ты был, между вызовами функций.

К счастью можно создавать новые файлы на диске, чем я успешно воспользовался. Состояние пагинации записывается в файл и грузится из него же.

В итоге все работает, правда про мултитрединг забудьте. Но бонусом идёт тот факт что если функция упала с ошибкой, она просто выкачает ту же страничку ещё раз.

Буду тестировать, посмотрим, может наконец заработает. В QA 20к статусов выкачались примерно за минуту.

Profile

microcell: (Default)
microcell

July 2018

S M T W T F S
12345 67
891011121314
15161718192021
22232425262728
293031    

Most Popular Tags

Page Summary

Style Credit

Page generated Aug. 27th, 2025 08:39 pm
Powered by Dreamwidth Studios