Dmytro Romanchuk
Ranking
Poziom znajomości języków obcych
Umiejętności i kwalifikacje
Programowanie
Grafiki, audio i wideo
Aplikacje mobilne
Administracja systemami IT
Portfolio
-
579 PLN ConcreteBuildControl bot
PythonNazwa projektu: System automatyzacji logistyki i dostaw obiektów budowlanych (Bot Telegram)
Krótki opis: Opracowałem kompleksowego bota Telegram dla firmy budowlanej, który w pełni zautomatyzował cykl zakupu materiałów: od zgłoszenia kierownika budowy na obiekcie do dostawy i raportowania. System wykorzystuje Google Sheets jako bazę danych i CRM, co pozwala klientowi zarządzać procesami w znanym interfejsie bez wydatków na drogie panele administracyjne.
Problem, który rozwiązuje projekt:
… Wcześniej komunikacja odbywała się w chaotycznych czatach: zgłoszenia ginęły, PTO (dział inżynieryjny) nie zdążał zatwierdzać faktur, a dostawcy nie wiedzieli, co i gdzie przewozić. Brakowało przejrzystości statusów zamówień.
Funkcjonalność i Role:
Bot realizuje system rozgraniczenia praw dostępu (RBAC) dla 4 typów użytkowników:
1. Kierownik budowy (Foreman):
Tworzenie zgłoszeń na materiały (tekst lub zdjęcie).
Wybór obiektu z dynamicznej listy.
Przyjęcie materiałów na obiekcie (obowiązkowy raport zdjęciowy + komentarz).
Ewidencja materiałów od zamawiającego.
Cotygodniowe raporty o zużyciu materiałów.
Otrzymywanie powiadomień o statusie zgłoszenia ("Odrzucone", "Jedzie samochód").
2. PTO (Kontrola inżynieryjna):
Walidacja zgłoszeń: przyciski "Zatwierdź" / "Odrzuć".
Możliwość edytowania listy materiałów przed zatwierdzeniem.
Przeglądanie zgłoszeń zdjęciowych i raportów o przyjęciu.
Automatyczne przekazywanie zatwierdzonych zgłoszeń do działu dostaw.
3. Dostawy (Supply):
Otrzymywanie powiadomień o nowych zatwierdzonych zgłoszeniach (ze zdjęciami i szczegółami).
Oznaczanie zgłoszeń statusem "Zamówione".
4. Logistyka:
Kontrola gotowych do wysyłki ładunków.
Zmiana statusu na "Wysłane" (automatyczne powiadomienie kierownika budowy).
Stos technologiczny:
Język: Python 3.10+
Framework: aiogram 3.x (architektura asynchroniczna).
Baza danych: Google Sheets API (biblioteka gspread). Używana jako Baza Danych dla łatwości edytowania przez menedżerów.
Deployment: VPS (Linux), PM2 do zarządzania procesami.
Kluczowe rozwiązania techniczne (High-lights):
Optymalizacja pamięci: Zrealizowano niestandardowe zarządzanie pamięcią za pomocą gc (Garbage Collector) oraz zoptymalizowanych zapytań do API Google. To pozwoliło na zmniejszenie zużycia RAM na słabym VPS, unikając ładowania dużych zbiorów danych.
Niezawodne wyszukiwanie danych: Opracowano algorytm "Smart Search", który znajduje ID zamówienia w tabeli niezależnie od formatowania (ignoruje zera z lewej, spacje, tekstowy format komórek), co wyeliminowało błędy przy ręcznym edytowaniu tabeli przez menedżerów.
Bezproblemowa interakcja: Zrealizowano łańcuch wiadomości. Po naciśnięciu przycisku "Zatwierdź" bot nie tylko zmienia zapis w Baza Danych, ale natychmiast wysyła utworzoną kartę zamówienia (ze zdjęciem) do czatu następnego działu.
Wynik:
Bot połączył pracę działów w jeden strumień. Czas przetwarzania zgłoszenia skrócił się, straty informacji zostały zredukowane do zera, a kierownictwo otrzymało przejrzyste raporty w Google Arkuszach w czasie rzeczywistym.
-
331 PLN Strona wizytówka
Układ HTML i CSSOgólny opis
To kod strony typu one-page (Landing Page) dla klubu fitness "SPARTA", stworzony z użyciem HTML, CSS i JavaScript. Jego głównym celem jest przedstawienie oferty promocyjnej oraz zebranie danych kontaktowych klientów za pomocą formularza rezerwacji.
… Struktura i Stylizacja (HTML/CSS)
Strona ma logiczną strukturę z kluczowymi blokami: baner promocyjny, "przyklejona" nagłówek strony, główny ekran na pełną wysokość (100vh) z tłem obrazem, formularz rezerwacji oraz informacyjna stopka.
Projekt wykonany jest w jasnej żółto-czarnej kolorystyce, kolory są zadane przez zmienne CSS dla łatwej zmiany. Strona jest w pełni responsywna dla urządzeń mobilnych, używa standardowych czcionek dla czytelności i ma płynne efekty interaktywne przy najeżdżaniu na przyciski i linki.
Interaktywność (JavaScript)
Cała funkcjonalność została zrealizowana w "czystym" JavaScript:
Mobilne menu: Responsywne menu-burger, które wysuwa się z prawej strony, z animacją i przyciemnieniem tła. Obsługuje zagnieżdżone podmenu, które rozwijają się po kliknięciu.
Interfejs: Użytkownik może zamknąć górny baner promocyjny.
Obsługa formularza: Formularz rezerwacji wysyła dane na email za pomocą zewnętrznego serwisu FormSubmit.co, który nie wymaga własnego backendu. Po pomyślnym wysłaniu użytkownik automatycznie przekierowywany jest na stronę podziękowania (thank-you.html).
-
248 PLN Panel webowy do automatyzacji i zarządzania wysyłkami Telegram
Układ HTML i CSSTo jest panel sterowania, napisany w Pythonie z wykorzystaniem frameworka FastAPI, który służy jako graficzny interfejs dla wcześniej opisanego skryptu automatyzacji wysyłek w Telegramie (core_logic.py). Panel pozwala użytkownikowi zarządzać kontami Telegram, uruchamiać wysyłki i śledzić ich wykonanie przez przeglądarkę. Do przechowywania danych używana jest baza danych SQLAlchemy.
Kluczowe możliwości
… Centralne zarządzanie kontami: Interfejs webowy pozwala na dodawanie nowych, przeglądanie listy istniejących oraz usuwanie kont Telegram z bazy danych wraz z ich plikami sesji.
Autoryzacja webowa: Zrealizowano krokowy proces dodawania nowych kont bezpośrednio przez przeglądarkę. Użytkownik wprowadza numer telefonu, następnie kod potwierdzający z Telegramu, a w razie potrzeby, hasło dwuskładnikowej autoryzacji (2FA). System przetwarza wszystkie etapy, tworzy plik sesji i zapisuje konto.
Uruchamianie i konfigurowanie kampanii: Użytkownik może wybierać konta do udziału w wysyłce i uruchamiać zadania w tle. Dla każdej kampanii można określić indywidualne ustawienia (np. pliki z celami i wiadomościami).
Wykonywanie zadań w tle: Wysyłki są realizowane jako procesy w tle (BackgroundTasks). Oznacza to, że użytkownik może zamknąć stronę w przeglądarce, a zadanie będzie kontynuowane na serwerze.
Monitorowanie w czasie rzeczywistym: Panel wyświetla bieżący status zadania (np. "Gotowy do uruchomienia", "Wykonywane", "Zakończone", "Błąd") i pozwala przeglądać ostatnie wpisy z pliku logów, co umożliwia śledzenie postępu i diagnozowanie problemów.
Bezpieczne zatrzymanie: Przewidziano możliwość wysłania sygnału do poprawnego zatrzymania bieżącego zadania. Skrypt zakończy swoją bieżącą akcję (np. wysyłanie wiadomości) i zatrzyma się, nie przerywając procesu nagle.
Logika działania
Użytkownik otwiera stronę główną, gdzie widzi tabelę ze wszystkimi dodanymi kontami Telegram i ich statusami, a także panel sterowania do uruchamiania zadań.
Dodawanie konta: Użytkownik wypełnia formularz, podając numer telefonu i inne ustawienia (proxy, pliki). Serwer inicjuje proces autoryzacji przez Telethon, wysyłając kod na podany numer. Po wprowadzeniu kodu (i hasła 2FA, jeśli to konieczne) serwer zapisuje plik sesji i dodaje wpis o koncie do bazy danych.
Uruchamianie kampanii: Użytkownik wybiera jedno lub kilka aktywnych kont, konfiguruje parametry i naciska przycisk "Start".
Przeglądarka wysyła zapytanie do serwera. Serwer (FastAPI) przyjmuje to zapytanie, sprawdza, czy nie jest wykonywane inne zadanie, i uruchamia główną logikę wysyłki (run_script_logic) w tle.
Użytkownik natychmiast zostaje przekierowany z powrotem na stronę główną, gdzie widzi, że status zadania zmienił się na "Uruchamiane..." lub "Wykonywane".
JavaScript na stronie okresowo wysyła zapytania do serwera w celu uzyskania aktualnego statusu i logów, aktualizując informacje na ekranie bez przeładowania strony.
Po zakończeniu wysyłki status automatycznie aktualizuje się na "Zakończone" lub "Błąd".
-
207 PLN Bot fitness w Telegramie
PythonTo jest bot Telegram, napisany w Pythonie z wykorzystaniem biblioteki python-telegram-bot. Jego głównym celem jest dostarczanie użytkownikom programów treningowych na podstawie ich płci, celu (utrata wagi, przyrost masy itp.), wzrostu i wagi. W celu interakcji z użytkownikiem bot wykorzystuje dialog krok po kroku (ConversationHandler), co sprawia, że proces jest intuicyjny.
Główne komponenty i ich przeznaczenie
… Biblioteka python-telegram-bot: To podstawa, która zapewnia interakcję z Telegram API. Kod wykorzystuje jej asynchroniczną wersję (async def), co jest nowoczesną praktyką.
ConversationHandler: To kluczowy element logiki bota. Pozwala na stworzenie "dialogu" z użytkownikiem, który składa się z kilku kroków lub "stanów". Bot kolejno zadaje pytania i czeka na odpowiedzi, przechodząc od jednego stanu do drugiego.
Stany (States):
Zmienne SELECT_GENDER, GET_HEIGHT itd. — to unikalne identyfikatory dla każdego kroku rozmowy. Pomagają ConversationHandler zrozumieć, na jakim etapie dialogu znajduje się użytkownik i którą funkcję wywołać następnie.
Klawiatury (ReplyKeyboardMarkup):
Zamiast zmuszać użytkownika do wpisywania tekstu ("Mężczyzna", "Utrata wagi"), bot oferuje gotowe przyciski. Zmniejsza to prawdopodobieństwo błędów i sprawia, że interfejs jest bardziej przyjazny. W kodzie znajdują się trzy różne klawiatury: do wyboru płci, do wyboru celu przez mężczyzn i kobiety.
Dane treningów (male_programs, female_programs):
To dwa duże słowniki (dictionaries), które stanowią "bazę danych" bota. Zawierają gotowe programy treningowe, uporządkowane według płci, celu i dni tygodnia. Obecnie te dane są na stałe zapisane w kodzie.
Funkcje-obsługiwacze (Handlers):
start: Uruchamia dialog, wita użytkownika i proponuje wybór płci.
select_gender, select_male_goal, select_female_goal: Obsługują wybór użytkownika z klawiatury, zapisują dane (context.user_data) i zadają następne pytanie.
get_height, get_weight: Odbierają wiadomości tekstowe, przekształcają je w liczby, sprawdzają poprawność i zapisują.
show_workout_program: Ostateczna funkcja. Zbiera wszystkie zapisane dane, oblicza Wskaźnik Masy Ciała (BMI) i znajduje odpowiedni program treningowy w słownikach. Następnie formułuje dużą wiadomość tekstową i wysyła ją do użytkownika.
cancel: Pozwala użytkownikowi w dowolnym momencie przerwać dialog komendą /cancel.
Logika działania (Krok po kroku)
Użytkownik wysyła komendę /start.
Bot odpowiada powitalną wiadomością i pokazuje klawiaturę z przyciskami "Mężczyzna" i "Kobieta". Dialog przechodzi w stan SELECT_GENDER.
Użytkownik naciska jeden z przycisków.
W zależności od wyboru, bot pokazuje nową klawiaturę:
Dla mężczyzn: "Utrata wagi", "Przyrost".
Dla kobiet: "Utrata wagi", "Tonizacja mięśni".
Dialog przechodzi w stan SELECT_MALE_GOAL lub SELECT_FEMALE_GOAL.
Użytkownik wybiera cel.
Bot zapisuje cel i prosi o podanie wzrostu. Dialog przechodzi w stan GET_HEIGHT.
Użytkownik wysyła swój wzrost w centymetrach. Bot sprawdza, czy to liczba, i zapisuje ją.
Bot prosi o podanie wagi. Dialog przechodzi w stan GET_WEIGHT.
Użytkownik wysyła swoją wagę. Bot sprawdza, czy to liczba, i zapisuje ją.
Bot wywołuje funkcję show_workout_program, która:
Oblicza BMI według wzoru waga / (wzrost w metrach)².
Określa kategorię BMI ("Norma", "Otyłość" itd.).
Na podstawie płci i celu znajduje odpowiedni program treningowy.
Formułuje i wysyła ostateczną wiadomość z BMI i programem na 3 dni.
Dialog kończy się (ConversationHandler.END).
-
497 PLN Korporacyjny bot Telegram: Zarządzanie zmianami, agregacja danych
PythonKompleksowy system do zautomatyzowanego zbierania raportów finansowych i magazynowych od personelu sieci handlowej. System strukturyzuje dane wejściowe z czatów, minimalizuje czynnik ludzki i tworzy analitykę dla zarządu.
Zrealizowano:
… Smart Parsing: Algorytm rozpoznawania dowolnego tekstu (podział na kategorie/ilość/sumę) z ochroną przed błędami wprowadzania.
Data Wizard: Krokowy interfejs składania raportu z możliwością powrotu i edytowania wcześniejszych kroków (Zarządzanie stanem).
Smart Editing: Mechanizm edytowania już wysłanych raportów z automatycznym wypełnianiem formularzy wcześniejszymi danymi.
Security: Model ról dostępu (Admin/Pracownik), ochrona roboczych czatów przed spamem i zbędnymi komendami.
Stos: Python (Aiogram 3), PostgreSQL, SQLAlchemy, Docker Compose.
#telebot #Telegram #python #docker #ChatBots
-
248 PLN Krypto bot
PythonTo autonomiczny bot-analizator Telegram, napisany w Pythonie, który jest przeznaczony do automatycznego zbierania, analizy i publikacji codziennych raportów o rynku kryptowalut. Bot integruje kilka usług: zbiera informacje z kanałów RSS i publicznych kanałów Telegram, przetwarza je za pomocą sztucznej inteligencji (Google Gemini), a następnie publikuje uporządkowany raport w wskazanym kanale Telegram.
Kluczowe możliwości
… Agregacja z wielu źródeł: Bot jednocześnie zbiera wiadomości z różnych źródeł: stron informacyjnych przez kanały RSS oraz popularnych kanałów Telegram.
Parsowanie pełnego tekstu: Dla wiadomości ze stron bot stara się przejść do linku i uzyskać pełny tekst artykułu, a nie tylko krótki opis z RSS, co zapewnia głębszy kontekst do analizy.
Analiza za pomocą AI: Cała zebrana tekstowa informacja jest wysyłana do modelu językowego Google Gemini z specjalnym zapytaniem (prompt), które wymaga analizy nastroju rynku, wydobycia kluczowych wydarzeń i podania krótkiej prognozy.
Automatyczna publikacja według harmonogramu: Dzięki wbudowanemu harmonogramowi zadań (apscheduler), bot automatycznie generuje i publikuje raport codziennie o ustalonej porze (na przykład o 9:00 rano).
Zarządzanie przez komendy: Administrator bota może uruchomić proces analizy i publikacji ręcznie w dowolnym momencie za pomocą komendy /analyze. Dla zwykłych użytkowników dostępna jest informacyjna komenda /start.
Wykorzystanie dwóch bibliotek Telegram: python-telegram-bot jest używany do stworzenia samego bota i obsługi komend, podczas gdy Telethon jest używany do uzyskiwania dostępu do innych kanałów w imieniu konta użytkownika w celu zbierania wiadomości.
Logika działania
Inicjalizacja: Po uruchomieniu skrypt inicjalizuje bota, łączy się z API Telegram i ustawia harmonogram, który zadziała w określonym czasie.
Zbieranie danych (na wyzwalaczu): Gdy uruchamia się timer harmonogramu lub administrator wywołuje komendę /analyze, uruchamiana jest główna funkcja analizy:
Bot przechodzi przez listę linków RSS, zbiera artykuły opublikowane w ciągu ostatniej doby i stara się załadować ich pełny tekst.
Jednocześnie, używając Telethon, łączy się z Telegramem jako użytkownik i zbiera ostatnie posty z listy docelowych kanałów.
Analiza w AI: Wszystkie zebrane teksty są łączone w jeden duży kontekst i wysyłane do modelu Gemini.
Przetwarzanie i formatowanie: Bot otrzymuje odpowiedź od AI w postaci prostego tekstu ze specjalnymi znacznikami ([SENTYMENT], [WYDARZENIA] itd.). Skrypt zamienia te znaczniki na formatowanie (emoji, pogrubienie) dla lepszej czytelności.
Publikacja: Ostateczny, sformatowany raport wraz z listą źródeł jest wysyłany do docelowego kanału Telegram.
-
662 PLN Skrypt do wysyłki w telegramie
PythonOgólny opis
To potężny skrypt do automatyzacji masowych wysyłek w Telegramie, napisany w Pythonie z wykorzystaniem biblioteki Telethon. W przeciwieństwie do standardowych botów, działa, zarządzając rzeczywistymi kontami użytkowników, co pozwala na wysyłanie prywatnych wiadomości i komentowanie w grupach. Skrypt jest częścią większego systemu, prawdopodobnie z interfejsem webowym do zarządzania.
… Kluczowe możliwości
Wielokrotne konta: Skrypt może jednocześnie zarządzać nieograniczoną liczbą kont Telegram.
Autoryzacja i sesje: Automatycznie loguje się na konta (w tym z dwuetapową weryfikacją), przechowuje sesje, aby uniknąć ponownych logowań i potrafi określać zablokowane konta, aktualizując ich status w bazie danych.
Wsparcie dla proxy: Dla każdego konta można skonfigurować indywidualne proxy, co zwiększa anonimowość i zmniejsza ryzyko zablokowania.
Elastyczne zarządzanie kampaniami: Listy celów (użytkowników/grup) oraz teksty wiadomości są ładowane z oddzielnych plików, co pozwala na łatwe dostosowywanie wysyłek bez zmiany kodu.
"Ludzka" zachowanie: Skrypt wykorzystuje losowe opóźnienia między wysyłaniem wiadomości a przełączaniem między kontami, naśladując działania żywej osoby, aby obejść filtry spamowe Telegramu.
Rozszerzona logika: Przed wysłaniem skrypt sprawdza, czy istnieje docelowy użytkownik. Jeśli konto nie ma uprawnień do pisania w grupie, automatycznie próbuje do niej dołączyć i powtórzyć wysyłkę.
Logika działania
Skrypt otrzymuje na wejściu listę kont, które mają wziąć udział w wysyłce.
Kolejno łączy się z każdym kontem, używając zapisanych plików sesji i skonfigurowanych proxy.
Dla każdego podłączonego konta ładowana jest jego indywidualna lista celów i wiadomości.
Skrypt rozpoczyna pętlę, w której dla każdego celu wybierana jest losowa wiadomość i wysyłana w imieniu aktualnego konta.
Po każdej akcji wykonywana jest przerwa. Po zakończeniu pracy z jednym kontem, skrypt robi dłuższą przerwę i przechodzi do następnego.
Proces można zatrzymać zdalnie (na przykład z panelu webowego).
Po zakończeniu zadania wszystkie konta są poprawnie odłączane, a wyniki (liczba wysłanych i nieudanych wiadomości) są zwracane do raportu.
Recenzje dotyczące zrealizowanych zleceń 9
17 czerwca
579 PLN
Automatyzacja FB pisania skryptu w Pythonie
Praca wykonana w terminie )
![]()
7 czerwca
331 PLN
Opracowanie skryptu w BAS (Browser Automation Studio) do automatyzacji Facebooka za pomocą Dolphin Anty AP
Praca została wykonana przed wcześniej ustalonym terminem, maksymalnie efektywnie)
![]()
4 luty
828 PLN
Automatyzacja w serwisie n8n - whatsapp - crm
Wszystko nie wychodziło za pierwszym razem, ale w rezultacie pokonaliśmy postawione zadania.
19 stycznia
331 PLN
Przeniesienie modelu z ANSYS APDL (Classic) do ANSYS Workbench / Skrypt Pythona do automatyzacji przeniesienia
Wszystko świetnie. Po wszystkich kryteriach. Wykonawca szybko zrozumiał zupełnie nową i skomplikowaną tematykę. I udało mu się rozwiązać wszystko w ramach postawionego zadania.
![]()
19 stycznia
83 PLN
Napisanie skryptu w Pythonie do konwersji APDL w Workbench
Wszystko świetnie. Po wszystkich kryteriach. Wykonawca szybko zrozumiał zupełnie nową i skomplikowaną tematykę. I udało mu się rozwiązać wszystko w ramach postawionego zadania.
![]()
8 stycznia
207 PLN
Wdrożenie bota Telegram na Pythonie z integracją SalesDrive
Projekt wykonany zgodnie z TZ
2 stycznia
414 PLN
Telegram-skrypt
Wspaniały specjalista!
Pracę wykonał szybko i jakościowo. Zawsze był w kontakcie, szybko odpowiadał na wszystkie pytania i uwzględniał wszystkie uwagi i życzenia. Bardzo uprzejmy, odpowiedzialny i profesjonalny w swoim fachu. Współpracą jestem całkowicie zadowolony - zdecydowanie polecam!
26 grudnia 2025
166 PLN
Dopracować bota Python
Zrobił szybko i był w kontakcie, teraz testujemy. Ale błędów jak na razie nie znaleziono! Polecam
6 grudnia 2025
579 PLN
Stworzyć czat bota
Jestem całkowicie zadowolony z pracy. Wykonane bardzo szybko i profesjonalnie.
Aktywność
| Ostatnie oferty 10 | Budżet | Dodana | Terminy | Oferta | |
|---|---|---|---|---|---|
|
Specjalista ds. optymalizacji GPU
186 PLN
|
|||||
|
Szukamy dewelopera do stworzenia bota handlowego/bota czatu
83 PLN
|
|||||
|
Bot Telegram dla serwisu samochodowego
83 PLN
|
|||||
|
~5 mikroserwisów na FastAPI + poprawki i refaktoryzacja
1301 PLN
|
|||||
|
Przywrócenie dostępu do konta Telegram.
828 PLN
|
|||||
|
Automatyczne publikowanie relacji na Instagramie
83 PLN
|
|||||
|
Power BI
83 PLN
|
|||||
|
Bot automatyzacji dla playerok.com
331 PLN
|
|||||
|
Trzeba stworzyć prostego bota do checkpointów na serwerze GTA5
207 PLN
|
|||||
|
Ustawienie bota Telegram do uzyskiwania informacji z Elektronicznego Biura Podatnika
83 PLN
|