From e75225423836240de0024badee93bddca24d4f0c Mon Sep 17 00:00:00 2001 From: Adam Dobrowolski Date: Mon, 9 May 2022 11:56:26 +0200 Subject: [PATCH] [MOS-460] Call starting - no audio beep when calling Fixed --- module-services/service-cellular/call/CallMachine.hpp | 6 +++--- .../service-cellular/call/tests/test-CallMachine.cpp | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/module-services/service-cellular/call/CallMachine.hpp b/module-services/service-cellular/call/CallMachine.hpp index 92de99c6bdbc426b60e843711cc4cf5e6dbc248a..7fb4338ed5f8bfe8b88f663005cefe2129a9255c 100644 --- a/module-services/service-cellular/call/CallMachine.hpp +++ b/module-services/service-cellular/call/CallMachine.hpp @@ -185,6 +185,7 @@ namespace call call.record.phoneNumber = start.number; call.record.date = std::time(nullptr); + di.audio->routingStart(); di.db->startCall(call.record); di.gui->notifyCallStarted(call.record.phoneNumber, call.record.type); di.sentinel->HoldMinimumFrequency(bsp::CpuFrequencyMHz::Level_6); @@ -195,7 +196,6 @@ namespace call { void operator()(Dependencies &di, CallData &call) { - di.audio->routingStart(); di.timer->start(); } } constexpr HandleStartedCall; @@ -289,8 +289,8 @@ namespace call // outgoing call: Pure is Ringing (called from: handleCellularRingingMessage) "Idle"_s + boost::sml::event / HandleStartCall = "Starting"_s, - "Starting"_s + boost::sml::event / HandleEndCall = "Ongoing"_s, - "Starting"_s + boost::sml::event / HandleEndCall = "Ongoing"_s, + "Starting"_s + boost::sml::event / HandleEndCall = "Idle"_s, + "Starting"_s + boost::sml::event / HandleEndCall = "Idle"_s, "Starting"_s + boost::sml::event / HandleStartedCall = "Ongoing"_s, "Ringing"_s + boost::sml::event / HandleAnswerCall = "Ongoing"_s, diff --git a/module-services/service-cellular/call/tests/test-CallMachine.cpp b/module-services/service-cellular/call/tests/test-CallMachine.cpp index a98484ffb139b692b0211dc62761ed88552edabc..aa0a0225f5f3eeb1a324bf526b9420521642e06a 100644 --- a/module-services/service-cellular/call/tests/test-CallMachine.cpp +++ b/module-services/service-cellular/call/tests/test-CallMachine.cpp @@ -357,6 +357,7 @@ TEST_CASE("call outgoing - ended, before answered") auto machine = std::make_unique(di.get()); REQUIRE(machine->machine.process_event(call::event::StartCall{CallType::CT_OUTGOING, number.getView()})); + fakeit::Verify(Method(di.audio, routingStart)).Exactly(1); fakeit::Verify(Method(di.audio, play)).Exactly(0); REQUIRE(machine->machine.process_event(call::event::Ended{})); fakeit::Verify(Method(di.audio, stop)).Exactly(1);