30 сентября 2014 в 15:03

Как мы организовали автоматическую отправку обращений в государственные органы из песочницы



Всем привет! Я работаю в команде проекта «Сердитый гражданин». Хотел бы рассказать, как у нас организована коммуникация с государственными организациями.

Существуют 3 вида сотрудничества:

  • Согласно статье второй Федерального закона от 02.05.2006 г. N 59-ФЗ «О порядке рассмотрения обращений граждан Российской Федерации»;
  • Согласно подписанному соглашению;
  • На основе системы «Довольный гражданин».


Весь процесс от создания заявления и до ответа от организации можно разделить на 3 этапа:

  • Заполнение формы и создание заявления;
  • Отправка сообщения государственным организациям;
  • Получение ответа от организации.


Заполнение формы и создание заявления



В рубрикаторе портала «Сердитый гражданин» около 500 разных категорий проблем и каждая категория имеет свою специфическую форму для создания обращений. Это небольшой механизм под названием AngryForm. Кстати, пишем мы его на PHP. Он содержит метаданные форм и умеет их обрабатывать. AngryForm знает как из заполненной формы нужно сформировать обращение и кому нужно направить его. Возможно, об AngryForm я подробно напишу в отдельной статье. Итак, пользователь ищет свою категорию проблем и заполняет форму по ней. Генерируется заявления по полученным от пользователя данным.

Отправка обращения

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

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

Существует несколько каналов коммуникации с организациями:

  • Электронная почта;
  • Факс;
  • API порталов.


В зависимости от канала связи, который доступен в нужном нам представительстве, отправка происходит по-разному. Кратко расскажу про факс и API порталов.

Доставка обращений по факсу



Здесь все просто, обращение отправляется через API на факс ответственной организации. К обращениям, которые отправились факсом, создается уникальный адрес электронной почты на AngryMail (о нем ниже), где он ожидает ответ от организации. Ответ от организации приходит по каналу AngryMail.

Доставка обращений через API государственных порталов



Сейчас у нас имеется интеграция с несколькими порталами такими, как gorod.mos.ru и openregion71.ru. Если эти порталы попадают под условия, которые выбрал пользователь, то обращения поступают, помимо нашего сервиса, еще и на эти порталы. Получив ответ на эти обращения, они также появляются и на нашем портале. В течении всего времени мы опрашиваем сервера этих порталов на наличие ответов по нашим заявлениям. И если ответ найден, то он попадает в таймлайн нашего портала.

Доставка обращений при помощи электронной почты



Здесь уже по интереснее. Вместе с созданием обращения создается и цепочка переписки между пользователем и представительством организации. После создания обращения и цепочки оно попадает в очередь отправки обращений. В качестве очередей мы используем RabbitMQ. Из очереди обращение направляется в AngryMail.

AngryMail — это приложение написанное на Java, которое занимается обработкой входящих и исходящих сообщений по электронной почте. AngryMail присваивает цепочке идентификатор и генерируется обратный email в формате {id}@angrymail.ru, на который будет ждать ответ.

Организация отвечает на сгенерированный адрес электронной почты({id}@angrymail.ru), как правило, с прикрепленными документами со всеми печатями и подписями. Как только AngryMail получает подобное письмо, оно отдает его в сервис AngryCitizen. Ответ прикрепляется в таймлайн обращения на портале и высылается уведомление пользователю.

Если очень кратко, то так. На этом работа нашего сервиса не заканчивается, но это уже другая история.

Спасибо, что дочитали статью до этого места.

Если интересно, буду дальше рассказывать о жизни в нашем проекте вместе с техническими тонкостями.
Павловичев Станислав @Fr05t1k
карма
5,0
рейтинг 0,0
Самое читаемое Разработка

Комментарии (37)

  • –23
    Очередной говнораспил для спускания пара и создания видимости работы «органов».
    • +22
      Можно было бы так говорить, если бы делалось всё по госзаказу и этими же службами. А тут — независимый проект, который помогает людям определиться с тем, куда писать и к кому обращаться.
      • +2
        Насколько он независимый? В партнерах — Правительство Москвы, «внутренняя аналитика доступна президенту РФ», ссылка на проект на сайте «Собянина» — Наш город Москва.
        • +2
          На 100%.

          С gorod.mos.ru мы с интегрированы по API, т.е. по определенным критериям обращения попадают и на их портал.

          Аналитика по ответам организациям доступна, для того, чтобы анализировать на какой процент обращений организации дают ответ, а на какой закрывают глаза.
          • +1
            И ваш основатель Дмитрий Кох с организацией НАШИ тоже никак не связан
    • +5
      А распил с чьей стороны?
    • +2
      По моему проект полезный. Даже если на обращения забивают это тоже результат, по крайней мере очевидно, что надо что-то менять и как эти изменения можно оценить — начнут реагировать или нет.
  • +8
    Пробовал отправлять несколько заявлений — эффекта ноль.
    • 0
      То есть ни ответа, ни отказа что-то предпринимать?
      • 0
        Написал человеку в лс, он молчит к сожалению.
        • 0
          Извиняюсь за непреднамеренное молчание.
          На несколько обращений не пришло вообще никакого ответа. Все они связаны с полицей (общественный правопорядок и т.п.) На некоторые (ЖКХ) пришли отписки про создание комиссии, обязательно рассмотрим, непременно исправим и т.д. Жалобы на бездействие так же с нулевым эффектом.
          Некоторый проблемы (тут наиболее показателен автохлам), по причине отсутствия фидбека, непонятно каким образом, но самоустранились. Учитывая сроки, я склонен полагать, что не из-за отправленных заявлений и жалоб (например эвакуация хлама через 200 дней после заявления)
          • 0
            Частота ответов наших органов конечно оставляет желать лучшего. Это варьируется от организации к организации, кто-то лучше отвечает, кто-то хуже. Тут уже мы никак повлиять на них не можем. Есть публичная статистика у нас на портале по представительствам разных организаций, где можно посмотреть какой процент ответов у той или иной организации.

            А также есть еще 4 инструмента которыми можно воспользоваться и которые мы планируем в ближайшее время расширять, но чтобы ими воспользоваться вы должны ей поделиться с друзьями. Это:
            Комментарий юриста — Если заявление не сработает, то юристы проекта бесплатно проконсультируют вас, предложив наиболее подходящий план действий. Сообщение будет опубликовано в окне для комментариев с уведомлением на электронную почту.

            Персональное сопровождение — Юристы проекта подготовят и направят (или перенаправят) дополнительные обращения в компетентные организации. Как только будут получены официальные ответы, мы незамедлительно опубликуем их на сайте с уведомлением на электронную почту.

            Информационная поддержка — Чтобы проблема решилась быстрее, мы привлекаем СМИ и помогаем распространить информацию в социальных сетях. По особым случаям мы сделаем сюжет о проблеме.

            Подготовить заявление в суд — В случае бездействия чиновников юристы проекта подготовят для вас исковые заявления или жалобы в судебные инстанции.
  • +3
    Ваш сервис очень портит публично доступные ВСЕ обращения. Сделали бы хоть монетизацию какую чтоб публично видно было только пользователям сервиса, или вообще никому. А так как то отпугивает что ты свои личные проблемы с комунальщиками выставляешь на всеобщее обозрение.
    • 0
      А это интересная идея. Спасибо!
      • +1
        Я вам писал про неё в сапорт, сказали так нельзя. Ну нельзя, так нельзя. Как-то узнать о такой возможности можно в будущем?
        • +1
          Личным сообщением вас оповещу =)
          • +1
            Спасибо!
    • –3
      Вот тут slon.ru/biz/1011629/ в первом же комменте о вреде такой публичности — торгаши тоже читают обращения.
      • 0
        Ну-да, смешно)) Сотрудничество с компаниями по установке фильтров, с укладчиками асфальта, установщиками светофоров, частными детскими садами, водителями маршруток и многими другими)))
        • 0
          Не понимаю что смешного. Какое сотрудничество? Вы по-диагонали читали? Человек публикует обращение и оно доступно ВСЕМ. В итоге любое заинтересованное лицо может заспамить этого человека предложениями своих услуг.
          Это всё равно что опубликовать объявление на auto.ru и потом тоннами получать смски о быстром выкупе авто и т.п.
          Мои коммунальные проблемы должны быть известны только мне и коммунальщикам, мне не нужны услуги водопроводчика, быстрая установка фильтров и акция, пластиковые окна за полцены.
          • +1
            Я сам пользовался auto.ru и когда я там размещал объявление я понимал на что иду. Через такую публичность я быстрее продам авто, чем печатая в газетах и прочих источниках, даже путем назойливых звонков. Так же и у нас, никто вас не заставляет ставить фильтры. Нет ничего совершенного, мы хоть как-то помогаем пользователям все их обращения структоризовать, направить в компетентные организации и подкрепить обращения с точки зрения закона нужными статьями. Минус приватности в том, что если вы отправляете приватное обращение, об этом знаете только вы и возможно организация (при условии что оно дойдет до них и не потеряется по дороге при пересылке от одной организации в другую ) и даже если обращение дойдет, не факт что его просто не проигнорируют. И в завершении хочу сказать, что моим знакомым разместившим обращения на портале, не предлагали никаких дополнительных услуг, пример одного пользователя ничего не говорит в целом.
  • +1
    Вроде, ничего необычного нет. Или это open source проект?
    • 0
      Нет ничего особенного.
  • –2
    Ну почему вот «Сердитый гражданин», а не «Счастливый гражданин»? Ну откуда вот у вас это, откуда? Как назовете, с таким ведь отношением и будет поступаемый контент и ожидания от него. Это не Angry Birds — игра про птичек, нет.
  • +2
    А сырцы проекта не планируете открывать? Чтоб другие могли помогать…
    • +3
      Пока не планируем, возможно в будущем для отдельных компонентов будем.
      • +2
        Забавно, что вас минусуют. Как будто вы обязаны открыть сорцы.
        • +2
          Коммунизм в стране похоже)
  • +1
    Не раскрыт вопрос как вы обрабатываете ответные факсы и определяется к какой заявке ответ прикреплять (OCR?) или организации на факсы отвечают по e-mail?
    Еще вопрос в гарантированной доставке — отправленное по e-mail или факсу может быть легко проигнорировано организациями, так как в этих случаях нет гарантированной доставки.
    Ну и пожелание — подключите gorod.gov.spb.ru — не знаю, есть ли у них API, но точно есть мобильные приложения и можно распарсить протокол.
    • 0
      Ответ от организации приходит по каналу AngryMail.

      Т.е. в факсе посылаем email на который мы ждем ответ.

      Часть писем все-же помечаются прочитанными, а те что не помечаются наши специалисты прозванивают организации.

      Спасибо, учтем)
  • +1
    Ох уж эти государственные органы.

    Неделю назад зарегистрировался на портале, совершил кучу транзакций, а сегодня не смог зайти, по причине того что они не активировали мой аккаунт, который был на gmail.

    Хотел связаться с ними через форму обратной связи, но она на работала из-за криворукости верстальщиков. Пришлось звонить на городской.

    Все объяснил, пообещали в течении часа выслать на телефон и почту уведомление. Спустя несколько часов пришлось перезванивать. Оказалось, что оператор не создал соответствующую заявку.
    На этот раз пообещали разобраться в течении трех дней.
    Итого -100 р. за телефонную беседу и немного потрепанных нервов.

    Их работу нужно автоматизировать и передавать сторонним подрядчикам, т.к. текущий сервис оставляет желать лучшего.
    • +1
      В продолжении темы, получил сегодня письмо с таким квестом:

      В Вашем личном кабинете отсутствует почта и контрольный вопрос/ответ. Вам необходимо привязать Вашу почту: *gmail.com к данной учетной записи.
      Вам необходимо обратиться в МФЦ для уточнения Ваших личных данных.

      При личном визите в МФЦ необходимо:
      1) Показать любому сотруднику МФЦ паспорт
      2) Назвать номер обращения, в рамках которого решается ваш вопрос.
      3) Уточнить у сотрудника МФЦ его ФИО

      Далее необходимо:
      1) Связаться со службой технической поддержки по телефону, указанному на портале
      2) Сообщить сотруднику технической поддержки номер вашего обращения, наименование МФЦ и ФИО сотрудника к которому вы обратились.
      После предоставления указанной вами информации сотрудники технической поддержки портала свяжутся с данным сотрудником МФЦ и, в случае если сотрудник МФЦ подтвердит факт вашего обращения, Ваш вопрос будет решен.


      Сами напортачили и еще мне предлагают это расхлебывать. И самое что интересное, они написали что я не задал контрольное слово, хотя по этому же слову они со мной вели диалог!

  • 0
    Есть такой кейс: www.angrycitizen.ru/case/118858

    Так когда в итоге было отправлено обращение в Правительство региона, 5 или 22 сентября?
    • 0
      Попробуйте обратится в поддержку, я таких данных не имею.
  • 0
    Фронтенд бы немного оптимизировать
    — стили (6 файлов) и js (9 файлов) склеить и минифицировать
    — картинки в спрайты загнать
    — экран мигает 3 раза в Firefox, 1 раз в Chrome

    • 0
      Согласен. Тикет висит уже давно, но в спринт вряд ли попадет ближайшее время.
      Команда у нас маленькая, а задач очень много по важнее.
      Плацдарм для оптимизации очень большой помимо этих пунктов =)

      А вот про мигание можно подробно?

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.