summaryrefslogtreecommitdiff
path: root/pjsip-apps
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2010-01-25 17:38:07 +0000
committerBenny Prijono <bennylp@teluu.com>2010-01-25 17:38:07 +0000
commit3b0e3817784670d13b0f0a62e28047e56c81042b (patch)
treed131441c36d73326757ab869ec54ae6c879c2319 /pjsip-apps
parente64cf78ec8b496833015bb703bc68de4a1ad4480 (diff)
Misc fix (#1026): incoming call event is not detected by PocketPJ sample application
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3073 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps')
-rw-r--r--pjsip-apps/src/pocketpj/PocketPJDlg.cpp21
-rw-r--r--pjsip-apps/src/pocketpj/PocketPJDlg.h2
2 files changed, 18 insertions, 5 deletions
diff --git a/pjsip-apps/src/pocketpj/PocketPJDlg.cpp b/pjsip-apps/src/pocketpj/PocketPJDlg.cpp
index b8a6bf2f..87caf19b 100644
--- a/pjsip-apps/src/pocketpj/PocketPJDlg.cpp
+++ b/pjsip-apps/src/pocketpj/PocketPJDlg.cpp
@@ -394,6 +394,19 @@ void CPocketPJDlg::PopUp_Hide(PopUpType type)
}
}
+void CPocketPJDlg::OnIncomingCall()
+{
+ pjsua_call_info ci;
+
+ pjsua_call_get_info(0, &ci);
+
+ PopUp_Show(POPUP_CALL, "Incoming call..", ci.remote_info.ptr, "",
+ "Answer", "Hangup", 0);
+ pjsua_call_answer(0, 180, NULL, NULL);
+ if (m_Cfg.m_AutoAnswer)
+ OnPopUpButton(1);
+}
+
void CPocketPJDlg::OnCallState()
{
pjsua_call_info ci;
@@ -408,11 +421,7 @@ void CPocketPJDlg::OnCallState()
"", "Hangup", 0);
break;
case PJSIP_INV_STATE_INCOMING: /**< After INVITE is received. */
- PopUp_Show(POPUP_CALL, "Incoming call..", ci.remote_info.ptr, "",
- "Answer", "Hangup", 0);
- pjsua_call_answer(0, 180, NULL, NULL);
- if (m_Cfg.m_AutoAnswer)
- OnPopUpButton(1);
+ OnIncomingCall();
break;
case PJSIP_INV_STATE_EARLY: /**< After response with To tag. */
case PJSIP_INV_STATE_CONNECTING:/**< After 2xx is sent/received. */
@@ -454,6 +463,8 @@ void CPocketPJDlg::on_incoming_call(pjsua_acc_id acc_id, pjsua_call_id call_id,
PJ_UNUSED_ARG(acc_id);
PJ_UNUSED_ARG(call_id);
PJ_UNUSED_ARG(rdata);
+
+ theDlg->OnIncomingCall();
}
void CPocketPJDlg::OnRegState()
diff --git a/pjsip-apps/src/pocketpj/PocketPJDlg.h b/pjsip-apps/src/pocketpj/PocketPJDlg.h
index 98bed57a..2b3eb977 100644
--- a/pjsip-apps/src/pocketpj/PocketPJDlg.h
+++ b/pjsip-apps/src/pocketpj/PocketPJDlg.h
@@ -23,6 +23,7 @@ public:
CPocketPJDlg(CWnd* pParent = NULL); // standard constructor
void OnPopUpButton(int btnNo);
+ void OnIncomingCall();
// Dialog Data
//{{AFX_DATA(CPocketPJDlg)
@@ -40,6 +41,7 @@ public:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
+
// Implementation
protected:
HICON m_hIcon;