Kod

Opracowanie aplikacji internetowej do automatycznego planowania

Tworzenie aplikacji internetowej do automatycznego planowania

Podstawy Pythona: Darmowy kurs dla wszystkich poziomów, od początkujących do doświadczonych programistów. Stwórz 4 imponujące projekty do swojego portfolio. Interaktywna komunikacja z nauczycielem dla efektywnej nauki. Dowiedz się, jakie umiejętności możesz opanować na tym kursie.

Dowiedz się więcej

Przygotowanie transmisji może być złożonym i wyczerpującym zadaniem, dlatego niezawodny zespół wsparcia jest niezbędny za kulisami, obok prowadzących. Niezależnie od tego, czy chodzi o telewizję, czy platformy takie jak YouTube, Rutube, VK i inne, producenci są kluczowymi postaciami za kulisami. Znajdują ekspertów, negocjują z potencjalnymi gośćmi, proponują tematy do dyskusji i koordynują wszystkie szczegóły, tworząc harmonogram dla wszystkich zaangażowanych.

Miliardy neuronów w głowach producentów transmisji strumieniowych są wyczerpane wysiłkiem związanym ze znalezieniem angażujących postaci, tworzeniem wyjątkowych odcinków, ponownym nawiązaniem kontaktu z niespodziewanie nieobecnymi gośćmi i, oczywiście, dotrzymywaniem harmonogramu. Zasadniczo producent transmisji jest jak człowiek-rakieta, który przepalił swoje bezpieczniki. Ale jak programowanie może pomóc? Spróbujmy zrozumieć ten problem.

Jakie procesy można zoptymalizować dzięki automatyzacji?

Udział w tworzeniu programów informacyjnych i dyskusje na ten temat z kolegami z innych mediów skłoniły mnie do refleksji: czy w pracy producenta istnieją jakieś rutynowe, ustandaryzowane procesy? Jeśli tak, to część z tych zadań można by powierzyć komputerowi. To z kolei zmniejszy obciążenie pracą i uwolni czas na inne, bardziej kreatywne zadania.

Załóżmy, że istnieje pewien algorytm, który, choć różni się w swoich wersjach, nadal można wdrożyć. Zastanówmy się, jakie aspekty mógłby wziąć pod uwagę hipotetyczny producent transmisji poświęconej tematyce politycznej.

Każdego dnia stajemy przed wyborem dotyczącym najbliższej przyszłości – dziś czy jutro. Sytuacja zmienia się dynamicznie i czasami trudno jest planować na dłuższą metę, choć w niektórych przypadkach jest to możliwe.

Załóżmy, że jest poranek lub wieczór – w zależności od grupy docelowej. Niektórzy mogą skupiać się na oglądaniu transmisji na żywo, podczas gdy inni wolą słuchać jej podczas jazdy samochodem. Ktoś może włączyć transmisję podczas gotowania w kuchni, niektórzy subskrybenci zostawią ją w tle podczas pracy, a jeszcze inni odłożą oglądanie nagrania na czas wolny.

Najczęściej jeden lub kilku uczestników ze stałego składu pełni rolę gospodarzy. Czasami jednak jeden z nich może być niedostępny z powodu pracy, podróży służbowej, urlopu lub choroby.

Ten aspekt jest najbardziej ekscytujący i kreatywny. Głównym celem jest identyfikacja najważniejszych i najbardziej aktualnych tematów, a także znalezienie specjalistów, którzy harmonijnie wpasują się w program i będą chcieli na krótko wystąpić na antenie, aby omówić temat.

Jednak to nie koniec sprawy. Należy zwrócić uwagę na wykwalifikowanych specjalistów, aby ponownie ich zaprosić, a tych mniej skutecznych należy wykluczyć.

Po przygotowaniu harmonogramu w jednym z możliwych formatów, musi on zostać zatwierdzony przez prelegentów. Oznacza to, że prezentowany tekst musi być jasny, zwięzły i czytelny, ponieważ prelegenci są zajęci i nie mają czasu na czytanie długich tekstów.

W rezultacie istnieje wiele zmiennych, które mogą ulec zmianie w bardzo krótkim czasie. Są to jednak te same zmienne, a proces gromadzenia danych można w pewnym stopniu zautomatyzować. Właśnie to zamierzamy zrobić.

Proces automatyzacji: kroki do skutecznego rozwiązania

Nasz program będzie łatwy w obsłudze i intuicyjny. Stworzymy lokalną stronę internetową, która będzie zawierała wszystkie najważniejsze elementy:

  • przyjazny dla użytkownika design;
  • możliwość wyboru parametrów transmisji;
  • niewielką bazę danych specjalistów z możliwością dodawania nowych uczestników;
  • automatyczne tworzenie harmonogramu;
  • przekazywanie gotowej wiadomości do czatu zespołu w Telegramie dedykowanego transmisji.

Producent pracujący nad transmisją będzie mógł wejść na naszą stronę, wybrać niezbędne elementy i uczestników (w razie potrzeby utworzyć profile dla nowych gości), stworzyć harmonogram z minimalnym drukowaniem i jednym kliknięciem wysłać ustrukturyzowany plan do zatwierdzenia przez gospodarza. Dla wielu to będzie więcej niż wystarczające, ale w razie potrzeby można łatwo dodać dodatkowe funkcje.

Jakich technologii planujemy użyć:

  • HTML i CSS do stworzenia atrakcyjnego projektu.
  • JavaScript jest używany do tworzenia interfejsów użytkownika.
  • Interfejs API IndexedDB umożliwia tworzenie lokalnej bazy danych bezpośrednio w przeglądarce, a funkcja ta jest obsługiwana przez nowoczesne przeglądarki.
  • Interfejs API bota Telegramu umożliwia wysyłanie harmonogramów do użytkowników.

Ukończony kod został przesłany na pastebin.com:

  • Kod HTML;
  • Kod JavaScript.

Wygląd wizualny naszej aplikacji: czego się spodziewać

Załóżmy, że tworzymy aplikację dla producentów fikcyjnego programu YouTube o nazwie Skillbox FM, w którym wystąpią prawdziwi gospodarze i goście, na podstawie wcześniej opublikowanych odcinków programu People and Code podcast.

Aplikacja do automatyzacji przygotowywania audycji - wygląd ogólnyZrzut ekranu: Skillbox Media

Aplikacja będzie działać na zasadzie Producent wiadomości: rozpocznie od ustalenia daty, godziny i prezenterów. Następnie system dopasuje ekspertów do zaplanowanych godzin emisji. Docelowo aplikacja zapewni harmonogram dla wszystkich prezenterów.

Przyjrzyjmy się tej sytuacji z perspektywy programisty:

  • Zasadniczo konieczne jest utworzenie zestawu pól wyboru, które administrator może ustawić w wymaganej kolejności.
  • Czas połączenia jest określany w sekcji „Typ transmisji” i jest ustawiany po wybraniu opcji „rano” lub „wieczór”.
  • Aby zaplanować ekspertów na konkretną godzinę, klikaj kolejno godziny połączenia, a następnie wybierz imię i nazwisko gościa. Zajmą oni przypisane im pozycje.
  • Wszystkie opcje koncentrują się na osiągnięciu pożądanego rezultatu, czyli tekstu posta. Na tej podstawie sekcja „Podgląd posta” powinna zostać umieszczona w centralnej części.

Tak program zareaguje, jeśli wybierzemy dowolne opcje.

Wybrano opcje dla porannej transmisji. Zrzut ekranu: Skillbox Media
Wybrano opcje dla transmisji wieczornej. Zrzut ekranu: Skillbox Media

Po kliknięciu niebieskiego przycisku u góry ekranu opublikujemy następny wpis na czacie Telegram.

Harmonogram porannej transmisji — wynik wysłania do czatu Zrzut ekranu: Skillbox Media
Harmonogram porannej transmisji — wynik wysłania do czatu Zrzut ekranu: Skillbox Media

Zastanówmy się, jak stworzyć taki program.

Implementacja

Projekt będzie składał się z dwóch plików: Air Constructor.html i speakersDB.js. Pierwszy plik to strona internetowa zawierająca kod HTML, CSS i trochę JavaScript. Drugi plik zawiera wszystkie aspekty związane ze specjalistyczną bazą danych i zawiera kod JavaScript, który zintegrujemy ze stroną internetową. Przyjrzyjmy się, jak korzystać z tych narzędzi. Interfejs powinien łączyć w sobie nie tylko estetykę, ale także wygodę dla producenta, dlatego projekt powinien pasować do korporacyjnego stylu mediów. W tym kontekście kolorem podstawowym będzie niebieski (kod #3D3BFF).

Zachowajmy prosty układ:

  • Prosta struktura trzech elementów
    , zaprojektowana tak, aby podzielić stronę na trzy pionowe sekcje:

,
,
.
  • Na pierwszym poziomie, jak widać na zrzucie ekranu, znajduje się nagłówek „Harmonogram transmisji” i przycisk wysyłania, umieszczony na niebieskim tle.
  • Drugi poziom zawiera sekcje takie jak „Data transmisji”, „Typ transmisji” i „Prelegenci”.
  • Trzecia kategoria obejmuje sekcje „Czas połączenia”, „Podgląd publikacji” i „Prelegenci”.
  • Ponieważ liczba reguł CSS jest niewielka, umieścimy je bezpośrednio na stronie za pomocą elementu