NoteQ
Tło projektu
Klient: QBq (na razie)
Autor: QBq
Technologia:
Architektura: klient-server
Klinet: J2ME CLDC MIDP1.0
Server: Co bądź pewnie na początek będzie Python
Komunikacja: HTTP
Cel
Stworzenie notatnika w w/w technologii który pozwalałby na zapisywanie
dowolnie wielu notatek w dowolnie wielu kategoriach.
Wymagania:
Kategoryzowanie może być jednopoziomowe.
Długość notatek co najmniej 255 znaków.
Każda notatka ma dodatkowo datę utworzenia i ostatniej edycji.
Notatki można wyeksportować na serwer i pobrać z serwera, czyli trzeba też
napisać NoteQ Server :) i opracować NoteQ Exchenge Protocol.
Harmonogram
1 maja 2003 - mam nadzieję, że do tego czasu będzie tu dostępna pierwsza wersja
Cóż niestety ten termin okazał się nierealizowalny. Brak czasu. Mam nadzieję,
że nie zawiodło się Was zbyt wiele...
Mam nadzieje, że program ujży światło dzienne przed lipcem.. (pchnie
Microsoftem ;))
Wersje rozwojowe
Co byłoby fajnie dodać w jakichś nowych wersjach...
Kategoryzowanie na wielu poziomach.
Przypominacz - dodatkowa data, o której NoteQ mógłby przypominać
Rozproszony przypominacz - nadanie NoteQ Serverowi funkcji aktywnej - po
wysłaniu notatki, która miałaby powodować alarm, mógłby wysłać maila,
sms'a, powiadomić pogotowie, zawołać straż pożarną, policję, służby celne
i graniczne, wezwać taksówkę, zadzwonić do żony i wytłumaczyć, że
spotkanie z kolegami się przeciągnęło, wysłać kwiatki, itd. itp. - mógłby
w końcu coś zrobić, a nie tylko pozwalać na wrzucanie i wyciąganie
tekstowych notatek.
NoteQ Exchange Protocol
Ma pozwalać na archiwizacje notatek (na przykład przy upgradzie do kolejnej
wersji) i pobranie ich z serwera. Użytkownik (właściciel notatek) jest
identyfikowany przez nazwę. Aplikacja kliencka może sobie taką nazwę zapisać
i nie pytać użytkownika za każdym razem. Rozpoznawanie użytkownika nie
uwzględnia różnic wynikających z wielkości liter. Dozwolone znaki to znaki
o kodach ascii pomiędzy 33, a 127
Wymagania:
- minimalny narzut
- możliwość przesyłania metainformacji o notatce
- zachowywanie kategorii
- over http
Dwa polecenia:
- GET
Parametry:
- maxlength - jak długie wiadomości może obsługiwać aplikacja - może się
przydać, przy przenoszeniu notatek pomiędzy różnymi wersjami (np. po
zmianie telefonu). Domyślna wartość: 255
Odpowiedź: 200 OK lub 401 Unauthorized, inne - patrz rfc2612.
Treść: patrz post.
- POST
Przekazywany serwerowi dokument XML wiadomościami.
DTD
Polecenia HTTP mogą wymagać autoryzacji. Aczkolwiek zostawiam to w gestii
konfiguracji klienta i serwera HTTP. Każdy klient noteq powinien dla
przyzwoitości potrafić wciągnąć plik z notatkami ze statycznego urla nie
wymagającego autoryzacji (ukłon w stronę ludzi, którzy nie mają serwerów,
a chcieliby korzystając z darmowego konta mieć możliwość edycji notatek w
jakimś normalnym środowisku.