0

I am new in linphone. Anyone can guide me how to receive dtmf during call in iOS. I puted method this in LinphoneCoreVTable.

.dtmf_received = linphone_iphone_notify_dtmf_received.

But when this method call I don't know.

Cœur
  • 37,241
  • 25
  • 195
  • 267

1 Answers1

1

you have to implement function which get called when dtmf is received.

Interface of function is following:

/**
 * Callback for being notified of DTMFs received.
 * @param lc the linphone core
 * @param call the call that received the dtmf
 * @param dtmf the ascii code of the dtmf
 */
typedef void (*LinphoneCoreCbsDtmfReceivedCb)(LinphoneCore* lc, LinphoneCall *call, int dtmf);

Is a same as for call state change:

VTable

.call_state_changed = (LinphoneCoreCallStateChangedCb)linphone_iphone_call_state,

Interface

/**
 * Call state notification callback.
 * @param lc the LinphoneCore
 * @param call the call object whose state is changed.
 * @param cstate the new state of the call
 * @param message a non NULL informational message about the state.
 */
typedef void (*LinphoneCoreCbsCallStateChangedCb)(LinphoneCore *lc, LinphoneCall *call, LinphoneCallState cstate, const char *message);

And method

static void linphone_iphone_call_state(LinphoneCore *lc, LinphoneCall *call, LinphoneCallState state, const char *message) {
    [(__bridge LinphoneManager *)linphone_core_get_user_data(lc) onCall:call StateChanged:state withMessage:message];
}
Jakub Průša
  • 2,255
  • 1
  • 14
  • 19