From dc8dc3d49d4b98e28cee3e68cf408bc8af9633b9 Mon Sep 17 00:00:00 2001 From: Anton Date: Tue, 19 Aug 2025 17:20:35 +0400 Subject: pica-client: add call initiation & termination in skynet and audiovideocallscontroller and callwindow --- pica-client/audiovideocallcontroller.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'pica-client/audiovideocallcontroller.h') diff --git a/pica-client/audiovideocallcontroller.h b/pica-client/audiovideocallcontroller.h index 9bc9c38..82e1dc8 100644 --- a/pica-client/audiovideocallcontroller.h +++ b/pica-client/audiovideocallcontroller.h @@ -19,17 +19,39 @@ #include #include "callwindow.h" +#include "audiodevice.h" +#include "videodevice.h" class AudioVideoCallController : public QObject { Q_OBJECT public: explicit AudioVideoCallController(QObject *parent = nullptr); + // is call active (i.e. are voice/video packets exchanged now) + bool const isActive() {return is_active;} + void processCall(); public slots: void start_call(QByteArray peer_id); + void call_from(QByteArray peer_id); + void call_failed(QString reason); + void call_accepted(QByteArray peer_id); + void call_rejected(QByteArray peer_id); + void call_hungup(QByteArray peer_id); signals: private: CallWindow *callwindow; + AudioDevice *ringdevice; + AudioDevice *microphone; + AudioDevice *output; + VideoDevice *cam; + bool is_active; + QByteArray m_peer_id; +private slots: + // button handlers + void initiate_call(); + void accept_call(); + void end_call(); + }; #endif // AUDIOVIDEOCALLCONTROLLER_H -- cgit v1.2.1