WOSH (Wide Open Smart Home) jest open source i wieloplatformowy framework (komunikat Oriented Middleware) napisany w ANSI C ++, zaprojektowany, aby umożliwić (Smart) automatyki domowej.
WOSH jest Ramowa zorientowana na usługi (SOA) zapewnienie (Network) OS niezależną infrastrukturę dla rozwoju oprogramowania w oparciu komponentów (usługi, aka zestawy), ale jest dostarczany z wielu realizowanych usług oraz niektórych aplikacji dla użytkowników końcowych (jak woshsrv, warsztat).
WOSH, a niektóre elementy są (częściowo) w oparciu o QT4.
Ten projekt jest rzeczywiście dopuszczone do deweloperów, obecna faza nie jest jeszcze gotowy do użytkowników końcowych.
Niektóre powodów do korzystania i przyłączyć się do projektu WOSH są:
* Jest to darmowy, open source, żyje!
* Jest to modułowy i rośnie
* Łatwo na podłączenie nowych funkcji (C ++ wymagane)
* To był jednak być efektywne i intuicyjne
* Zawiera state-of-the-art biblioteki (QT4, gloox, festiwal, gstreamer010, ..)
* To jest wyposażony w wiele wbudowanych usług (tworzenie sieci, komunikacji, rozrywki, Pilot, ..)
Opis :
- wbudowanej aplikacji użytkownika końcowego: konsola i graficzne zarówno
- rozproszone, "Konfiguracja zerowej" sieci
- dla wielu użytkowników, dostęp oparty rola
- Pilot zdalnego sterowania za pomocą wiadomości błyskawicznych (używając libgloox; kompatybilny z GTalk), SMS (wysyłanie / odbieranie) i zadzwonić monitorowanie (Windows-Mobile, inteligentny telefon podłączony RNDIS)
- urządzenia i czujniki (urządzenia X10) monitorowania / kontroli (na POSIX, na podstawie Heyu)
- rozrywka, odtwarzanie multimediów wielostrefowy (za pomocą GStreamer na POSIX lub QT Phononowi na Windows, VLC). Media-Dyrektor zapewnia wysoką warstwę abstrakcji, status odzysku / domysłu multimedialny, skrótów sprzętu / oprogramowania i więcej
- scentralizowany system komunikacji (wybierając najlepszy kanał komunikacji), wykorzystując również tłumaczenie ustne (takich jak Festiwalu Text2Speech)
- Budynek abstrakcyjna reprezentacja domu i jego urządzenia (pokoje, światła, dźwięku-box, ..)
- Cron i automatyzacji usług, zapewnienie wsparcia dla podstawowych zadań codziennych,
- wiele nie wymienione i bardziej przyjść ..
Co nowego w tym wydaniu:
- budowy i testowane na Debian sqeeze
- dodana klasa String, funkcje wielu Utitilites zostały przepisane i przeniósł się tam,
- znaczna poprawa wydajności
- Poprawiono kilka wycieków pamięci
- wiele definiuje obecnie uznany jako stałe C ++
- robi kilka testów profilowania / wydajność (Windows / VS2010)
- Kontenery przepisane i zajęcia zostały przeniesione
- dodany src / common.spec.pri (zawiera wspólne rzeczy ze starego common.pri)
- określa ciąg teraz zadeklarował / zdefiniowany jako (wpisane) const char []
- usunięte (Meyer) pojedyncza ObjectFactory, teraz może być używany dopiero po alokacji WoshKernel
- usunięte (Meyer) pojedyncza ThreadManager, teraz może być używany dopiero po alokacji WoshKernel
- usunięte ramy plugin (zintegrowany w rdzeniu, patrz ObjectLibrary)
- Rdzeń:
- Ustawienia przemianowana WoshSettings, obsługuje również - =, | = operatory
- dodany zmodyfikowanego znacznika czasu do Właściwości
- inicjalizatory "Fixing konstruktorów
- ISerializable jest teraz rozciągające nowe interfejsy IStringifiable, IHashable
- dodany opis, ostatniej modyfikacji pola do własności,
- dodany Stream klasy (etap beta)
- Bufor dodaje klasy (etap beta)
- stałe poważny błąd w puli wątków :: setWorkersCount
- przepisany Kontenery, usunięte DataAdapter
- multi-hop dodaje dynamiczny routing (NetworkManagera)
- Rejestracja wsparcie zdalnych hostach multi-hop (NetworkManager)
- naprawiono błąd w wosh :: getEnumSetAsString () (makro _ENUMSET_TOSTRING)
- dodany procedury związane z CLI dla win32 i POSIX,
- stałe deserializacji Variant [DATETIME]
- URICollector nie jest dostępny jako meyer Singleton już, teraz mowa w WoshKernel (:: globalURIs)
- MethodCollector nie jest dostępny jako meyer Singleton już, teraz mowa w WoshKernel (:: globalMethods)
- usunięte (Meyer) pojedyncza systemu plików :: getTemporaryFiles (teraz jest var członkiem)
- dodany ObjectLibrary, ObjectLibraryLoader (zarządzanie biblioteki współdzielone)
- NetworkUtilities dodał (przeniesiony ** od wosh :: sieci :: NetworkUtilities)
- wdrożone pewne operatorów (+, -, *, /, ..) klasy Variant
- dodany BundleGenericWorker.cpp
- przemianowany LogHandlerStdOut do LogHandlerStdC
- przepisany klasy Temat
- naprawiono błąd w puli wątków (używany przez BusMT)
- automatyzacje:
- usunięte wymagane odniesienie do Xtended :: WeatherInfo, teraz za pomocą różnych interfejsów :: :: WeatherInfo
- Komunikacja:
- usunięte SessionProtocol, teraz za pomocą SessionEncoder i SessionInterpreter
- dodaje domyślne implementacje SessionEncoder i SessionInterpreter
- Poprawiono kilka błędów w sesji, SessionShell
- * SessionShell jest teraz ukrywa hasła podczas logowania
- naprawiono błąd w kolejce commadn parsowania (ShellCommand)
- Sieci:
- dodany realizacji NetworkingUtilities dla QT, Winsock2
- Sieć Winsock2 dodaje Biblioteka (rzeczy przeniósł się z csocket)
- stałe opóźnienie podczas rozwiązywania nazwy hosta (połączenie protokół TCP)
- SocketUdp klasy nie jest interfejs
- na stałe wyjście debugowania błędu deserializacjia
- Pakiety:
- zaktualizowane PlayerMPD, obecnie: bada wyjść zmian, wycieki pamięci stałej
- stałe Heyu, teraz przy użyciu niestandardowych popen i wyjść z wdziękiem (nie ma potrzeby CTRL-C, jak wcześniej)
- Gui:
- stałe dealokacji z SessionGui
- zderzak z BusRingQt
- naprawiono błąd w DialogLogin (gdy już zalogowany robi SU)
- stałe PropertiesMapper i niektóre sygnały od wersji GUI
- drobne poprawki do GUI
- Xtended:
- WeatherInfo dziedziczenie z różnych interfejsów :: :: klasy WeatherInfo
Klasa
usunięte aktualizowane NetworkingUtilities (obecnie odnoszą się do klasy podstawowej lub NetworkManager :: utlities ())
Co nowego w wersji 0.8.462:
- mniejszych i większych błędów zostały ustalone zarówno w rdzeniu i pakiety.
- Pogoda i Ogrodnik wiązki są wprowadzane.
Co nowego w wersji 0.8.161:
- Rdzeń:
- krytyczna poprawka na NEW_List deserializacji
- drobne poprawki do pojemników (nazewnictwa)
- naprawiono błąd zgody method_list (nie dopuszczać do listy metody)
- Wspólna Metoda props_get MPC obsługuje teraz wildchar
- ThreadManager wydany jako 0.8.499 (wersja ostateczna)
- BusManager wydany jako 0.8.499 (wersja ostateczna)
- Monitor systemu wydany jako 0.8.161
- DeviceManager: metody statyczne usunięte
- DeviceManager wydany jako 0.8.499 (wersja ostateczna)
- ObjectFactory wydany jako 0.8.499 (wersja ostateczna)
- wprowadzenie SharedMemory (wciąż w fazie rozwoju)
- wosh-core poprawki pamięci niskiego poziomu (memcheck) [o 200KB zaginęły]
- URI drzewa de alokacja stałe, URICollector teraz jest pojedyncza (a nie samo drzewo)
- SystemProfiler de alokacja stałe (brakuje free () właściwości i złączy)
- Dokumentacja:
- wersja globalna została uruchomiona
- niektóre doc-strony zostały przeniesione w pobliżu wdrożenie
- dodany plik mapy drogowej
- Gui:
- przepisany FormScreenShoter, do wykorzystania w nowej dokumentacji
- przepisany FormBusMonitor, być dockable, konfigurowalny
- FormThreadManager wydany jako 0.8.499 (wersja ostateczna)
- FormBusManager wydany jako 0.8.499 (wersja ostateczna)
- FormSystemMonitor wydany jako 0.8.161
- FormDeviceManager wydany jako 0.8.499 (wersja ostateczna)
- FormObjectFactory wydany jako 0.8.499 (wersja ostateczna)
- dodany GuiMapping okno (w menu Narzędzia)
Co nowego w wersji 0.8.151:
- Rdzeń:
- drobne poprawki
- BundleManager zaktualizowane, teraz za pomocą BundleAction (s)
- Poprawiono błąd formatowania odpowiedzi (cos z poprzedniego formatu)
- Aktualizacja MessageProcessingCommon, wspieranie kontenerów
- Sieci:
- stałe wbudowane problemy i wyrównane (lisockets :: TCP wciąż opóźniona)
- drobne aktualizacje, NetworkProtocol gospodarze metody
- Gui: (wciąż w fazie rozwoju)
- teraz za pomocą ObjectFactory, ObjectAllocator
- Przeglądarka dziennika przy użyciu stałej obsługi na zamówienie
- wiele poprawek do pracy z rdzenia / komponentów aktualizowane
Co nowego w wersji 0.8.101:
- Rdzeń:
- drobne poprawki
- BundleManager zaktualizowane, teraz za pomocą BundleAction (s)
- Poprawiono błąd formatowania odpowiedzi (cos z poprzedniego formatu)
- Aktualizacja MessageProcessingCommon, wspieranie kontenerów
- Sieci:
- stałe wbudowane problemy i wyrównane (lisockets: TCP wciąż opóźniona)
- drobne aktualizacje, NetworkProtocol gospodarze metody
- Gui: (wciąż w fazie rozwoju)
- teraz za pomocą ObjectFactory, ObjectAllocator
- Przeglądarka dziennika przy użyciu stałej obsługi na zamówienie
- wiele poprawek do pracy z rdzenia / komponentów aktualizowane
Co nowego w wersji 0.8.013:
- Rdzeń:
- Kontenery całkowicie przepisany
- Dane przepisany jako klasy Variant (przy użyciu unii)
- Obiekt przeglądowi niektóre pozyskiwaniu / ustawiaczy (usunięcie "pochłaniacze" const)
- Licencja: dodana maska nadpisywania i kilka pomocnicy
- interfejsy: całkowicie przekształcona
- Pakiety: samoistnie powrócił
- BundleRequirements: dodaje klasy, a nie weszły jeszcze w życie,
- PropertiesProvider: przepisany, ale podobny interfejs
- MethodProvider: przepisany, standardowe rozmowy zmienił
- działania: wprowadzenie opartego STL funkcjonalne
- dodany strukturę drzewa (lame btw)
- Odbicie: indrocuding naiwny wsparcie refleksji
- Logowanie: przepisany być szybki, teraz za pomocą dynamicznych teleskopowe, czasu wykonywania opcji, barwiony na stdout win / linux
- dodany woshMacros.h
- applyed DRY paradygmat:)
- WoshKernel: state-maszyna i (moduł) Uruchamianie przeglądowi
- SystemProfiler: wprowadzenie wbudowanego narzędzia do profilowania metod, właściwości i BUS-złącza
- Shell Protokół: zaktualizowane analizowania wiersza polecenia, rozważa obecnie notowane argumenty i opcje w stylu GNU (-)
- Naprawiono błąd w inicjalizacji gwintu (gdy nie udało), czas oczekiwania zoptymalizowany
- wewnętrznie wzrosła wydajność !! (Prawdopodobnie 100x)
- Moduły:
- ObjectFactory (dodane): podział komponentów został przepisany (centralne),
- SystemLogger (zastępuje LogCore): Rejestrator jest teraz moduł, nawet jeśli mogą pracować autonomiczny
- PersistenceManager (zastępuje DataBaseManager)
- Trwałość:
- IReflection: Dodane, zapewnia getClassName (), wspólne makra
- Serializable: usunięte, przemianowane na ISerializable
- ISerializable: RTTI / nie, wspólne makra, I / O za pomocą serializers (IEncoder)
- IEncoderReader: interfejs dla de-serializacji [pop (TYP)]
- IEncoderWriter: interfejs dla serializacji [Push (TYP)]
- enkodery są ładowane przy użyciu ObjectFactory
- Sieci:
- poprawiono kilka błędów wysypać w NetworkManager
- Ramy / sieci: Tree / źródło zmienione pliki projektu
- wspieranie wielu bibliotek newtorking w czasie wykonywania, gniazdo nowej alokacji komponentów stylu (ObjectFactory)
- libSockets: wprowadzenie alternatywnego / jednoczesne wsparcie dla biblioteki Sockets
- SocketUdp: teraz w pełni obsługiwane i kompatybilny z: {Qt (stary), libSocket} (TCP, HTTP, SSL przyjdzie dalej)
- protokoły sieciowe są ładowane przy użyciu ObjectFactory
- dodany limity czasu dla wszystkich (nie) bind / (dis) podłączyć
- Pakiety:
- Wszystkie pakiety zostały zaktualizowane do nowych specyfikacji. złamane kompatybilność
- Wbudowany w zupełnie zmienionej rejestracji! teraz za pomocą wbudowanych makr, tylko to źródło w budowie
- pakiety są ładowane przy użyciu ObjectFactory
Co nowego w wersji 0.6.320 Zbuduj 2010-02-21:
- sieciowe: wiele klas została zmieniona na: NetworkChannel-UDP, TCP (i jego serwer)
- Discovery (udp) przemianowana DiscoveryUdp
- DiscoveryUdp zwolnione. (Kod revisioned, dokumentacja, człowiek)
- Temat: initializingThread teraz zwraca BOOL (i jest analizowany)
- Człowiek: podstawowe wdrożenie
- SystemError: teraz zaakceptować CONST źródło
- SocketUdp: drobne przegląd i aktualizacja dokumentacji
- gui: dodano interfejs DiscoveryUdp, dodano kilka ikon
- gatalkbot: usunięte (przemianowana JabberGloox)
- JabberGloox: recenzje, obsługuje glooox 0,9, 1,0 [win32, unix]
Wymagania :
- Qt
Komentarze nie znaleziono