#DEFINE lcWavePlayRec 1 #DEFINE lcCallerID 2 #DEFINE lcCalledID 4 #DEFINE lcDigitPulseDetect 8 #DEFINE lcDigitToneDetect 16 #DEFINE lcExtDevAux 32 #DEFINE lcExtDevAuxMicOffSpeakerOff 64 #DEFINE lcExtDevAuxMicOnSpeakerOff 128 #DEFINE lcExtDevAuxMicOffSpeakerOn 256 #DEFINE lcExtDevAuxMicOnSpeakerOn 512 #DEFINE lcExtDevAuxMicGain 1024 #DEFINE lcExtDevAuxSpeakerVolume 2048 #DEFINE lcExtDevHandset 4096 #DEFINE lcExtDevHandsetMicOffSpeakerOff 8192 #DEFINE lcExtDevHandsetMicOnSpeakerOf 16384 #DEFINE lcExtDevHandsetMicOffSpeakerO 32768 #DEFINE lcExtDevHandsetMicOnSpeakerOn 65536 #DEFINE lcExtDevHandsetMicGain 131072 #DEFINE lcExtDevHandsetSpeakerVolume 262144 #DEFINE lcDataDevice 524288 #define vbCrLf CHR(13)+CHR(10) && I am to lazy to replace vbCrLf in code LOCAL KDPhoneControl AS KDTele.IKDPhone && Create a Phone Object KDPhoneControl = CREATEOBJECT("KDTele.KDPhone") LOCAL lvLineCaps, lvRet As Long thisform.TextLineCaps.Value = "" && And EditBox Control in Your form lvRet = KDPhoneControl.GetLineCaps(ComboLines.ListIndex, @lvLineCaps) && Geting LineCaps If lvRet <> 0 Then && Check for Error thisform.TextLineCaps.Value = "Error: " + KDPhoneControl.GetErrorMsg(lvRet) RETURN EndIf If BITAND(lcCallerID,lvLineCaps) && Compare If Caller ID is OK thisform.TextLineCaps.Value = thisform.TextLineCaps.Value + "Caller ID - OK" + vbCrLf Else thisform.TextLineCaps.Value = thisform.TextLineCaps.Value + "Caller ID - UNAVAILABLE" + vbCrLf EndIf If BITAND(lcDigitPulseDetect,lvLineCaps) Then thisform.TextLineCaps.Value = thisform.TextLineCaps.Value + "Digit pulse detection - OK" + vbCrLf Else thisform.TextLineCaps.Value = thisform.TextLineCaps.Value + "Digit pulse detection - UNAVAILABLE" + vbCrLf End If If BITAND(lcDigitToneDetect,lvLineCaps) Then thisform.TextLineCaps.Value = thisform.TextLineCaps.Value + "Digit tone detection - OK" + vbCrLf Else thisform.TextLineCaps.Value = thisform.TextLineCaps.Value + "Digit tone detection - UNAVAILABLE" + vbCrLf ENDIF .... till and of your code you must perform BITAND()