Cross application notification system. Wieloplatformowy system przesyłania i agregacji powiadomień

Podobne dokumenty
Referat pracy dyplomowej

REFERAT O PRACY DYPLOMOWEJ

Oferta szkoleniowa Yosi.pl 2012/2013

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Programowanie Komponentowe WebAPI

Czym jest Zerkam.pl?

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Internetowy serwis Era mail Aplikacja sieci Web

KATALOG MASZYN I POJAZDÓW ROLNICZYCH MASZYNY-3

EXSO-CORE - specyfikacja

Rejestracja użytkownika Bentley Często zadawane pytania techniczne

AKADEMIA GÓRNICZO-HUTNICZA Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Integral over IP. Integral over IP. SCHRACK SECONET POLSKA K.Kunecki FIRE ALARM

Dokumentacja techniczna

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Instrukcja korzystania z usługi 2SMS. Wersja 2.0 [12 stycznia 2014] bramka@gsmservice.pl

MeetingHelper. Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania. Instrukcja obsługi dla programisty

System Obsługi Gości InteliPASS. Prezentacja systemu i korzyści z wdrożenia

Wdrożenie systemu do obsługi wydarzeń organizowanych przez. Uczelnię wraz serwisem WEB

Instrukcja dodawania monografii e_monografii

System obsługi kancelarii v 2.0

Nowa strona internetowa Twojej Firmy w 3 dni!

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Proces obsługi deklaracji Intrastat w systemie Celina WebCel

Przewodnik dla studentów i absolwentów.

Pytanie nr 3: Czy połączenie urządzenie mobilne -> serwer będzie szyfrowane? (protokół HTTPS).

Aplikacja VISO Mobile v1.0 (Android) Instrukcja instalacji i obsługi

Aplikacje WWW - laboratorium

Automater.pl zdalne tworzenie i zarządzanie transakcjami dokumentacja API wersja 0.1

Prezentacja programu. Parentis Sp. z o.o. Dział Informatyki. Kartoszyno, ul. Przemysłowa 5, Krokowa

System Service Desk zgodny z zaleceniami ITIL

INSTRUKCJA UŻYTKOWNIKA. Wielkopolski system doradztwa. edukacyjno-zawodowego

Instrukcja instalacji Control Expert 3.0

Elektroniczne Dzienniki Urzędowe

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Platforma elektronicznego obiegu dokumentów dla klientów KBA. Copyright by Korycka, Budziak & Audytorzy Sp. z o.o.

THINK PROJECT! USER PORTAL

timetrack Przewodnik Użytkownika timetrack Najważniejsze Funkcje

Instrukcja użytkownika tokena mobilnego (mtokena) systemu KBI

Frogfoot CMS.

Projekt Fstorage. Łukasz Podkalicki Bartosz Kropiewnicki

PRZYJAZNE ZARZĄDZANIE TREŚCIĄ TWOJEGO SERWISU WWW NALEŻYMY DO

E-faktura instrukcja dla kontrahentów TVP S.A.

Zmiana sposobu dostarczania aplikacji wspierających funkcje państwa

DOTACJE NA INNOWACJE

OPIS WYMAGAŃ FUNKCJONALNO-TECHNICZNYCH dla zamówienia: Zaprojektowanie, wykonanie i uruchomienie serwisu do obsługi zgłoszeń dla miasta Torunia

Baza Aktów Własnych. Autor: Piotr Jegorow. ABC PRO Sp. z o.o.

Do użytku z aplikacjami z funkcją skanowania / czytania kodów QR

Program kadrowo płacowy - wersja wielodostępna z bazą danych Oracle SQL Server 10g

Webowy generator wykresów wykorzystujący program gnuplot

Materiał szkoleniowy:

Zasady licencjonowania dostępu (CAL / EC)

Platforma e-learningowa

Specyfikacja funkcjonalna

Analizator wydajności AMD CodeAnalyst

Aplikacja VISO Mobile (Android) Instrukcja instalacji i obsługi

Wydział Informatyki, Elektroniki i Telekomunikacji. Katedra Informatyki

Architektury Usług Internetowych. Laboratorium 2 RESTful Web Services

AUMS Digital. aums.asseco.com

Zmiany funkcjonalne i lista obsłużonych zgłoszeń Comarch DMS

OPROGRAMOWANIE SOFTWARE FM DLA AWIZUJĄCYCH

DOKUMENTACJA TECHNICZNA SMS API MT

Krótka instrukcja instalacji

Panel administracyjny serwera: admin.itl.pl

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego

KARTA KURSU. Administracja serwerami WWW

Leonard G. Lobel Eric D. Boyd. Azure SQL Database Krok po kroku. Microsoft. Przekład: Marek Włodarz. APN Promise, Warszawa 2014

Akademia Klienta CitiDirect. Powiadomienia o Zdarzeniach. Sierpień 2011 Do użytku wewnętrznego posiadacza rachunku

Getin Noble Bank SA wersja 1.0 Infolinia

SUPLEMENT DO DYPLOMU

INSTRUKCJA OBSŁUGI PLATFORMY OLZA DLA PRACODAWCY

Sesje i logowanie. 1. Wprowadzenie

Instrukcja użytkownika tokena mobilnego (mtokena)

Aurea BPM Dokumenty pod kontrolą

Oracle Application Express -

Organizacja pracy w dziekanatach. W poszukiwaniu dobrych praktyk. Szkoła Główna Handlowa w Warszawie, 8 czerwca 2018 r.

Kluczowe zasoby do realizacji e-usługi Warszawa, 16 października Maciej Nikiel

Hikvision ivms

Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015

Podręcznik administratora systemu

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

mcourser platforma edukacyjna z multimedialnymi mlibro Zestaw darmowych aplikacji do zainstalowania

INSTRUKCJA POBIERANIA ZAŚWIADCZEŃ ELEKTRONICZNYCH

CMS, CRM, sklepy internetowe, aplikacje Web

Agencja bardzo interaktywna OFERTA

Agencja interaktywna. InterActive. Strona WWW + system obsługi klientów

MOJA FIRMA PLUS. bankowość elektroniczna dla małych i średnich firm

Sieciowa instalacja Sekafi 3 SQL

Instrukcja. Systemu Obsługi Praktyk -Moduł Student UNIWERSYTET MARII CURIE-SKŁODOWSKIEJ W LUBLINIE

Profesjonalne Zarządzanie Drukiem

INSTRUKCJA OBSŁUGI PLATFORMY OLZA DLA STUDENTA/ABSOLWENTA

simply Team wszystko, czego potrzebujesz do zdalnej pracy z klientem

Dysk 20GB przestrzeni Ajax Ajax 1.0 Baza danych MS SQL 2005 lub 2008 Express Java Java 6 run time Microsoft Silverlight 3.

Praca w sieci z serwerem

Montaż kolektorów słonecznych i pieców na biomasę w Gminie Modliborzyce

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych

POLITYKA PRYWATNOŚCI

Transkrypt:

Cross application notification system Wieloplatformowy system przesyłania i agregacji powiadomień

Część 1 Zakres problemów jakie porusza system

DLACZEGO?! Duża ilość serwisów do których jesteśmy podłączeni lub które chcemy monitorować. Czasem są to serwisy które nie udostępniają aplikacji do przeglądania powiadomień jakie generują (np. logi z własnych aplikacji webowych itp.).!!! Każdy z nich przesyła wiele informacji, które są dla nas istotne lub których nie chcemy przegapić. Dostęp do powiadomień uzyskujemy tylko po zalogowaniu do konkretnych systemów czy odczytów konkretnych logów.!! Informacje dla nas ważne często przeplatają się z tymi które dużego znaczenia dla nas nie mają.!! 3

Cross application notification system umożliwia: Dostęp do twoich wszystkich notyfikacji w jednym miejscu! Brak straty czasu na przełączanie się między serwisami w celu odczytu informacji! Segregację notyfikacji według źródeł! Agregację powiadomień w taki sposób abyś nie stracił żadnych cennych informacji! Wygoda Elastyczność Agregacja 4

Kto może na tym skorzystać: - Specjaliści z branży finansowej Osoby pracujące z Social Media Administratorzy Analitycy Osoby chcące mieć jedno miejsce do podglądu ze swoich serwisów - krótko mówiąc dla osób ceniących swój czas 5

Część 2 Krótkie przedstawienie systemu

System gwarantuje, że powiadomienie zawsze dojdzie do Ciebie! Od nich Do Ciebie 7

Krótka wycieczka po systemie cz. 1 Starannie zaprogramowane mikroserwisy zbierające powiadomienia dbają o to, aby każda notyfikacja została przechwycona i przesłana do kolejki. Mikroserwis łączący kolejkę i bazę danych dokładnie agreguje powiadomienia w taki sposób w jaki zażyczył sobie użytkownik i zapisuje je w bazie danych. 8

Krótka wycieczka po systemie cz. 2 REST Api obsługuje połączenie pomiędzy aplikacjami klienckimi a bazą danych, dbając aby do docelowych użytkowników doszły tylko takie informacje jakich oczekują. Użytkownicy wygodnie i spokojnie mogą przeglądać informacje, którymi na co dzień są zasypywani. 9

Agregacja To użytkownik definiuje jak ma trafić do niego powiadomienie. Nasz system pozwala wybrać użytkownikowi sposób agregacji powiadomień na wiele sposobów: Sposób agregacji: - zliczanie powiadomień - dostarczanie ostatniego powiadomienia - dostarczenie pierwszego powiadomienia Po czym następuje agregacja: - po tytule - po treści - po własno zdefiniowanym fragmencie Agregacja po czasie 10

Część 3 Przedstawienie projektu

Wiele słów, ale jak to wygląda w praktyce? Ale jeśli zdjęcia i prezentacja to za mało.. Sprawdź sam jak to działa! Link do pobrania: https://35.204.202.104/chromeplugin_v1.0.zip 12

Standardy sprawdzania kodu Każdy fragment systemu który wdrażamy musi być na początku sprawdzony pod względem wyszukania błędów oraz zaakceptowany. Wygląda to następująco: a) gdy kod jest pisany przez osobę odpowiedzialną za ściąganie powiadomień z innych serwisów: - sprawdza: osoba odpowiedzialna za kolejkę i jej obsługę - akceptuje: osoba odpowiedzialna za komunikację z bazą danych b) gdy kod jest pisany przez osobę odpowiedzialną za kolejkę i jej obsługę: - sprawdza: osoba odpowiedzialna za komunikację z bazą danych - akceptuje: osoba odpowiedzialna za utrzymanie bazy danych c) gdy kod jest pisany przez osobę odpowiedzialną za komunikację z bazą danych: - sprawdza: osoba odpowiedzialna za utrzymanie bazy danych - akceptuje: osoba odpowiedzialna za aplikację kliencką e) gdy kod jest pisany przez osobę odpowiedzialną za aplikację kliencką: - sprawdza: osoba odpowiedzialna za konteneryzację na serwerze - akceptuje: osoba odpowiedzialna za ściąganie powiadomień f) gdy kod jest pisany przez osobę odpowiedzialną za agregację na serwerze: - sprawdza: osoba odpowiedzialna za ściąganie powiadomień - akceptuje: osoba odpowiedzialna za kolejkę i jej obsługę d) gdy kod jest pisany przez osobę odpowiedzialną za utrzymanie bazy danych: g) gdy kod jest pisany przez parę osób naraz: - sprawdza: osoba odpowiedzialna za aplikację kliencką - sprawdza: osoba oddelegowana przez lidera projektu - akceptuje: osoba odpowiedzialna za konteneryzację na serwerze - akceptuje: lider projektu 13

Rzeczy na które nie starczyło czasu Niestety nie wszystkie zaplanowane rzeczy udało się nam zrealizować na dzień dzisiejszy. Części które chcemy dopracować lub stworzyć do Konferencji Projektów Zespołowych to: Możliwość podłączenia własnego mikro serwisu który generuje powiadomienia. Podłączenie do systemu konta mailowego, które będzie służyło za komunikację z użytkownikami. Odwzorowanie funkcjonalności plugina w aplikacji na Androida. Zaimplementowanie trzeciego wspieranego przez nas źródła powiadomień. Powiadomienia web push. 14

Użyte technologie: 15

Prezentacja systemu 16

Projekt realizowany był przez studentów Politechniki Wrocławskiej, Wydziału Elektroniki, Kierunku Informatyka: Filip Baszak Mateusz Wójcik Arek Sokołowski Z pomocą opiekunów z firmy NOKIA: Dominik Markiewicz Bartosz Gardziejewski Mateusz Sołtysik Adam Maciak 17

Dziękujemy za uwagę Filip Baszak, Mateusz Wójcik, Adam Maciak, Bartosz Gardziejewski, Arkadiusz Sokołowski Wroclaw University of Technology, Department of Electronics, IT Faculty

Czas na pytania 19

Baza danych 20

Baza danych - Widoki View Table Column User Login Subscription Name Subscription Name Notification Topic Notification Message Notification Time Notification Flag User_subscriptions Notification_name 21

Dlaczego ten docker? Do wdrożenia i uruchomienia naszej aplikacji rozproszonej wybraliśmy Dockera. Pozwoli on umieścić nasz program oraz jego zależności w lekkich, przenośnych, wirtualnych kontenerach które można uruchomić na prawie każdym serwerze z systemem Linux. 22

Format notyfikacji w systemie Notification JSON format: { notificationid :, userid :, sourceid :, flag :, topic :, message :, timestamp :, priority : } 23

Struktura systemu External services Downloading notifications Queue Connector between the queue and the database Database Rest API Client application Server Docker container 24

Dlaczego RabbitMQ? 25

Rest API 26