If you need the full demo codes ,please send email to [email protected].
You can get more information from our website http://www.ipxchina.cn.
The model of MVBCTI.

Have a look for MVBCTI
- MVBCTI控件简介 *
- *
- MVBCTI OCX是基于Activex技术的标准控件,å¯以在任何æâ€Â¯Ã¦Å’ÂOCX控件的编程è¯Â言ä¸Â使çâ€Â¨Ã¯Â¼Å’ *
- 如VB/VC/Delphi/C++Builder/VFP/VS/Powerbuilder/C#/Javascriptç‰。 *
- *
- MVBCTI OCX在一个控件ä¸Â实现了CTIå’ŒIVR SERVER两个接å£,并有独立的åˆÂ始化和终æÂ¢æ–¹æ³•。 *
- å¼€å‘者å¯以使çâ€Â¨MVBCTI控件的IVR接å£在Windowså¹³å°上开å‘基于MVB2000çš„IVR和拨å·计划, *
- 使çâ€Â¨CTI接å£控制和监视MVB2000çš„è¿Â行,通过éž常简å•的代ç Â实现æÂ¥çâ€ÂµÃ¥Â¼Â¹Ã¥Â±Âã€Â点击拨å·ã€Â强 *
- æÂ’ã€Â强拆ã€Â质检ã€Â会议ã€Â示忙ã€Â上线ç‰专业åÂÂå¸Â功能。 *
- *
MVBCTI控件分普åŠ版和专业版。普åŠ版å…Â费,专业版在开å‘环境需è¦ÂÃ¦Å½Ë†Ã¦ÂÆ’。以下内容为控件手册
目录。带*的功能需è¦Â专业版æâ€Â¯Ã¦Å’Â。
文档说明 2
1. 简介 9
1.1. MVBCTI控件结构 9
1.1.1. AGI接å£ 10
1.1.2. Manager API接å£ 10
2. 如何设置开å‘环境 11
3. MVBCTI 使çâ€Â¨Ã¦Â ·ä¾‹ 11
3.1. Manager API 样例(以VB6为例) 11
3.2. AGI 样例(以VB6为例) 12
3.3. AGI 样例(以VC6为例) 14
4. 项目说明 15
4.1. MVBCTI.ocx æ™®åŠ版 15
4.2. MVBCTI.ocx 专业版 15
4.3. 区别 15
5. MVBCTI AGI 接å£ 15
5.1. AGI命令函数è¿â€Ã¥â€ºÅ¾Ã¥â‚¬Â¼ 15
5.2. 属性 16
5.3. 函数 17
5.3.1. FAGI_Init å¯åЍAGIæœÂ务 17
5.3.2. FAGI_Freeå…³é-ÂAGIæœÂ务 17
5.3.3. FAGI_Answeråºâ€Ã§Â†17
5.3.4. FAGI_AbsoluteTimeout指定通é“最大å˜活秒数 18
5.3.5. FAGI_AutoHangup指定通é“自动挂机æ-¶é-´ 18
5.3.6. FAGI_ChannelStatus 通é“状怠18
5.3.7. FAGI_ControlStreamFile 控制æ’Âæâ€Â¾Ã¨Â¯Â音文件 19
5.3.8. FAGI_DBDel 删除注册表éâ€Â® 19
5.3.9. FAGI_DBDeltree 删除注册表éâ€Â®Ã¦Â ‘ 20
5.3.10. FAGI_DBGet 获å–注册表éâ€Â®Ã¥â‚¬Â¼ 20
5.3.11. FAGI_DBPut 增加/ä¿Âå˜注册表éâ€Â®Ã¥â‚¬Â¼ 20
5.3.12. FAGI_Dialè°ƒçâ€Â¨Ã¦â€¹Â¨Ã¥Â·ç¨‹åº 21
5.3.13. FAGI_Execè°ƒçâ€Â¨Ã¥Âºâ€Ã§â€Â¨Ã§Â¨â€¹Ã¥ÂºÂ 22
5.3.14. FAGI_GetData æ’Âæâ€Â¾Ã¨Â¯Â音并获å–按éâ€Â® 22
5.3.15. FAGI_GetFullVar 获å–指定通é“å˜釠23
5.3.16. FAGI_GetOptionæ’Âæâ€Â¾Ã¤Â¸â‚¬Ã¤Â¸ÂªÃ¨Â¯Â音文件获å–DTMF按éâ€Â® 24
5.3.17. FAGI_GetResAttribute获å–属性值 24
5.3.18. FAGI_GetResFeild获å–åÂ-段值 24
5.3.19. FAGI_GetResMessage获å–消æÂ¯å€¼ 25
5.3.20. FAGI_GetResResult获å–结果 26
5.3.21. FAGI_GetResStatus获å–状怠26
5.3.22. FAGI_GetVar 获å–当å‰Â通é“å˜釠26
5.3.23. FAGI_Goto 跳转 27
5.3.24. FAGI_Hangup 拆除指定通é“ 27
5.3.25. FAGI_MeetMe å‘起çâ€ÂµÃ¨Â¯Â会议 27
5.3.26. FAGI_MeetMeAdmin会议控制 28
5.3.27. FAGI_Monitor 开始录音 29
5.3.28. FAGI_NoOp空指令 29
5.3.29. FAGI_RecordFile 录音 30
5.3.30. FAGI_ReceiveChar 获å–åÂ-符 30
5.3.31. FAGI_ReceiveText 获å–文åÂ- 31
5.3.32. FAGI_StopMonitor Ã¥ÂϾ¢录音 31
5.3.33. FAGI_SetGlobalVar设置全局å˜釠31
5.3.34. FAGI_SetAccount设置计费账å· 32
5.3.35. FAGI_SetCallHandler设置æÂ¥çâ€ÂµÃ¥Â¤â€žÃ§Â†å›žè°ƒæŽ¥å£ 32
5.3.36. FAGI_SayAlpha æ’Â报åÂ-毠32
5.3.37. FAGI_SayBalance æ’Â报人民å¸Â余颠32
5.3.38. FAGI_SayDate æ’Â报æ-¥æœŸ 33
5.3.39. FAGI_SayDateTime æ’Â报æ-¥æœŸæ-¶é-´ 33
5.3.40. FAGI_SayDigits é€Âä½Âæ’Â报数åÂ- 34
5.3.41. FAGI_SayFloat æ’Â报浮点数 34
5.3.42. FAGI_SayNumber æ’Â报整数 35
5.3.43. FAGI_SayPhoneNo æ’Â报çâ€ÂµÃ¨Â¯Âå·砠35
5.3.44. FAGI_SayPhoneticæ’Â报åÂ-符串 35
5.3.45. FAGI_SayTime æ’Â报æ-¶é-´ 36
5.3.46. FAGI_SendImage å‘é€Â图僠36
5.3.47. FAGI_SendText å‘é€Âæ–‡åÂ- 36
5.3.48. FAGI_SetCallerID 设置主å«å·砠37
5.3.49. FAGI_SetContext 设置入å£ 37
5.3.50. FAGI_SetExtension 设置å·砠37
5.3.51. FAGI_SetMusic 设置ä¿ÂæŒÂ音习38
5.3.52. FAGI_SetPriority设置åºÂå· 38
5.3.53. FAGI_SetVar设置å˜釠38
5.3.54. FAGI_StreamFileæ’Âæâ€Â¾Ã¨Â¯Â音文件 39
5.3.55. FAGI_SetTDDMode设置TDD模张39
5.3.56. FAGI_Sleep 挂起 39
5.3.57. FAGI_WaitForDigit ç‰待DTMF按éâ€Â® 40
5.3.58. FAGI_Wait设置ç‰待指定秒数 40
5.3.59. FAGI_WaitMusicOnHold设置ä¿ÂæŒÂ指定秒数 40
5.4. 事件 41
5.4.1. OnFAGINewCall 新呼å« 41
6. MVBCTI ManagerAPI接å£ 42
6.1. 属性 42
6.2. 函数 43
6.2.1. CTI_Init CTIåˆÂ始化 43
6.2.2. CTI_Free 释æâ€Â¾CTI资溠43
6.2.3. CTI_ About 显示关于çª-å£ 43
6.2.4. *CTI_AbsoluteTimeout设置ç»Â对超æ-¶é™Â制 44
6.2.5. *CTI_Agents以事件方å¼Âè¿â€Ã¥â€ºÅ¾Aç±»åÂÂå¸Â通é“åˆ-表 44
6.2.6. *CTI_AgentCallbackLogin Aç±»åÂÂå¸Â通é“回拨登入 44
6.2.7. *CTI_AgentLogoff Aç±»åÂÂå¸Â通é“登出 45
6.2.8. *CTI_AGI 呼å«指定设备执行AGIåºâ€Ã§â€Â¨ 45
6.2.9. * CTI_Axfer 询é-®è½¬æŽ¥ 46
6.2.10. *CTI_BindUser 绑定çâ€Â¨Ã¦Ë†Â·Ã¤Â¸Å½Ã¨Â®Â¾Ã¥Â¤â€¡ 46
6.2.11. *CTI_Challenge 获å–MD5动æ€Â密钥 47
6.2.12. *CTI_ChangeMonitorä¿®æâ€Â¹Ã¥Â½â€¢Ã©Å¸Â³Ã¦â€“‡ä»¶åÂÂç§° 47
6.2.13. *CTI_ChanSpy 监å¬指定分机 47
6.2.14. *CTI_Command执行控制å°命令 48
6.2.15. *CTI_Conference 建立陿€Â或动æ€Âçâ€ÂµÃ¨Â¯Â会议 48
6.2.16. *CTI_ConfControl 会议控制 50
6.2.17. *CTI_DBGet 获å–注册表数æÂ®ï¼Œä»¥äº‹ä»¶è¿â€Ã¥â€ºÅ¾ 50
6.2.18. *CTI_DBPut 建立或修æâ€Â¹Ã¦Â³Â¨Ã¥â€ Œè¡¨æ•°æÂ® 51
6.2.19. *CTI_DeviceListè¿â€Ã¥â€ºÅ¾Ã¦Â³Â¨Ã¥â€ Œè¡¨è®¾å¤‡è®¾ç½® 51
6.2.20. *CTI_DeadAGI呼å«指定设备执行DeadAGIåºâ€Ã§â€Â¨ 51
6.2.21. *CTI_Events设置事件接æâ€Â¶Ã¥Â¼â‚¬Ã¥â€¦Â³ 52
6.2.22. CTI_ExtensionState å–设备状怠53
6.2.23. *CTI_FeatureCode 通过编åÂᏡčâ€Â¨Ã¥Â¿Â«Ã¦Â·åŠŸèƒ½ 53
6.2.24. *CTI_FeatureName 通过åÂÂç§°è°ƒçâ€Â¨Ã¥Â¿Â«Ã¦Â·åŠŸèƒ½ 54
6.2.25. *CTI_Filters设置事件过滤 54
6.2.26. *CTI_FileLog 记录çâ€Â¨Ã¦Ë†Â·Ã¦-¥å¿- 54
6.2.27. CTI_GetActionIDçâ€Å¸Ã¦Ë†ÂACTIONç¼–å· 55
6.2.28. *CTI_GetDeviceItemè¿â€Ã¥â€ºÅ¾Ã¨Â®Â¾Ã¥Â¤â€¡Ã¦Å’‡å®šé¡¹ç›®å†…容 55
6.2.29. *CTI_GetUserDevice è¿â€Ã¥â€ºÅ¾Ã§â€Â¨Ã¦Ë†Â·Ã§Â»â€˜Ã¥Â®Å¡Ã§Å¡â€žÃ¨Â®Â¾Ã¥Â¤â€¡ 56
6.2.30. *CTI_GetDeviceUser è¿â€Ã¥â€ºÅ¾Ã¤Â¸Å½Ã¨Â®Â¾Ã¥Â¤â€¡Ã§Â»â€˜Ã¥Â®Å¡Ã§Å¡â€žÃ§â€Â¨Ã¦Ë†Â· 56
6.2.31. *CTI_GetUserBinds è¿â€Ã¥â€ºÅ¾Ã¦â€°â‚¬Ã¦Å“‰çâ€Â¨Ã¦Ë†Â·Ã§Å¡â€žÃ§Â»â€˜Ã¥Â®Å¡Ã¨Â®Â¾Ã§Â½Â® 56
6.2.32. *CTI_GetDeviceBinds è¿â€Ã¥â€ºÅ¾Ã¦â€°â‚¬Ã¦Å“‰è®¾å¤‡çš„绑定设置 57
6.2.33. *CTI_GetDeviceDials è¿â€Ã¥â€ºÅ¾Ã¦â€°â‚¬Ã¦Å“‰è®¾å¤‡çš„æ‹¨å·设置 57
6.2.34. *CTI_GetDeviceContexts è¿â€Ã¥â€ºÅ¾Ã¦â€°â‚¬Ã¦Å“‰è®¾å¤‡çš„æ‹¨åÂÂ·Ã¦ÂÆ’é™ 58
6.2.35. *CTI_GetDeviceItem 绑定çâ€Â¨Ã¦Ë†Â·Ã¤Â¸Å½Ã¨Â®Â¾Ã¥Â¤â€¡ 58
6.2.36. *CTI_GetConfUserCount è¿â€Ã¥â€ºÅ¾Ã¥Â‚加会议人数 59
6.2.37. *CTI_GetResResultè¿â€Ã¥â€ºÅ¾Ã§Â»â€œÃ¦Å¾Å“集指定å˜é‡Â值 59
6.2.38. *CTI_GetResSuccessè¿â€Ã¥â€ºÅ¾Ã§Â»â€œÃ¦Å¾Å“集æˆÂ功标å¿- 59
6.2.39. CTI_GetVar å–通é“å˜é‡Â值 60
6.2.40. CTI_Hangup 指定通é“拆线 60
6.2.41. *CTI_IAXnetstats è¿â€Ã¥â€ºÅ¾IAX网络统计数æÂ® 60
6.2.42. *CTI_IAXpeers以事件方å¼Âè¿â€Ã¥â€ºÅ¾IAX终端åˆ-表 61
6.2.43. *CTI_IAXShowpeers è¿â€Ã¥â€ºÅ¾IAX终端åˆ-表 61
6.2.44. *CTI_ListCommands è¿â€Ã¥â€ºÅ¾CTI命令åˆ-表 62
6.2.45. CTI_Login CTI登录 63
6.2.46. *CTI_MailboxCount 获å–è¯Â音留言æÂ¡æ•° 63
6.2.47. *CTI_MailboxStatus 获å–指定分机è¯Â音留言状怠64
6.2.48. *CTI_ModuleCheck 检查模åÂ-是å¦加载 64
6.2.49. *CTI_ModuleLoad 加载/å¸载/é‡Â载模åÂ- 64
6.2.50. *CTI_Monitor 通è¯Â录音 65
6.2.51. *CTI_MohListè¿â€Ã¥â€ºÅ¾Ã¥Â½Â©Ã©â€œÆ’类别åˆ-表 66
6.2.52. CTI_Originate å‘起呼å« 66
6.2.53. CTI_Ping 检测网络连接 68
6.2.54. *CTI_Park çâ€ÂµÃ¨Â¯Â驻留 68
6.2.55. *CTI_ParkedCalls 获å–驻留çâ€ÂµÃ¨Â¯Âåˆ-表 69
6.2.56. *CTI_PickUp 代接指定分机 69
6.2.57. *CTI_PBXSettings 获å–PBX核心设置 69
6.2.58. *CTI_PBXStatus 获å–PBX核心状怠70
6.2.59. *CTI_PBXShowChannels以事件方å¼Âè¿â€Ã¥â€ºÅ¾Ã¦Â´Â»Ã¥Å ¨é€šé“åˆ-表 70
6.2.60. *CTI_QM 通è¯Â质检 70
6.2.61. *CTI_QueueAdd 登入队åˆ- 71
6.2.62. *CTI_QueueRemove 登出队åˆ- 71
6.2.63. *CTI_QueuePause Ã¥ÂÂå¸Â示忙/é-² 72
6.2.64. *CTI_QueueStatus 事件方å¼Âè¿â€Ã¥â€ºÅ¾Ã©ËœÅ¸Ã¥Ë†-状怠72
6.2.65. *CTI_Redirect 转接çâ€ÂµÃ¨Â¯Â 73
6.2.66. *CTI_Reloadé‡Â新加载模åÂ- 73
6.2.67. *CTI_SendDTMFå‘é€ÂDTMF 74
6.2.68. *CTI_SendTextå‘é€Âæ–‡åÂ- 74
6.2.69. CTI_SetVar 设置通é“å˜釠75
6.2.70. CTI_Status 以事件方å¼Âè¿â€Ã¥â€ºÅ¾Ã¦Å’‡å®šæˆ–全部通é“状怠75
6.2.71. *CTI_SIPpeers 以事件方å¼Âè¿â€Ã¥â€ºÅ¾SIP终端åˆ-表 75
6.2.72. *CTI_SplitUser分离çâ€Â¨Ã¦Ë†Â·Ã¤Â¸Å½Ã¨Â®Â¾Ã¥Â¤â€¡ 76
6.2.73. *CTI_SIPshowpeerè¿â€Ã¥â€ºÅ¾Ã¦Å’‡å®šSIP终端详情 76
6.2.74. *CTI_StopMonitor Ã¥ÂϾ¢录音 77
6.2.75. *CTI_ThreeWay 强æÂ’或三方会议 78
6.2.76. *CTI_ZapDialOffhook ZAP通é“摘机拨å· 78
6.2.77. *CTI_ZapHangup Zap通é“拆线 79
6.2.78. *CTI_ZapTransfer ZAP通é“转接 79
6.2.79. *CTI_ZapDNDoff ZAP通é“关é-Âå…Â打扰 79
6.2.80. *CTI_ZapDNDon ZAP通é“开å¯å…Â打扰 80
6.2.81. *CTI_ZapShowChannels 以事件方å¼Âè¿â€Ã¥â€ºÅ¾Zap通é“åˆ-表 80
6.2.82. *CTI_UnPark å–消驻留 80
6.2.83. *CTI_UpTime è¿â€Ã¥â€ºÅ¾Ã¥Â¹Â³Ã¥Â°è¿Â行æ-¶é-´ 81
6.2.84. *CTI_UserListè¿â€Ã¥â€ºÅ¾Ã¦Â³Â¨Ã¥â€ Œè¡¨çâ€Â¨Ã¦Ë†Â·Ã¨Â®Â¾Ã§Â½Â® 81
6.2.85. *CTI_VoiceMailListè¿â€Ã¥â€ºÅ¾Ã¨Â¯Â音信箱åˆ-表 82
6.2.86. *CTI_WaitEvent ç‰待指定事件å‘çâ€Å¸ 82
6.3. 事件 82
6.3.1. *OnAgents Aç±»åÂÂå¸Â通é“状æ€Âåˆ-表 83
6.3.2. *OnAgentcallbacklogin Aç±»åÂÂå¸Â回å«登入 83
6.3.3. *OnAgentcallbacklogoff Aç±»åÂÂå¸Â回å«登出 83
6.3.4. OnAgentCalled Ã¥ÂÂå¸Â振铃 84
6.3.5. *OnAgentComplete Ã¥ÂÂå¸Â通è¯Â结æÂŸ 84
6.3.6. *OnAgentConnect Ã¥ÂÂå¸Â摘机 85
6.3.7. *OnAgentDumpÃ¥ÂÂå¸Â拒接 85
6.3.8. *OnAgentlogin Aç±»åÂÂå¸Â通é“登入 86
6.3.9. *OnAgentlogoff Aç±»åÂÂå¸Â通é“登出 86
6.3.10. *OnAlarm Zap通é“告è¦ 86
6.3.11. *OnAlarmClear Zap通é“告è¦清除 87
6.3.12. *OnCdrè¯Âå•产çâ€Å¸Ã¤Âºâ€¹Ã¤Â»Â¶ 87
6.3.13. *OnDBGetResponse读å–注册表数æÂ®äº‹ä»¶ 88
6.3.14. OnDial拨åÂኼ܊Ȧ 88
6.3.15. *OnDNDState Zap通é“å…Â打扰状怠89
6.3.16. *OnDTMF按éâ€Â®Ã¤Âºâ€¹Ã¤Â»Â¶ 89
6.3.17. *OnExtensionStatus 设备状怠89
6.3.18. OnHangup 通é“拆线 90
6.3.19. *OnHold 呼å«ä¿Â挠90
6.3.20. *OnJoin 呼å«进入队åˆ- 90
6.3.21. *OnLeave 呼å«离开队åˆ- 91
6.3.22. OnLink 通è¯Â建立 91
6.3.23. *OnMeetmeJoin 进入会议室 91
6.3.24. *OnMeetmeLeave离开会议室æ-¶è§¦å‘ 92
6.3.25. *OnMeetmeStopTalkingå‘言结æÂŸæ-¶è§¦å‘ 92
6.3.26. *OnMeetmeTalkingå‘言æ-¶è§¦å‘ 93
6.3.27. *OnMessageWaiting è¯Â音留言æÂ¡æ•° 93
6.3.28. *OnMusicOnHold 呼å«ä¿ÂæŒÂ开始结æÂŸ 93
6.3.29. *OnNewcallerid æ–°æÂ¥æ˜¾å·砠94
6.3.30. *OnNewchannel新通é“建立 94
6.3.31. *OnNewexten执行å·砠94
6.3.32. *OnNewstate 通é“状æ€Âå˜化 95
6.3.33. *OnOriginateSuccess å‘起呼嫿ˆÂ功 95
6.3.34. *OnOriginateFailure å‘起呼å«失败 96
6.3.35. *OnParkedCallçâ€ÂµÃ¨Â¯Â驻留åˆ-表 96
6.3.36. *OnParkedCallsCompleteçâ€ÂµÃ¨Â¯Â驻留åˆ-表å‘é€Â完戠97
6.3.37. *OnParkedCallGiveUpæâ€Â¾Ã¥Â¼Æ’驻留 97
6.3.38. *OnParkedCallTimeOut驻留超æ-¶ 97
6.3.39. *OnPeerEntry SIP/IAX2终端对象åˆ-表 98
6.3.40. *OnPeerlistComplete终端åˆ-表å‘é€Â完戠98
6.3.41. *OnPeerStatus终端状怠98
6.3.42. *OnQueueCallerAbandon 队åˆ-ä¸Â的排队者挂机 99
6.3.43. *OnQueueEntry è¿â€Ã¥â€ºÅ¾Ã©ËœÅ¸Ã¥Ë†-ä¸Â的排队对象 99
6.3.44. *OnQueueMember 队åˆ-æˆÂ员状怠100
6.3.45. *OnQueueMemberAddedÃ¥ÂÂå¸Â登入队åˆ- 100
6.3.46. *OnQueueMemberPausedÃ¥ÂÂå¸Â示é-²/示忙 101
6.3.47. *OnQueueMemberRemovedÃ¥ÂÂå¸Â登出队åˆ- 101
6.3.48. *QueueMemberStatus队åˆ-æˆÂ员线路状怠102
6.3.49. *OnQueueParams队åˆ-统计数æÂ® 102
6.3.50. *OnQueueStatusComplete 队åˆ-状æ€Âå‘é€Â完戠103
6.3.51. *OnRegistry注册状怠103
6.3.52. *OnReload CTIé‡Â新加载 103
6.3.53. *OnRename活动通铿â€Â¹Ã¥Â 103
6.3.54. *OnShutdownå…³é-ÂPBX 104
6.3.55. OnStatus 活动通é“状怠104
6.3.56. OnStatusComplete 活动通é“状æ€Âå‘é€Â完戠105
6.3.57. *OnShowChannel活动通é“状怠105
6.3.58. *OnShowChannelsComplete活动通é“åˆ-表å‘é€Â完戠106
6.3.59. *OnOther 其他事件 106
6.3.60. *OnUnholdå–消ä¿Â挠106
6.3.61. OnUnlink通è¯Âæ–Âå¼€ 106
6.3.62. *OnUnParkedCallå–出驻留çâ€ÂµÃ¨Â¯Â 107
6.3.63. *OnUserEvent 自定义事件 107
6.3.64. *OnZapShowChannels è¿â€Ã¥â€ºÅ¾Zap通é“åˆ-表 107
6.3.65. *OnZapShowChannelsComplete Zap通é“åˆ-表结æÂŸ 108
CTI API Sample codes for MVBCTI in VB.
Private Sub Command1_Click()
MVBCTI1.CTI_HostName = “192.168.0.102”
‘MVBCTI1.CTI_Port = 5038
MVBCTI1.CTI_ThreadType = 1
res = MVBCTI1.CTI_Init()
If res <> 0 Then
MsgBox “CTI Init Failed”
Exit Sub
End If
‘Text1.Text = MVBCTI1.CTI_Challenge(“MD5”, “aaa”)
s_msg = MVBCTI1.CTI_Login(“tapi”, “tapi”, “”, “”, “”, “”)
res = MVBCTI1.CTI_GetResSuccess(s_msg)
If res = 0 Then
MsgBox “CTI Login Failed” + Chr(10) + Chr(13) + MVBCTI1.CTI_GetResResult(s_msg, “Message”)
Exit Sub
End If
MsgBox “init ok”
End Sub
Private Sub Command4_Click()
Text1.Text = MVBCTI1.CTI_CallParkExt(“SIP/7001”, “7011”, “8899”, “”)
End Sub
Private Sub MVBCTI1_OnDial(ByVal id As Long, ByVal mvb_Source As String, ByVal MVB_Destination As String, ByVal MVB_Callerid As String, ByVal MVB_CalleridName As String, ByVal MVB_SrcUniqueID As String, ByVal MVB_DestUniqueID As String)
Text1.Text = Text1.Text + “MVBCTI1_OnDial:” + Chr(13) + Chr(10) + MVB_Destination + Chr(13) + Chr(10) + mvb_Source + Chr(13) + Chr(10) + MVB_Callerid + Chr(13) + Chr(10)
s_dev = Left(MVB_Destination, Len(“SIP/7001”))
If s_dev = “SIP/7001” Then
MsgBox “Call from ” + MVB_Callerid
End If
End Sub
IVR SERVER Sample codes for MVBCTI in VC.
void CMvbctit2Dlg::OnFAGINewCallMvbcti1(long id, LPCTSTR MVB_CallInfo, LPCTSTR MVB_Network, LPCTSTR MVB_NetworkScript, LPCTSTR MVB_Request, LPCTSTR mvb_channel, LPCTSTR MVB_Language, LPCTSTR MVB_Type, LPCTSTR MVB_Uniqueid, LPCTSTR MVB_Callerid, LPCTSTR MVB_CalleridName, LPCTSTR MVB_CallingPres, LPCTSTR MVB_CallingANI2, LPCTSTR MVB_CallingTON, LPCTSTR MVB_CallingTNS, LPCTSTR MVB_DNID, LPCTSTR MVB_RDNIS, LPCTSTR mvb_context, LPCTSTR mvb_priority, LPCTSTR MVB_Enhanced, LPCTSTR mvb_accountcode)
{
// TODO: Add your control notification handler code here
S_CallInfo callinfo;
callinfo.ThreadId=id;
callinfo.hInstance =this;
HANDLE ehThread;
DWORD eThreadId;
ehThread= CreateThread(NULL, 0, ThreadProc, &callinfo, 0, &(eThreadId));
::AfxMessageBox(MVB_CallInfo);
return;
}
DWORD CMvbctit2Dlg::ThreadProc(LPVOID lpParameter)
{
// TODO: Add your control notification handler code here
S_CallInfo *callinfo = (S_CallInfo*)lpParameter;
CMvbctit2Dlg *maindlg = (CMvbctit2Dlg *)callinfo->hInstance;
LONG id=callinfo->ThreadId;
maindlg->m_cti.FAGI_Answer(id);
maindlg->m_cti.FAGI_StreamFile(id,_T(“custom/jaloninfo”),_T(“12345”),0);
maindlg->m_cti.FAGI_StreamFile(id,_T(“beep”),_T(“12345”),0);
maindlg->m_cti.FAGI_StreamFile(id,_T(“custom/jaloninfo”),_T(“12345”),0);
maindlg->m_cti.FAGI_Hangup(id,_T(“”));
return TRUE;
}