Sure, here is how to connect:
[size=8pt][color=Green]
Public Function TConnect() As Boolean
    Call TConnection.ConfigureAddp(10, 20, addpTraceFull)
    Call TConnection.EnableAddp(True)
    ' Control connection parameters
    If IsEmpty(Me.TServer) = True Or IsEmpty(Me.TPort) = True Then    
        ' Log.WriteAs getLogFileName(), "class.TConnect", -1, -1, "Connection parameters missing."
        TConnect = False
        Exit Function        
    End If    
    ' Log.WriteAs getLogFileName(), "class.TConnect", 1, 0, "THost is " + Me.TServer + " @ " + Me.TPort    
    If frmTelephony.TConnection.TConnect() = False Then    
        ' Log.WriteAs getLogFileName(), "class.TConnect", -1, -1, "Could not connect to TServer"
        TConnect = False
        Exit Function        
    End If    
    ' Log.WriteAs getLogFileName(), "class.TConnect", 1, 0, "Connecting to TServer..."
    TConnect = True
End Function[/color][/size]
Here is how I would register:
[size=8pt][font=Verdana][font=Verdana][color=Green]Private Sub TConnection_TEventLinkConnected(EventInfo As DesktopToolkitX.TEventInfo)
    numOfRegisteredQueues = 0    
    Call myWatch.setCallResult(EventLinkConnected, "", "Event", 0)    
    If myWatch.numOfChannels = 0 Then    
        ' Log.WriteAs getLogFileName(), "TConnection.TEventLinkConnected", -1, 0, "Because channels (DNs) not set and initialized, main program couldn't continue."        
        If Me.TConnection.TDisconnect() = False Then        
            ' Log.WriteAs getLogFileName(), "TConnection.TEventLinkConnected", -1, 0, "Couldnt Disconnect from TServer"            
        End If
        Exit Sub        
    End If    
    Dim rs              As TStatus
    Dim i               As Integer    
' if you are watching more than one DN, numOfChannels would be 2 

 <-- Nortel for example 

    For i = 1 To myWatch.numOfChannels     
        ' Log.WriteAs getLogFileName(), "TConnection.TEventLinkConnected", 1, 1, "Processing " + Trim(Str(i))        
        Call Me.TExtension(i).TSetRegisterMode(ModeMonitor)
        rs = Me.TExtension(i).TRegister()        
        If rs = T_FAIL Then        
            ' Log.WriteAs getLogFileName(), "TConnection.TEventLinkConnected", -1, 0, "Couldnt register Channel " + Trim(Str(i))        
        Else        
            ' Log.WriteAs getLogFileName(), "TConnection.TEventLinkConnected", 1, 0, "Registering Channel " + Trim(Str(i))            
        End If    
    Next i    
End Sub[/color][/font][/font][/size]
Ummm... What else? It is pretty straight-forward really...
Here is how you would query for agent status on that DN, because you would not want to try to login agent who is already logged in, right?
[size=8pt][color=Green]Public Sub Get_DN_Info(Index As Integer, dn As String)   
   Dim rs          As TStatus
   rs = TExtension(Index).TQueryAddress(AddressInfoDNStatus)
End Sub
[/color][/size]
Here is how you would get Attach-Data:
[color=Green][size=8pt]Private Sub TExtension_TEventAttachedDataChanged(Index As Integer, EventInfo As DesktopToolkitX.TEventInfo)
    Dim i           As Integer
    Dim sName       As String
    Dim sValue      As String
    Dim connId      As String
    Dim AgentId     As String    
    connId = vbNullString
    connId = EventInfo.connId.GetConnIDAsStr()
    AgentId = vbNullString
    AgentId = EventInfo.AgentId    
    For i = 0 To EventInfo.userData.GetCount - 1    
        sName = vbNullString
        sValue = vbNullString        
        sName = EventInfo.userData.Get(i).Key        
        If EventInfo.userData.Get(i).Type = CKVTypeNum Then        
            sValue = Str(EventInfo.userData.Get(i).NumValue)            
        Else        
            sValue = EventInfo.userData.Get(i).StringValue            
        End If        
        Call myWatch.setUserData(Index, connId, AgentId, sName, sValue)    
    Next i    
End Sub
[/size][/color]
Please tell me if you need anything else 

Genesys ActiveX is really a breeze to program and actually works enough to make it enjoyable.  They provide you with ActiveX sample which pretty much is self-explanatory. 
If you have a question - feel free to ask 

Vic