#programowanie
W jaki sposób mogę wykrywać w programie że dostałem powiadomienie na discordzie, telegramie, oraz signalu? W dowolnym języku, ja to w razie czego zepne jakoś z resztą projektu

Idealnie by było żeby działało bez opóźnienia (tzn. przychodziło w tym samym momencie co na discordzie, telegramie, lub signalu)
lurker_z_internetu

To jakie protokoły obsługuje każdy z tych serwisów sprawdzisz w ich dokumentacji API.


Szukasz push notifications, to może być coś na co rejestrujesz stream na który dostaniesz powiadomienia. Może to też być webhook, który wywoła jakiś endpoint w Twoim serwisie.


Jak nie znajdziesz nic z powyższych to robisz polling, czyli pytasz cyklicznie serwer czy coś nowego przyszło.


Raczej dla każdego z tych serwisów rozwiązanie będzie inne.

redve123

@lurker_z_internetu discorda na pewno nie sprawdze, bo discord ToS tego zabrania, ale to będę sie martwił ewentualnym banem na swoim koncie

Catharsis

@redve123 Hmm ale gdzie to ma działać? Bo jeżeli na androidzie to możesz aplikacji dać uprawnienia do odczytywania wszystkich powiadomień. Nie wiem dokładnie jak to działa bo nigdy nie napisałem nic na androida ale zgaduje, że to będzie jakieś api i pewnie będziesz w evencie dostawać powiadomienie i tam będzie id apki.


Jeżeli PC to na pewno na Linuxie możesz nasłuchiwać powiadomień i dowiedzieć się z jakiej aplikacji przyszło. Co do Windowsa to nie jestem pewien ale skoro od jakiegoś czasu jest ten obszar powiadomień to zgaduje, że też musi być od tego jakieś API.


A jeżeli chcesz żeby to łączyło się bezpośrednio z API danej usługi to powodzenia bo nie wiem jak reszta ale np taki Discord to prawie na pewno nie ma publicznego api do takich rzeczy.

redve123

@Catharsis szukam opcji na linuxa/windowsa, którą potem może nawet wrzuce jakoś na esp32 żeby mi podświetlało ledy jak dostane wiadomość. Dopuszczam stosowanie nieoficjalnych metod, najwyżej dostane bana

Catharsis

@redve123 Jeżeli miałbym robić coś takiego dla samego Linuxa to sprawdź sobie taką komendę:

dbus-monitor "interface='org.freedesktop.Notifications'"

I teraz otwórz drugie okno terminala i wpisz:

notify-send 'Tytuł' 'treść powiadomienia'


Wszystkie powiadomienia teraz będą ci się wyświetlać w tym pierwszym terminalu na żywo.

W ten sposób możesz łatwo monitorować deamona powiadomień na linuxie. Oczywiście to jest najprostszy sposób, są do tego dedykowane biblioteki do różnych języków programowania np w Pythonie jest na pewno taka albo w Rustcie.


Co do Windowsa to nie mam pojęcia i nawet nie chce wiedzieć bo się będę tylko wkurzał googlując i odkrywając, że zaś coś co jest banalne do zrobienia na Linuxie może być niemożliwe na Windowsie itp.

redve123

@Catharsis liczyłem że da się jakoś podpiąć pod API discorda, tak jak można wysyłać wiadomości skryptem w pythonie Jak mówiłem, docelowo to ma śmigać na ESP32, a na nim linuxa nie zainstaluje

redve123

@Catharsis nie znałem tej strony, a wydaje sie tym czego szukałem. Dzięki

Meverth

@redve123 event listener. Gdzie chcesz słuchać? Bo od tego zależy implementacja

Zaloguj się aby komentować