diff options
author | 2019-12-09 02:25:25 +0100 | |
---|---|---|
committer | 2019-12-20 17:51:21 +0000 | |
commit | 9a4ec5a5793ce904333f6087cf31d7819206c101 (patch) | |
tree | 1aeb4d13352ff0f4b31a9f46fa5ab0fc761e1a69 /src/plugins/core/VRRequestProcessorImpl.cpp | |
parent | 01c999956ea5fba52c4eaf35998c023047587171 (diff) |
Add CBL processing
CBL: Code Based Linking in the case of Alexa voice
agent, or more generally Code Based Logging.
It provides a url and code which allows the user to
complete the authorization process and start using
the authorized voice services.
- add subscribeToLoginEvents verb
- add cbl events handling
- include new verb in vshl-core-api.json
Bug-AGL: SPEC-2981
Signed-off-by: Raquel Medina <raquel.medina@konsulko.com>
Change-Id: If342d45638125682621cba707eac1d4ff5ad244c
(cherry picked from commit ed834a643e3843c0f805ea33363c9f2889d2bab3)
Diffstat (limited to 'src/plugins/core/VRRequestProcessorImpl.cpp')
-rw-r--r-- | src/plugins/core/VRRequestProcessorImpl.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/plugins/core/VRRequestProcessorImpl.cpp b/src/plugins/core/VRRequestProcessorImpl.cpp index c07f745..d9fa846 100644 --- a/src/plugins/core/VRRequestProcessorImpl.cpp +++ b/src/plugins/core/VRRequestProcessorImpl.cpp @@ -57,6 +57,20 @@ string VRRequestProcessor::startListening() { return mDelegate->startRequestForVoiceAgent(defaultVA); } +string VRRequestProcessor::subscribeToLoginEvents(std::string va_id, std::list<std::string> *args) { + // Currently simply send the request to the default voice agent, ignoring va_id + shared_ptr<vshlcore::common::interfaces::IVoiceAgent> defaultVA = mDelegate->getDefaultVoiceAgent(); + if (!defaultVA) { + mLogger->log(Level::ERROR, TAG, "Failed to subscribeToLoginEvents. No default voiceagent found."); + return ""; + } + + // If the requests container is not empty, then clear the + // existing requests in flight and create a new request. + mDelegate->cancelAllRequests(); + return mDelegate->loginEventsRequestForVoiceAgent(defaultVA, args); +} + void VRRequestProcessor::cancel() { // Cancel all pending requests mDelegate->cancelAllRequests(); |