• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Alarm bez bazy danych

Object Storage Arubacloud
0 głosów
97 wizyt
pytanie zadane 4 stycznia 2020 w JavaScript przez saseta00 Użytkownik (700 p.)

Hej, robię w celach edukacyjnych/hobbistycznie stronę z kursami kryptowalut.
Mam pobrane dane .json przez api, przypisane do zmiennej i przez getelementbyid wysłane do tabeli w html.
Dane w api aktualizują się co 2 minuty, a na stronie po jej odświeżeniu. 

Chciałbym dodać panel z alarmem, jednakże nie wiem jak się za to dobrze zabrać i czy da się to zrobić bez bazy danych. Jest możliwość zrobienia np. tabeli do której będą się dodawać alarmy które osoba sobie ustawi? Np. ustawia alarm gdy bitcoin_price > 30000 wybierając z menu rozwijanego kryptowalute i wybierając znak mniejszości/równości/większości, tworzy się funkcja if która się tym zajmuje, a w htmlu dodaje się np. w tabeli rekord z danymi odnośnie alarmu? 

Nie oczekuje żeby to nadal istniało po odświeżeniu strony (choć fajnie by było) ale chociaż w otwartej zakładce, no i kolejny problem z tym że dane z api pobierane są tylko przy ładowaniu strony, więc żeby taki alarm działał, musiałyby się te dane w funkcji jakoś aktualizować tak? 

Proszę o jakieś wskazówki dla nowicjusza.

1 odpowiedź

+1 głos
odpowiedź 4 stycznia 2020 przez Tomek Sochacki Ekspert (227,510 p.)
wybrane 4 stycznia 2020 przez saseta00
 
Najlepsza
Źle podchodzisz do problemu... najpierw mówisz o ogólnych założeniach biznesowych, czyli aktualizacja co jakiś czas (np. 2 minuty), a za chwilę o precyzyjnej implementacji IF itp. Źle. Najpierw analiza biznesowa, dopiero potem analizy pod kątem implementacji, nigdy, ale to przenigdy nie łącz tych 2 rzeczy.

Ja proponuję zatem dać userowi jakieś pole, gdzie wpisze sobie np. co ile minut chce aktualizować dane (z min. na 2 minuty) i apka niech asynchronicznie po prostu strzela sobie na endpoint, z którego pobierasz te dane co określony czas. Następnie mamy jakieś wylistowane dane (np. kurs bitcoint itp.) z możliwością zaznaczenia tych, które mają w jakiś tam sposób usera poinformować o istotnych zmianach, czyli też user moze miec obok tego pole, np. do wpisania wartości, która ma aktywować alarm wraz z wyborem większe/mniejsze niż.

Teraz każdy update danych z API powoduje po prostu wywołanie funkcji której zadaniem jest pobranie konfiguracji tych alarmów i przeiterowanie po otrzymanych danych z porównaniem wartości. Jeśli dla jakieś alarm ma być aktywowany to zapisuje sobie tą informację i na samym końcu wyświetlamy ją jakoś zbiorczo userowi, np. w formie "słuchaj, Twoje kursy (tu lista) mają wartości na poziomie alarmującym i np. podać te wartości wraz z info, na jakiej był ustawiony alarm".

W takim podejściu najprostszym wydaje mi się, że mogłoby to być ok, w miarę proste do implementacji i z tego co piszesz rozwiąże problemy biznesowe. A ewentualne zapisywanie ustawień można zrobić np. z lokalnym storage usera jeśli nie chcesz bazy i back-endu (wchodząc w implementację to np. localStorage).
komentarz 4 stycznia 2020 przez saseta00 Użytkownik (700 p.)
dziękuje bardzo, bardzo cenne wskazówki.

Podobne pytania

+1 głos
1 odpowiedź 1,101 wizyt
0 głosów
0 odpowiedzi 118 wizyt
pytanie zadane 14 lutego 2019 w JavaScript przez Grzegorz Mikina Dyskutant (8,060 p.)
0 głosów
1 odpowiedź 282 wizyt

92,566 zapytań

141,420 odpowiedzi

319,615 komentarzy

61,952 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...