Description
This article describes the call flow of Attended Transfer initiated by Grandstream GXP2135. VoIP packets and the phone’s Syslog messages will be discussed in this article.
Call Flow
a. Ext. 1001 dials Ext. 1007
b. Ext. 1007 puts the call on hold with ext. 1001 by pressing the Attn Transfer button on the Call screen
c. Ext. 1007 dials ext. 1002
d. Ext. 1007 transfers ext. 1001 to ext. 1002
Flow Sequence
The flow sequence below is taken from GXP2135.
Syslog
1. At 10.58:14, the call was placed on hold; that was the time when ext. 1007 pressed Attended Transfer button on the call screen
10:58:14 run:Event.cc(848)->Dispatching event: 201 (PHONE_COMMAND_HOLD) on line -1\n
10:58:14 CallModule::ActionWidget:63->Opening Transfer Screen\n
10:58:14. run:Event.cc(848)->Dispatching event: 213 (PHONE_COMMAND_DIAL_TONE) on line -1\n
10:58:14. run:Event.cc(848)->Dispatching event: 49 (CALL_HOLD) on line 0\n
10:58:14. run:Event.cc(848)->Dispatching event: 88 (SIG_MEDIA_CHANGE) on line 0\n
10:58:14. run:Event.cc(848)->Dispatching event: 60 (CALL_STATUS_UPDATE) on line 0\n
2. Ext. 1007 inputs ‘1002’ at the Attended Transfer screen
10:58:20 GXP2135_GUI : USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][3034914816] CallModule::CallModuleController:2767->status: 3, isFromPhone: true, line: 1, tid: 0, acct: 0, msg: 0, remoteNum: “1002”, remoteName: “GRP2604P”, scheme: 0, multicast: 0, divertName: “”, divertNum: “”, refByName: “”, refByNum: “”, isTransferred: true, isCallReject: true, origNumber: “”\n
3. A new call between Ext. 1007 and ext. 1002 are initiated
10:58:23 USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][3061166080] run:Event.cc(848)->Dispatching event: 41 (CALL_STARTED) on line 1\n
4. Ext. 1007 transfers ext. 1001 to ext. 1002
10:58:29. USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][3034914816] CallModule::CallModuleController:2767->status: 6, isFromPhone: false, line: 1, tid: 0, acct: 0, msg: 0, remoteNum: “1002”, remoteName: “GRP2604P”, scheme: 0, multicast: 0, divertName: “”, divertNum: “”, refByName: “”, refByNum: “”, isTransferred: false, isCallReject: false, origNumber: “”\n
10:58:29 USER.DEBUG [00:0b:82:97:d8:4d][1.0.11.57][3034914816] CallModule::CallModuleController:2100->Transfer 1 with number “1002” to 0 with number “1001“\n
10:58:29 USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][3061166080] run:Event.cc(848)->Dispatching event: 49 (CALL_HOLD) on line 1\n
10:58:29 GXP2135_PHONE: USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][3061166080] run:Event.cc(848)->Dispatching event: 53 (CALL_TRANSFER) on line 1\n
5. Once the call is transferred successfully, the phone is placed on hook. Ext. 1007 (transferer) does not send a BYE message.
10:58:30 GXP2135_PHONE: USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][2867450976] processMedia:Call.cc(2796)->Call::processMedia(5): call stopped on line 0 inTransfer: 0 callStatus: 0 referDialogId: 0 phoneReferDialogId: 0\n
10:58:30 GXP2135_PHONE: USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][3061166080] run:Event.cc(848)->Dispatching event: 85 (SIG_REMOTE_DISCONNECT) on line 1\n
10:58:35 GXP2135_PHONE: USER.INFO [00:0b:82:97:d8:4d][1.0.11.57][3061166080] run:Event.cc(848)->Dispatching event: 5 (PHONE_ON_HOOK) on line -1\n