summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
AgeCommit message (Collapse)AuthorFilesLines
2022-09-10Add applaunchd gRPC API wrapperScott Murray1-49/+0
Changes: - Add applaunchd gRPC API wrapper in applauncher directory, clients can include AppLauncherClient.h to use it. - To facilitate generating protobuf and gRPC code with protoc, switch from CMake to meson for building. While the code generation can be done in CMake, it is a lot more straightforward with meson, and if use of this library continues meson will be easier to maintain. Known issues: - The behavior of the client implementation here with respect to the server side (i.e. applaunchd) going away is currently robust, but could stand improvement with some further investigation. As the code stands, starting applications works when applaunchd becomes available again, but the streaming status RPC that is tied to window activation in the homescreen does not reconnect, and there seem to be some things that need to be resolved with respect to Qt object connection expiry to do so. If the Qt demos continue to be used in a significant fashion, this may be worth picking up. Bug-AGL: SPEC-4559 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I5cb480d4ce4d1cb944ebfd4114fb305f09f28ea3
2022-07-04Add VIS vehicle signal supportScott Murray1-0/+3
Add vehicle-signals library that exposes configuration and interface objects to use Vehicle Information Service (VIS) signals from a VIS server such as KUKSA.val. In this initial version Qt signals to expose some of the low level VIS errors to clients have not been implemented, as it is not immediately obvious how they could be leveraged in the AGL demo usecases. If the Qt demos continue to be used for past the Needlefish release this may warrant revisiting. Bug-AGL: SPEC-4408 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I05d2bfdd09d090e3ed13ba4e4c2d1d205357d6e4 (cherry picked from commit b34fae267102d374bcc9ab7a6ff6a259515bb6bf)
2022-02-15Re-enable telephony and radio stub librariesScott Murray1-0/+8
Add the radio, telephony, pbap, and map libraries back to the build by stubbing out their implementations for now. This should enable getting the related apps building without the application framework and hopefully simplify further rework of the backend functionality here with respect to AGL CI. Bug-AGL: SPEC-4182 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I9c7cae9f34a9fd332a11914bcb6ee123b840d5a1
2022-02-15Rework mediaplayer support to use mpdScott Murray1-0/+3
Rework the mediaplayer support to replace the stubbed out app framework agl-service-mediaplayer binding use with driving mpd (Media Player Daemon) via the libmpdclient library. Local file playback behavior should be equivalent to before in an image with mpd present and suitably configured. Bluetooth AVRCP support is still stubbed out, and will be re-implemented with followup changes. Bug-AGL: SPEC-4182 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ifdf092b472c271460d0f5e9a8c7d2353904411b2
2022-01-28Re-enable network supportmarlin_12.92.0marlin/12.92.012.92.0Scott Murray1-1/+1
Rework network support code to use new connman-glib library instead of the previously disabled agl-service-network API. The only user visible change is that a few extra previously exported header files have been pruned from installation to avoid exposing GLib usage and potentially requiring users needing to build against it. Bug-AGL: SPEC-4182 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Iab8f3c9d04ee603e06b80dfd92ac03d9d52af477
2021-12-20Comment out connman-glib dependency for nowmarlin_12.91.0marlin/12.91.012.91.0Scott Murray1-1/+1
The code changes to use the new connman-glib library are not yet integrated, comment out the accidentally included dependency for now to avoid build issues. Bug-AGL: SPEC-4182 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I65446e3ff8ec6919cae146aac013a724ad58b093
2021-12-16Initial rework to replace app framework usageScott Murray1-21/+6
Changes: - Remove "core" code related to WebSocket messaging for the app framework. - Stub out hvac, navigation, network, and weather interfaces. This allows building several of the demo applications without modification for now. The network interface will definitely be reused to plumb in a new connman-glib library derived from the previous network binding. The others may potentially be reused to plumb in other new backend implementations. - Update the Network interface object constructor arguments to add a agent registration flag. This prepares for the connman-glib switch and means users will not need to be updated twice. - Update the Bluetooth interface to use a new bluez-glib library that is derived from the previous Bluetooth binding. This has been successfully tested with a the Settings application. - Remove signal-composer and voice API interface code as there are no direct replacements planned. The signal-composer interface was effectively exposing the binding events, so has little reuse potential with a new backend. For the voice interface, if some form of Alexa support becomes desirable, it can potentially be brought back for adaptation if required. - Disable compilation of the remaining interfaces for now. Some like map, pbap, and mediaplayer are very likely to be used as the basis for updating their associated applications, so keeping the code for the planned iterative development seems easier. - Updated copyright lines in all touched files. Bug-AGL: SPEC-4182 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ib717ac8ac68ec457eaee74755dcf9d4f36b79d12
2020-06-09split qtappfw in independent qtappfw-* modulesRaquel Medina1-50/+17
Bug-AGL: SPEC-3390 Signed-off-by: Raquel Medina <raquel.medina@konsulko.com> Change-Id: Ib8096c8dd2d59d3728e824ae13ba401da0971dc4
2020-05-05fix compilation for new Qt version 5.14.1Raquel Medina1-1/+1
std::hash specializations for some Qt types are in Qt 5.14, so we dont need the custom specialization for QString in utils.h. Note that if this code was to be merged to previous agl versions with pre 5.14 Qt version, the custom specialization for std::hash<QString> would be needed. Bug-AGL: SPEC-3112 Signed-off-by: Raquel Medina <raquel.medina@konsulko.com> Change-Id: I81240f4e804ff6c1046a50c486f39eec74edc057
2020-05-04share MessageEngine instanceRaquel Medina1-2/+2
Share MessageEngine instance among clients in the same process using a common socket (same url). - add MessageEngineFactory class; - extend std::unordered_map<> to use QString as key; - use std::shared_ptr<MessageEngine> to share ownership among MessageEngineFactory and the engine clients; - force MessagEngine parent object null to avoid life cycle dependency on a parent; - protect insertions & deletions in m_calls map; Also, not directly related but as part of testing these changes: cleanup on voice to remove superflous model sorting (there's just one voice model for alexa voice agent). Bug-AGL: SPEC-3112 Signed-off-by: Raquel Medina <raquel.medina@konsulko.com> Change-Id: Ie2304453dc37723dac13d256286eeb85f84ca2ab
2020-03-23rework message hierarchyRaquel Medina1-2/+2
Rework message hierarchy with the final objective of splitting libqtappfw into several libraries. This commit carries the following changes: - Simplify message hierarchy, keeping abstract Message class, adding specialization for call and event messages, keeping ResponseMessage, and removing all module specific specializations. - Add MessageFactory class to create message objects. - Change messages life cycle: using smart pointers and removing QObject from message hierarchy (a Message is not a QObject anymore and thus 'deleteLater()' is not available). - Adapt all modules to use new message hierarchy. - Keep ResponseMessage original constructor to avoid breaking TaskManager. - Message constructors have been kept public, but will go private on a follow-up patch (once TaskManager class has been modified to use new MessageFactory). Bug-AGL: SPEC-3112 Signed-off-by: Raquel Medina <raquel.medina@konsulko.com> Change-Id: I3a7a6325209ddeca2293f1ac745371861a947bfb
2020-01-17libqtappfw: add initial HVAC supporticefish_8.99.5icefish/8.99.58.99.5Matt Ranostay1-0/+1
To remove QML handling of websockets this patchset is required to move it to libqtappfw access. Bug-AGL: SPEC-2984 Change-Id: Ieef6174d2ae7adec2fcaadf44fcb22cf86c7138d Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2020-01-16Add initial voice-capabilities binding supportScott Murray1-0/+1
Add support for subscribing to and using the guimetadata events from the vshl-capabilities binding. A GuiMetadata class is used to wrap things as it is likely that users of the other voice capabilities would not overlap if e.g. navigation event support is later added. At the moment, only the BodyTemplate1, BodyTemplate2, and WeatherTemplate guimetadata types are handled, and there is room for significant improvement in the Qt model exposed, which is somewhat crude with respect to image URL handling. As well, the weather template handling does not expose the full forecast, a full implementation of that would require adding an actual model that maps to a list view rather than a simple QObject. Bug-AGL: SPEC-3110 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I33fc2440ebdc2a4a2de79ff0a49acbc422c47da2
2019-12-05Add initial signal-composer supporticefish_8.99.2icefish/8.99.28.99.2Matt Ranostay1-0/+1
Add support for new abstract event.vehicle.speed and event.engine.speed events from the signal-composer binding. This should help avoid code duplication in the Qt apps needing events from signal-composer. Bug-AGL: SPEC-3023 Change-Id: I877f8c1cc057d0d491318ef5ad6a943119ffc8b8 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com> Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2019-11-29voice: add initial support for voice agents configurationRaquel Medina1-0/+1
Bug-AGL: SPEC-2981 Signed-off-by: Raquel Medina <raquel.medina@konsulko.com> Change-Id: I0195d914dc10f4fcdea1cb6df0e6a5859ad8269d
2019-10-31libqtappfw: add initial navigation supportMatt Ranostay1-0/+1
Add initial navigation service support in qtappfw for new agl-service-navigation rewrite. Bug-AGL: SPEC-2880 Change-Id: I276de006af3c1e19e669ae3b9d05c92360893467 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2019-08-15docs: add docs target for generating doxygen outputMatt Ranostay1-0/+1
Bug-AGL: SPEC-2737 Change-Id: I96d1f68aab63b29889d44b72dc45596ff104a96a Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2019-06-28libqtappfw: bluetooth-map: add initial map supporthalibut_7.99.3halibut/7.99.37.99.3Matt Ranostay1-0/+1
Add bluetooth-map service support for notifications and message composition. Bug-AGL: SPEC-2561 Change-Id: I956150b9db05334eb02640657c1fc7e03258ab41 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2019-06-24libqtappfw: fix compile issue with SDKhalibut_7.99.2halibut/7.99.27.99.2Matt Ranostay1-0/+2
To avoid "SkippingbecauseOE_QMAKE_PATH_EXTERNAL_HOST_BINSisnotdefined" error messages when building with the SDK add the respective path to CMakeLists.txt Bug-AGL: SPEC-2535 Change-Id: I76a3204ebb26f7c30535299d8f8582320315c5f0 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2019-05-16libqtappfw: pbap: switch to vcard processing done in bindingMatt Ranostay1-1/+1
agl-service-bluetooth-pbap now outputs JSON data of processed vCard information, and now libvcard is no longer needed. Bug-AGL: SPEC-2392 Change-Id: Ice1ec6e1a22687f4839fd3e8a286d279d8a4f586 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2019-01-03libqtappfw: Add radio binding supportScott Murray1-0/+1
Add initial support for the radio binding. At the moment, everything required for the current demo radio application is in place. Further development will be required to fill in support for changing bands and the stereo mode. Change-Id: I1b1866856ce8388b34624c14c692102c344a7a62 Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit 8053629c99f157e716a4560ef8d1e194d569d960)
2018-07-30Remove useless QtDeclarative cmake packageMatt Porter1-1/+1
Qt5Declarative has been deprecated by Qt5Qml, so use the Qt5Qml cmake package. Bug-AGL: SPEC-1541 Change-Id: I293dc4a7e8713e982feb01fb49afe6c2cb31e8a1 Signed-off-by: Matt Porter <mporter@konsulko.com>
2018-07-25network: add wifinetworkmodelMatt Porter1-0/+1
Add WifiNetworkModel which exposes a QAbstractListModel of WiFi networks to QML. Bug-AGL: SPEC-1541 Change-Id: I1f4d41f1d1ceaa9b06a4b3df8b0b1cf41ea97ed2 Signed-off-by: Matt Porter <mporter@konsulko.com>
2018-07-25add responsemessage.h to headersMatt Porter1-1/+1
Add responsemessage.h to the list of headers. This fixes the bug where it is not installed to the SDK. Bug-AGL: SPEC-1615 Change-Id: I77bf1bf3577166153573986cd379a1054553435e Signed-off-by: Matt Porter <mporter@konsulko.com>
2018-07-10add base network module supportflounder_5.99.2flounder/5.99.25.99.2Matt Porter1-0/+1
Add support for new network binding messages. This is a prerequisite for the new network services list model. Bug-AGL: SPEC-1541 Change-Id: I204914b991016145958114b1e0e914eaf5b599fa Signed-off-by: Matt Porter <mporter@konsulko.com>
2018-06-25Reorg binding-specific modules into subdirectoriesMatt Porter1-9/+48
Move binding-specific code into per-binding subdirectories. This separates the core message engine code and simplifies adding new binding-specific modules. Bug-AGL: SPEC-1525 Change-Id: I8fc545e3af375e2ed9e79a41363b7ade97e9b20a Signed-off-by: Matt Porter <mporter@konsulko.com>
2018-06-22pbap: add contacts support and recent call modelMatt Porter1-1/+1
Add support for parsing contacts and recent call data from the PBAP-provided vCards using libvcard. Expose a recent call list model and interfaces to refresh the data. Bug-AGL: SPEC-1436 Change-Id: Ia4a02443e22e4a27dc974ef414b765667b26ff83 Signed-off-by: Matt Porter <mporter@konsulko.com>
2018-06-14Add core Bluetooth PBAP supportMatt Porter1-1/+2
Adds minimal Bluetooth PBAP message and models. Implements search invokable to support phone number to name lookup of incoming and originated calls. Bug-AGL: SPEC-1438 Change-Id: Ic5a68d933b5d6b4f4da3e4c8c5c5a0f59a93f34c Signed-off-by: Matt Porter <mporter@konsulko.com>
2018-05-13message: add response message supportMatt Ranostay1-1/+2
Add support for callid sequencing, and request data being included with the response message. Bug-AGL: SPEC-1404 Change-Id: I259ae3da68e55de17eafe9db534258db5fbc3ef8 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2018-04-19libqtappfw: bluetooth: add initial agl-service-bluetooth supportMatt Ranostay1-1/+2
Add initial support for libqtappfw of the agl-service-bluetooth binding to allow removal of QML logic from the Settings application Bug-AGL: SPEC-1385 Change-Id: Iea909af113590667d619afcf09c50523c1c34035 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2018-04-06libqtappfw: mediaplayer: initial agl-service-mediaplayer binding supportMatt Ranostay1-2/+5
Add initial support interface between agl-service-mediaplayer and libqtappfw Bug-AGL: SPEC-1375 Change-Id: I740d8cddfd73198b7a3246cb46c941da9f3175d1 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2018-02-09Add weather binding supportMatt Ranostay1-2/+2
Allow subscription of weather data for libqtappfw consumers Bug-AGL: SPEC-1273 Change-Id: If794481e09084f9632387c64882861faefe4f62c Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2017-11-09Add base AGL libqtappfw and Telephony supporteel_4.99.3eel/4.99.34.99.3Matt Porter1-0/+26
Implements several QtObject subclasses that wrap functionality provided by the AGL Application Framework. * Message provides facilities to create new AppFW requests and parse AppFw replies/events from a JSON buffer. * MessageEngine provides a websocket message processing client that can send or receive Messages on a given websocket address. * TelephonyMessage subclasses Message to provide accessors and methods specific to the AGL Telephony API. * Telephony provides a complete set of Qt properties/signals/methods that expose the AGL Telephony functionality to Qt/QML applications. An application normally instantiates only this class and has no need to handle low-level AppFW messages. Bug-AGL: SPEC-1064 Change-Id: I2e41fb866bb4f867c81ccaf9bf33d627893879c8 Signed-off-by: Matt Porter <mporter@konsulko.com>