Potrzebny bot Telegram do automatyzacji podpisywania petycji z wykorzystaniem Dział.Podpis. Celem jest stworzenie wygodnego narzędzia, które pozwoli użytkownikom potwierdzać tożsamość przez Dział, podpisywać petycje i przechowywać dane podpisów w bazie i archiwum. Projekt już ma szczegółowe zadanie techniczne, środowisko testowe i dokumentację od Działu — wszystko zostanie przekazane wykonawcy. Poprzednia próba realizacji nie była udana z powodu niedotrzymania terminów, dlatego szukam odpowiedzialnego specjalisty, który będzie w stanie zakończyć pracę na czas.
Zadanie techniczne: Automatyzacja Podpisywania Petycji z Dział.Podpis
1. Cel projektu
Stworzyć rozwiązanie, w którym użytkownik będzie mógł potwierdzić swoją tożsamość przez Dział i podpisać petycję (lub wezwanie) z wykorzystaniem Dział.Podpis, a potwierdzenie podpisu ma być przechowywane w osobnym archiwum i w bazie danych.
2. Opis procesu biznesowego
- Potwierdzenie tożsamości:
- Użytkownik otrzymuje link/przycisk do potwierdzenia tożsamości przez Dział.
- Po pomyślnej autoryzacji otrzymujemy dane użytkownika (imię i nazwisko, data urodzenia, adres itp.).
- Podpisywanie petycji:
- Użytkownik widzi dostępne petycje/wezwania.
- Wybiera jedną z nich, klika “Podpisz”.
- Wygenerowany hash petycji jest wysyłany na serwer Działu w celu utworzenia żądania podpisania.
- Użytkownik otrzymuje link (deeplink) od Działu, za którym przechodzi do aplikacji Dział i podpisuje petycję.
- Przechowywanie wyników:
- Dział wysyła podpisany hash dokumentu na wskazany przez nas endpoint.
- Dane są przechowywane w bazie (lista podpisujących), a pliki/podpisy — w archiwum.
- Użytkownik otrzymuje powiadomienie, że petycja została pomyślnie podpisana.
3. Wymagana funkcjonalność
- Potwierdzenie tożsamości przez Dział:
- Wysłanie żądania weryfikacji użytkownika.
- Otrzymanie wyników (imię, data urodzenia i inne wymagane dane).
- Generowanie i wysyłanie żądania podpisania:
- Formowanie hashu petycji zgodnie z GOST 34.311 lub innym algorytmem wspieranym przez Dział (DSTU / ECDSA).
- Utworzenie oferty (offer) i uzyskanie deeplinku do podpisu.
- Otrzymanie podpisanego hashu:
- Endpoint do przyjmowania podpisanych danych od Działu.
- Przechowywanie podpisu (hash) i danych użytkownika.
- Powiadomienie zwrotne do użytkownika:
- Powiadomienie o pomyślnym podpisaniu.
- Archiwizacja danych:
- Możliwość przechowywania podpisanych danych (hash) oraz innych informacji roboczych w osobnym archiwum (np. ZIP).
- Powiązanie podpisu z konkretną petycją.
4. Aspekty prawne i techniczne
- Wykorzystanie HTTPS dla wszystkich zewnętrznych i wewnętrznych żądań, aby zapewnić bezpieczeństwo.
- Wykorzystanie oficjalnego API Działu:
- Uzyskanie tokena sesyjnego (acquirer_token).
- Realizacja tworzenia branch, offer oraz żądań podpisania zgodnie z dokumentacją.
- Dane użytkownika (imię i nazwisko, data urodzenia, adres) przechowywać w bazie, gdzie będą wykorzystywane do potwierdzenia statusu podpisującego.
5. Ostateczny wynik
- Użytkownik:
- Łatwo potwierdza tożsamość przez Dział.
- Podpisuje petycję w kilka kliknięć, otrzymując deeplink i przechodząc do aplikacji Dział.
- Serwis:
- Ma endpoint, który otrzymuje podpisane hashe od Działu i przechowuje je razem z danymi użytkownika.
- Zapewnia archiwum z podpisami dla każdej petycji (dokumenty+hashe).
- Administracja:
- Baza podpisujących dla każdej petycji.
- Możliwość pobrania archiwum podpisów w dowolnym momencie.
- Bezpieczeństwo i przejrzystość:
- Potwierdzone osoby przez Dział.
- Prawnie znaczący podpis elektroniczny.
6. Komentarze i życzenia
- Freelancer wybiera dowolne wygodne narzędzie (framework, metody realizacji) — najważniejsze, aby wyniki odpowiadały wymaganiom.
- Aplikacja ma być botem Telegram, w którym użytkownik wygodnie zapozna się i podpisze petycję.
Testowanie na środowisku sandbox Działu.
7. Dostarczone materiały
8. Wymagania wobec wykonawcy
Doświadczenie w pracy z Telegram Bot API oraz integracjami przez API (preferowane z Dział.Podpis).
Znajomość Pythona, Node.js lub innego języka odpowiedniego do realizacji.
Umiejętność pracy z dokumentacją i środowiskiem testowym.
Ścisłe przestrzeganie terminów i regularne raporty o postępach.