Hi,
Sorry for delay of my response but lately I have many things on my head.
I think I had some viruses in my system or other bad stuff, so I recover
it to safety state. Now it looks ok. But still I have problem with my
TSP. I see that I don’t have set line. What I want is to set a line and,
I think, have MakeCall feature to send SIP message: INVITE, but I’ve
got stuck in code.
In debug trace I have: (entries like : "-- device init –" are my
indiwidual for marking whitch class is running):
-- Service provider constructor—
TSPI_providerUIIdentify
lpszUIDLLName=0x2686e3c
TSPI_providerUIIdentify
rc=0x0, lpszUIDLLName=0x2686e3c "SipTSP9UI.DLL"
TSPI_lineNegotiateTSPIVersion
dwDeviceID=0xffffffff, dwLoVersion=0x10003, dwHiVersion=0x30001,
lpdwTSPIVersion=0x26856f0
TSPI_lineNegotiateTSPIVersion
rc=0x0, lpdwTSPIVersion=0x30000
TSPI_providerEnumDevices
dwPermanentProviderID=0x22, lpdwNumLines=0xe7f3d4,
lpdwNumPhones=0xe7f3d8, hProvider=0x26856e0,
lpfnLineCreateProc=0x73387c0d, lpfnPhoneCreateProc=0x7338fec9
-- providerEnumDevices -- TSPI_providerEnumDevices
rc=0x0, lpdwNumLines=0x1, lpdwNumPhones=0x0
TSPI_providerInit
dwTSPIVersion=0x30000, dwPermanentProviderID=0x22,
dwLineDeviceIDBase=0x7, dwPhoneDeviceIDBase=0x0, dwNumLines=0x1,
dwNumPhones=0x0, lpfnCompletionProc=0x73395e06, lpdwTSPIOptions=0x26856ec
-- device init -- Device 22, Base Line=7, Count=1, Base Phone=0, Count=0
Completion Callback function = 73395e06
IntervalTimerThread(0xa78) starting
---line---constructor----Lock(-1) 0x1a2609c [Total=0], Thread=0xbfc,
LockCnt=-1, Owner=0x0, InThread=0, hEvent=0x0
Unlock() 0x1a2609c [Total=0], Thread=0xbfc, LockCnt=0, Owner=0xbfc,
InThread=1, hEvent=0x0
Adding Line #1 (id 7) to device list
---line--- read ----0x1a26f50,LineID=0x0,DeviceID=0x7,htLine=0x00000000
Lock(-1) 0x1a2609c [Total=0], Thread=0xbfc, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a2609c [Total=0], Thread=0xbfc, LockCnt=0, Owner=0xbfc,
InThread=1, hEvent=0x0
-- device init ok -- -- create input thread ok –
TSPI_providerInit
rc=0x0, lpdwTSPIOptions=0x26856ec
TSPI_lineNegotiateTSPIVersion
dwDeviceID=0x7, dwLoVersion=0x10003, dwHiVersion=0x30001,
lpdwTSPIVersion=0xe7f37c
TSPI_lineNegotiateTSPIVersion
rc=0x0, lpdwTSPIVersion=0x30000
-- device ConnectionThread -- LibraryTimerThread(0xd54) starting
TSPI_lineGetDevCaps
dwDeviceID=0x7, dwTSPIVersion=0x30000, dwExtVersion=0x0,
lpLineDevCaps=0x2685d54
TSPI_lineGetDevCaps rc=0x0, lpLineDevCaps=0x2685d54
LINEDEVCAPS at 0x2685d54
dwTotalSize = 0x320
dwNeededSize = 0x188
dwUsedSize = 0x188
dwProviderInfoSize = 0x18
dwProviderInfoOffset = 0x124 "SipProvider."
dwSwitchInfoSize = 0x14
dwSwitchInfoOffset = 0x13c "SipSwitch."
dwPermanentLineID = 0x0
dwLineNameSize = 0x0
dwLineNameOffset = 0x0
dwStringFormat = 0x1 (ASCII)
dwAddressModes = 0x1 (ADDRESSID)
dwNumAddresses = 0x0
dwBearerModes = 0x1 (VOICE)
dwMaxRate = 0x0
dwMediaModes = 0x0
dwGenerateToneModes = 0x0
dwGenerateToneMaxNumFreq= 0x0
dwGenerateDigitModes = 0x0
dwMonitorToneMaxNumFreq = 0x0
dwMonitorToneMaxNumEntries = 0x0
dwMonitorDigitModes = 0x0
dwGatherDigitsMinTimeout= 0x0
dwGatherDigitsMaxTimeout= 0x0
dwMedCtlDigitMaxListSize= 0x0
dwMedCtlMediaMaxListSize= 0x0
dwMedCtlToneMaxListSize = 0x0
dwMedCtlCallStateMaxListSize = 0x0
dwDevCapFlags = 0xc00 (CALLHUB,CALLHUBTRACKING)
dwMaxNumActiveCalls = 0x1
dwAnswerMode = 0x0
dwRingModes = 0x1
dwLineStates = 0x1f9f9ff
(OTHER,RINGING,CONNECTED,DISCONNECTED,MSGWAITON,MSGWAITOFF,INSERVICE,OUTOFSERVICE,MAINTENANCE,NUMCALLS,NUMCOMPLETIONS,TERMINALS,ROAMMODE,BATTERY,SIGNAL,LOCK,CAPSCHANGE,CONFIGCHANGE,TRANSLATECHANGE,COMPLCANCEL,REMOVED)
dwUUIAcceptSize = 0x0
dwUUIAnswerSize = 0x0
dwUUIMakeCallSize = 0x0
dwUUIDropSize = 0x0
dwUUISendUserUserInfoSize = 0x0
dwUUICallInfoSize = 0x0
MinDialParams =
dwDialPause = 0x0
dwDialSpeed = 0x0
dwDigitDuration = 0x0
dwWaitForDialtone = 0x0
MaxDialParams =
dwDialPause = 0x0
dwDialSpeed = 0x0
dwDigitDuration = 0x0
dwWaitForDialtone = 0x0
DefaultDialParams =
dwDialPause = 0x0
dwDialSpeed = 0x0
dwDigitDuration = 0x0
dwWaitForDialtone = 0x0
dwNumTerminals = 0x0
dwTerminalCapsSize = 0x0
dwTerminalCapsOffset = 0x0
dwTerminalTextEntrySize = 0x0
dwTerminalTextSize = 0x0
dwTerminalTextOffset = 0x0
dwDevSpecificSize = 0x0
dwDevSpecificOffset = 0x0
dwLineFeatures = 0x8 (MAKECALL)
dwSettableDevStatus = 0x0
dwDeviceClassesSize = 0x38
dwDeviceClassesOffset = 0x150
00000000 74 00 61 00 70 00 69 00 2F 00 6C 00 69 00 6E 00
t.a.p.i./.l.i.n.
00000010 65 00 00 00 74 00 61 00 70 00 69 00 2F 00 70 00
e...t.a.p.i./.p.
00000020 72 00 6F 00 76 00 69 00 64 00 65 00 72 00 69 00
r.o.v.i.d.e.r.i.
00000030 64 00 00 00 00 00 00 00
d...............
TSPI_lineOpen
dwDeviceID=0x7, htLine=0x2686178, lphdLine=0x26861dc,
dwTSPIVersion=0x30000, lpfnEventProc=0x73387c0d
--line OpenDevice -- -- line OnLineFeaturesChanged -- : Calculating
new line features - 0x0, Final=0x0, ConnectedCalls=0, Max=1
: Adjusting line features with 0x0, New Caps=0x8, New Status=0x0
TSPI_lineOpen rc=0x0, lphdLine=0x1a26f50
TSPI_lineGetNumAddressIDs hdLine=0x1a26f50, lpdwAddressIDs=0x26861f4
TSPI_lineGetNumAddressIDs rc=0x0, lpdwAddressIDs=0x0
TSPI_lineGetID hdLine=0x1a26f50, dwAddressID=0x0, hdCall=0x0,
dwSelect=0x1 (LINE), lpDeviceID=0x268625c, lpszDeviceClass=0x2686418
"LineGuid", hTargetProces=0x1834
Lock(-1) 0x1a26f5c [Total=0], Thread=0x654, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a26f5c [Total=0], Thread=0x654, LockCnt=0, Owner=0x654,
InThread=1, hEvent=0x0
TSPI_lineGetID rc=0x80000023 ((LINEERR_INVALDEVICECLASS))
TSPI_lineClose hdLine=0x1a26f50
Lock(-1) 0x1a26f5c [Total=0], Thread=0x654, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a26f5c [Total=0], Thread=0x654, LockCnt=0, Owner=0x654,
InThread=1, hEvent=0x0
Lock(-1) 0x1a26f5c [Total=0], Thread=0x654, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a26f5c [Total=0], Thread=0x654, LockCnt=0, Owner=0x654,
InThread=1, hEvent=0x0
-- line OnLineFeaturesChanged -- : Calculating new line features -
0x0, Final=0x0, ConnectedCalls=0, Max=1
: Adjusting line features with 0x0, New Caps=0x8, New Status=0x0
TSPI_lineClose rc=0x0
Lock(-1) 0x1a2609c [Total=0], Thread=0xa78, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a2609c [Total=0], Thread=0xa78, LockCnt=0, Owner=0xa78,
InThread=1, hEvent=0x0
Lock(-1) 0x1a2609c [Total=0], Thread=0xa78, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a2609c [Total=0], Thread=0xa78, LockCnt=0, Owner=0xa78,
InThread=1, hEvent=0x0
(
--line OnTimer -- Lock(-1) 0x1a26f5c [Total=0], Thread=0xa78,
LockCnt=-1, Owner=0x0, InThread=0, hEvent=0x0
Unlock() 0x1a26f5c [Total=0], Thread=0xa78, LockCnt=0, Owner=0xa78,
InThread=1, hEvent=0x0
Lock(-1) 0x1a2609c [Total=0], Thread=0xa78, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a2609c [Total=0], Thread=0xa78, LockCnt=0, Owner=0xa78,
InThread=1, hEvent=0x0
-- device LocateOwnerFromEvent -- Lock(-1) 0x1a2609c [Total=0],
Thread=0xa78, LockCnt=-1, Owner=0x0, InThread=0, hEvent=0x0
Unlock() 0x1a2609c [Total=0], Thread=0xa78, LockCnt=0, Owner=0xa78,
InThread=1, hEvent=0x0
Lock(-1) 0x1a2609c [Total=0], Thread=0xa78, LockCnt=-1, Owner=0x0,
InThread=0, hEvent=0x0
Unlock() 0x1a2609c [Total=0], Thread=0xa78, LockCnt=0, Owner=0xa78,
InThread=1, hEvent=0x0
)
And part in () is repeating.
Sorry for that describing of my problem isn’t good.
Best regards,
Michael
Post by Andreas Marschall [MVP TAPI]Post by MichaelAndreas, thank You for your response.
Michael, you are welcome.
Post by MichaelTSPI_providerEnumDevices dwPermanentProviderID=0x68,
lpdwNumLines=0x298f3d4, lpdwNumPhones=0x298f3d8, hProvider=0x1815c60,
lpfnLineCreateProc=0x73387c0d, lpfnPhoneCreateProc=0x7338fec9
TSPI_providerEnumDevices rc=0x0, lpdwNumLines=0x0, lpdwNumPhones=0x0
TSPI_providerInit dwTSPIVersion=0x30000, dwPermanentProviderID=0x68,
dwLineDeviceIDBase=0x1f, dwPhoneDeviceIDBase=0x1, dwNumLines=0x0,
dwNumPhones=0x0, lpfnCompletionProc=0x73395e06, lpdwTSPIOptions=0x1815c6c
'svchost.exe': Unloaded 'C:\WINDOWS\system32\MyTSP.tsp'
Your TSP is telling TAPISRV that it supports 0 line and 0 phone devices.
So it is exposing no device at all.
Do you get the same result if you report at least one device?