Алексей разработка

Задачи, обсуждения и баги

From the to-do list: Easydata.me

✔ Изменение механизма СМС информирования

Comments

Андрей Буганов on December 24, 2013:

Алексей, получили обратную связь от клиента.
Сейчас они получают много СМС и решили делать так:
В отправляемых с сервера анкетах есть или ID или сам непосредственно логин агента отправившего анкету. Логин - это номер телефона агента.
Надо посмотреть что приходит точно в анкетах и оттуда уже привязываться, т.е. если в анкете указывается ID надо еще по этому ID запрашивать логин агента.
Формат телефона там xxxxxxxxxx - без кода, т.е. например: "9515564857". Следует учитывать что в логине может оказаться и не номер телефона - такие записи пропускаем.

Изменения в интерфейсе:
1. На страницу номеров телефонов добавляем колонку "Получатель SMS",  для этого сужаем область ввода текста СМС об обновлении
2.  Для всех проектов (и новых и старых) автоматически добавляем одну запись с текстом в колонке получатели sms - "Все агенты", телефон пустой, галочки стоят в обоих колонках. Эту запись нельзя редактировать или удалять.
3. Для всех телефонов (и существующих и добавляемых), добавленных руками, в колонке получатели смс выводим текст "Наблюдатель". Для всех номеров, без возможности редактировать текст роли.

Таким образом:
1. Получатель "Все агенты" - эти агенты получают смс только о свих анкетах
2. Получатель "Наблюдатель" - получает все смс по этому проекту

Изменения в логике системы:
1. Запрашиваем наличие новых анкет на сервер как сейчас, но с флагом 0 (если есть новые анкеты, что-бы у них прочтения прочтения остался равным false)
2. Если есть новые анкеты - сразу запрашиваем сами анкеты (методом который за раз отдает 20 анкет) с флагом 1

В целом текущий механизм и интерфейс практически не меняется, просто добавляем роли пользователей и каждая роль получает СМС по своим правилам.

Alexey Bychkov on December 25, 2013:

Андрей, написал уточняющие вопросы в файле (с табличкой, чтобы было понятнее).

Андрей Буганов on December 25, 2013:

рассказал в скайпе
Алгоритм:
2 агента
1-й отправляет на сервер 3 анкеты по проектам А-1 и B-2
2-й отправляет на сервер 4 анкеты по проектам А-1 и C-3 анкеты
1-му агенту отправляем смс в которой пишем что появились анкеты А-1 и B-2
2-му агенту отправляем смс в которой указываем что поступили новые анкеты по проекту А-1 и C-3 анкеты
Наблюдателю уходит одна смс, в которой пишем что поступили новые анкеты по проектам А-2, B-2 , С-3

Alexey Bychkov on December 25, 2013:

Андрей, посидел ещё над тем, что мы с тобой обсудили - ситуация немного прояснилась. Но, чтобы наверняка, давай ещё всё-таки пройдёмся по моему примеру. Прикладываю файл. В нём пример таблицы проекта и вводные данные. Распиши, пожалуйста, что должно происходить (что кому должно слаться) при таких вводных. Чтобы мы друг друга на 100% верно понимали. Спасибо.

Андрей Буганов on December 26, 2013:

Алексей уточнение не корректно, ты не указал кто из агентов отправил анкеты, поэтому я не могу написать кто что получит

Alexey Bychkov on December 26, 2013:

Ок, Андрей, вроде пока разобрались сами, спасибо.

Alexey Bychkov on December 26, 2013:

И сразу к плохим новостям: метод getMobileUnits не работает у них ни в бэте ни на проде по факту.

Андрей Буганов on December 26, 2013:

проверьте что в анкете приходит: логин или id

Alexey Bychkov on December 26, 2013:

http://chat.websumy.ru/inside/test/get_records_by_date_range 
здесь достаются все анкеты за определенный промежуток времени по одному сервису.

Для примера можете посмотреть что возвращает doForms. В результатах нет логина, но есть phonenumber, который может быть пустым... Так же есть mobilekey, по которому в теории можно вытянуть информацию, но метод работы с ним - не работает (getMobileUnitsInfo), происходит ошибка на их сервере.

Alexey Bychkov on December 27, 2013:

Андрей, ещё вопросик:
если я ничего не путаю, то если для строки "Все агенты" галочка "Обновление" стоит - все агенты должны получать уведомления.

Поправь, если я не прав и что-то путаю. Но если не путаю, то ...
На данный момент это невозможно, поскольку нет списка всех агентов. Их номера достаются из новых анкет и нигде не сохраняются.
Единственный вариант - это дополнительно сохранять номера агентов. Нужно ли это делать или помучать doForms с методом getMobileUnitsInfo?

Alexey Bychkov on December 30, 2013:

Если агент отправляет анкету вне рабочего времени (настройки времени отправки смс), то ему отправлять смс о полученных анкетах при первой проверке или учитывая выставленные временные рамки?


Пример:
В настройках установлено отправление смс с 9:00 до 21:00.
Агент отправляет смс в 22:03.
Ближайшая проверка запустится в 22:10.
когда агент должен получить смс подтверждение: в 22:10 или 9:00?

Андрей Буганов on December 30, 2013:

С обновлением, да, получается проблема.
Оставьте до января этот вопрос.
По поводу времени отправки СМС оставляем как есть, мы в настройках если что просто изменим период

Alexey Bychkov on December 30, 2013:

ок, Андрей, спасибо

и ещё уточнение: а как быть с номером телефона, который приходит без кода страны? везде подставлять код России?

Андрей Буганов on December 30, 2013:

Считаем что это все Россия

Alexey Bychkov on January 13, 2014:

Андрей, можно проверять, готово.

Андрей Буганов on January 13, 2014:

по обновлению, надо запрашивать список агентов в проекте getMobileUnits и всем рассылать смс (если стоит соответствующая галка у Всех агентов)
Напишите в doForms о проблеме

Alexey Bychkov on January 14, 2014:

Написал в doForms.

Андрей Буганов on January 22, 2014:

пришел ответ? напомните им.

Alexey Bychkov on January 22, 2014:

продублировал письмо ещё раз

Alexey Bychkov on January 24, 2014:

Пришёл ответ:
Currently we have not support this method yet.
We are planning to add this ws method in next 30 days. 

Alexey Bychkov on January 27, 2014:

Андрей, как поступаем - ждем 30 дней, а пока оставляем как есть?

Андрей Буганов on January 27, 2014:

да