政府機関への控訴の自動送信をどのように組織したか





みなさんこんにちは! 私はプロジェクトチーム「Angry Citizen」で働いています。 政府機関とのコミュニケーションがどのように組織されているかをお話ししたいと思います。



協力には3つのタイプがあります。







アプリケーションの作成から組織からの応答までのプロセス全体は、3つの段階に分けることができます。







フォームへの入力とアプリケーションの作成






「Angry Citizen」ポータルのルブリケーターには約500の異なるカテゴリの問題があり、各カテゴリにはアピールを作成するための独自の特定のフォームがあります。 これは、AngryFormと呼ばれる小さなメカニズムです。 ところで、PHPで記述します。 フォームのメタデータが含まれており、フォームを処理できます。 AngryFormは、完成したフォームからアピールを作成する方法と送信先を知っています。 おそらく、AngryFormについては別の記事で詳しく説明します。 そのため、ユーザーは問題のカテゴリを検索し、そのフォームに記入します。 アプリケーションは、ユーザーから受信したデータに基づいて生成されます。



リクエストを送信する


アピールが生成されたら、誰かに送信する必要があります。 組織の基盤と、組織とのあらゆるコミュニケーション方法があります。 組織は特定の問題に関連付けられており、選択したカテゴリと地域に応じて、この組織の特定の代表オフィスに控訴が送信されます。



組織が異議申し立てを受け取ったらすぐに、申請者に回答しなければならない一定の期間があります。この期間内に収まらない場合、ユーザーは私たちのサービスを通じて検察に苦情を送ることができます。



組織との通信チャネルはいくつかあります。







必要なディーラーで利用可能な通信チャネルに応じて、送信はさまざまな方法で行われます。 FAXとポータルAPIについて簡単に説明します。



ファックス配信






ここではすべてが簡単です。呼び出しはAPIを介して担当組織のFAXに送信されます。 FAXで送信される通話の場合、AngryMailに一意の電子メールアドレスが作成され(以下について)、組織からの応答が期待されます。 組織からの応答は、AngryMailチャネルを介して送信されます。



状態ポータルのAPIを介した呼び出しの配信






現在、gorod.mos.ruやopenregion71.ruなどのいくつかのポータルと統合されています。 これらのポータルがユーザーが選択した条件に該当する場合、サービスに加えてこれらのポータルに電話がかかります。 これらのリクエストに対する回答を受け取った後、それらはポータルにも表示されます。 ずっと、これらのポータルのサーバーをポーリングして、アプリケーションへの回答を探しています。 そして、答えが見つかると、ポータルのタイムラインに分類されます。



メール配信






ここでもっと面白いです。 異議申し立ての作成とともに、ユーザーと組織の駐在員事務所との間に一連の通信が作成されます。 呼び出しとチェーンを作成した後、呼び出しを送信するためのキューに入ります。 キューとして、RabbitMQを使用します。 キューから、呼び出しはAngryMailに送られます。



AngryMailは、受信および送信の電子メールメッセージを処理するJavaアプリケーションです。 AngryMailはチェーンに識別子を割り当て、{id►@angrymail.ruの形式で返信メールを生成します。返信先は、返信を待っています。



組織は、生成された電子メールアドレス({id} @ angrymail.ru)に、原則として、すべてのシールおよび署名付きの添付文書で応答します。 AngryMailは同様の電子メールを受信するとすぐに、AngryCitizenサービスに送信します。 応答は、ポータルのアピールのタイムラインに添付され、通知がユーザーに送信されます。



非常に短い場合、そうです。 サービスの仕事はこれで終わりではありませんが、それは別の話です。



この場所の記事を読んでくれてありがとう。



興味があれば、技術的な微妙さと一緒に私たちのプロジェクトの生活について話し続けます。



All Articles