6 #ifndef ZDK_NET_BanafoManager_h
7 #define ZDK_NET_BanafoManager_h
9 #include "native_shared_ptr.h"
10 #include "PublicInterfaces.h"
11 #include "BanafoContact.h"
12 #include "BanafoContactSearchCriteria.h"
13 #include "ContactType.h"
15 #include "BanafoPhone.h"
16 #include "OriginType.h"
17 #include "RecordingType.h"
18 #include "RecordingStream.h"
19 #include "BanafoCall.h"
20 #include "BanafoRecording.h"
21 #include "BanafoEventsHandler.h"
25 using namespace System::Collections::Generic;
29 ref class BanafoContact;
30 ref class BanafoContactSearchCriteria;
32 ref class BanafoRecording;
33 ref class BanafoEventsHandler;
35 ref class RecordingStream;
45 static bool RegisterEventListeners()
47 std::shared_ptr<GeneralStatusEventListener> BanafoEventsHandler_Listener_tmp = std::make_shared<GeneralStatusEventListener>();
48 BanafoEventsHandler_Listener = BanafoEventsHandler_Listener_tmp.get();
49 listenersMap->try_emplace(
reinterpret_cast<intptr_t
>(BanafoEventsHandler_Listener), std::move(BanafoEventsHandler_Listener_tmp));
53 static bool RegisteredEventListeners = RegisterEventListeners();
55 ZDK::IBanafoManager* cppRef =
nullptr;
80 ZDK_NET::Result^
Start(System::String^ schemeAndAuthority, System::String^ basePath, System::String^ clientID);
216 long long UploadRecording(System::String^ banaforRecordingId, System::String^ filePathUtf8);
238 ZDK_NET::BanafoContactSearchCriteria^
CreateContactSearchCriteria(System::String^ contactId, System::String^ provider, System::String^ search, List<ZDK_NET::ContactType>^ types, System::String^ phone, System::String^ nationalNumber,
bool reverseLookup, System::String^ region,
int start,
int limit, System::String^ pageId);
261 ZDK_NET::BanafoContact^
CreateContact(System::String^ banafoId, System::String^ remoteId, System::String^ remoteProvider, System::String^ displayName, System::String^ firstName, System::String^ middleName, System::String^ lastName, ZDK_NET::ContactType type, System::String^ url, System::String^ company, List<System::String^>^ emails, List<BanafoPhone^>^ phones);
284 ZDK_NET::BanafoCall^
CreateCall(System::String^ banafoId, System::String^ summary, System::String^ title, System::String^ source, ZDK_NET::OriginType origin, System::String^ startedAt, System::String^ acceptedAt, System::String^ finishedAt, System::String^ type, System::String^ localPhone, System::String^ remotePhone,
ZDK_NET::BanafoContact^ contact);
402 virtual long long Handle()
override;
404 virtual void Initialize()
override;
406 virtual void ReleaseReference()
override;
API invocation status result.
Definition: Result.h:24
long long UploadRecording(System::String^ banaforRecordingId, System::String^ filePathUtf8)
Upload audio recording file to the Banafo server.
ZDK_NET::Result ^ Stop()
Stops the Banafo Service.
Definition: BanafoEventsHandler.h:122
ZDK_NET::Result ^ Start(System::String^ schemeAndAuthority, System::String^ basePath, System::String^ clientID)
Set up and Start the Banafo Service.
ZDK_NET::BanafoContact ^ CreateContact(System::String^ banafoId, System::String^ remoteId, System::String^ remoteProvider, System::String^ displayName, System::String^ firstName, System::String^ middleName, System::String^ lastName, ZDK_NET::ContactType type, System::String^ url, System::String^ company, List< System::String^>^ emails, List< BanafoPhone^>^ phones)
Creates a BanafoContact object.
ZDK_NET::Result ^ SetCallContact(System::String^ banafoCallId, ZDK_NET::BanafoContact^ contact)
Updates contact information to a call.
Banafo Call.
Definition: BanafoCall.h:26
ZDK_NET::RecordingStream ^ CreateRecordingStream(ZDK_NET::RecordingType origin, System::String^ type, System::String^ fileName, System::String^ languageCode)
Creates a RecordingStream object.
ZDK_NET::Result ^ SetTokens(System::String^ accessToken, System::String^ refreshToken)
Set Banafo Service authorization tokens.
long long ListTranscriptLanguages()
List Banafo transcript languages.
Definition: GeneralStatusEventListener.h:90
long long GetProfile()
Get Banafo profile.
long long ListContacts(ZDK_NET::BanafoContactSearchCriteria^ criteria)
List contacts based on serch criterias.
Banafo Call.
Definition: RecordingStream.h:24
ZDK_NET::Result ^ StartAuthorization()
Starts Banafo Service authorization process.
long long ListIntegrations()
List CRM integrations.
Banafo Recording.
Definition: BanafoRecording.h:24
Banafo Service Manager.
Definition: BanafoManager.h:40
ZDK_NET::BanafoRecording ^ CreateRecording(System::String^ banafoId, System::String^ startedAt, System::String^ finishedAt, System::String^ banafoCallId, List< RecordingStream^>^ streams)
Creates a BanafoRecording object.
void AddBanafoListener(ZDK_NET::BanafoEventsHandler^ value)
Adds a new Banafo Service event listener.
void DropBanafoListener(ZDK_NET::BanafoEventsHandler^ value)
Removes a specific already added Banafo Service event listener.
long long ForceCreateCallAtServer(ZDK_NET::BanafoCall^ call)
Force creates Banafo Call at the Banafo Service.
ZDK_NET::Result ^ CancelRequest(long long requestId)
Cancels a Banafo Service request.
ZDK_NET::BanafoCall ^ CreateCall(System::String^ banafoId, System::String^ summary, System::String^ title, System::String^ source, ZDK_NET::OriginType origin, System::String^ startedAt, System::String^ acceptedAt, System::String^ finishedAt, System::String^ type, System::String^ localPhone, System::String^ remotePhone, ZDK_NET::BanafoContact^ contact)
Creates a BanafoCall object.
ZDK_NET::BanafoContactSearchCriteria ^ CreateContactSearchCriteria(System::String^ contactId, System::String^ provider, System::String^ search, List< ZDK_NET::ContactType >^ types, System::String^ phone, System::String^ nationalNumber, bool reverseLookup, System::String^ region, int start, int limit, System::String^ pageId)
Creates a BanafoContactSearchCriteria object.
ZDK_NET::Result ^ CancelAuthorization()
Cancels Banafo Service authorization process.
long long ForceCreateRecordingAtServer(ZDK_NET::BanafoRecording^ recording)
Force creates Banafo Recording at the Banafo Service.