Audio Test Service

Seit Lync 2010 gibt es auch einen "TestService" für Audio.

Funktion für den Anwender

Suchen Sie einfach mal nach dem "Audio"-Dienst. Beim Lync Client gibt es auf der Telefonkarteikarte auch einen "Check Call"-Button:

Sie können den Dienst einfach anrufen und die Stimme bittet Sie eine Nachricht zu hinterlassen. Diese Nachricht wird ihnen dann von Lync im Anschluss wieder vorgespielt. Sie hören also ihre eigene Nachricht und können so einen "Ende zu Ende"-Audiotest durchführen und ihre Sprachqualität überprüfen.

Ich nutze den Dienst auch, wenn ich in einem unbekannten Netzwerk bin und nicht wirklich weiß, ob die Audioverbindung überhaupt technisch zustande kommen kann und ob die Bandbreite ausreichend ist. Wenn der Call zum Test Service "in Ordnung" ist, dann kann ich auch davon ausgehen, dass jeder Anruf in ein Telefonnetz funktioniert.

Konfiguration

Der Audio test Service wird bei der Installation des Pool automatisch mit angelegt. Sie können die aktuellen Dienste per PowerShell einsehen und sogar ändern:

Hinter den Kulissen

Der Audio Test Service ist eine UCMA-Applikation, die Bestandteil des Frontend-Servers ist. Sie funktioniert also auch dann, wenn sie gar keine Telefonie oder einen Mediation Server eingerichtet haben. Wer mit LDIFDE sucht, wird den Application Contact sehr schnell gefunden haben. Wobei es in der Regel gleich mehrere dieser Dienste gibt. Schließlich möchte man ja dafür gewappnet seit, dass mehrere Personen so einen Anruf ausführen. Folgende LDAP-Abfrage führt zum Ziel:

(msRTCSIP-OwnerUrn=urn:application:testbot)

Allerdings müssen Sie die Suche entweder gegen einen global Catalog machen oder die Configuration Partition fragen. Eine Ausgabe könnte dann wie folgt aussehen:

dn: CN={xxx},CN=Application Contacts,CN=RTC Service,CN=Services,CN=Configuration,DC=netatwork,DC=de
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: contact
cn: {xxx}
distinguishedName: 
 CN={xxx},CN=Application Contacts,CN=RTC Servi ce,CN=Services,CN=Configuration,DC=netatwork,DC=de
instanceType: 4
displayName: Audio Test Service
proxyAddresses:  sip:RtcApplication-xxxxx@netatwork.de
name: {xxx}
objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=netatwork,DC=de
msRTCSIP-ApplicationOptions: 5
msRTCSIP-OwnerUrn: urn:application:testbot
msRTCSIP-FederationEnabled: TRUE
msRTCSIP-InternetAccessEnabled: TRUE
msRTCSIP-DeploymentLocator: SRV:
msRTCSIP-ApplicationPrimaryLanguage: 0
msRTCSIP-PrimaryUserAddress: sip:RtcApplication-xxxx@netatwork.de
msRTCSIP-OptionFlags: 385
msRTCSIP-UserEnabled: TRUE
msRTCSIP-ApplicationDestination:  CN={xxx},CN=Trusted Services,CN=RTC Service,CN=Services,CN=Configuration,DC=netatwork,DC=de
msRTCSIP-UserPolicies: 0=838482738
msRTCSIP-PrimaryHomeServer:  CN=Lc Services,CN=Microsoft,CN=1:12,CN=Pools,CN=RTC Service,CN=Services,CN=Configuration,DC=netatwork,DC=de

Fun mit dem Audio Testservice

Genau genommen ist der Audio Test Service nur ein "Application Contact", der in auch im Lync Adressbuch auftaucht. Und wer sich das Objekt anschaut, wird auch das ein oder andere LDAP-Feld können.

Hinweis:
Direkte Änderungen an Kontaktobjekten sollten Sie immer gut dokumentieren und erst in einem Testfeld durchspielen.

  • Displayname
    Dies ist der angezeigte Name. Wem also "Audio Test Service" missfällt, kann den Wert auch ändern. Es dauert aber ein bisschen, bis Lync ein neues Adressbuch generiert und der Client dies herunter geladen hat.
  • MSRTC-Sipline
    In diesem Feld stehen bei Anwendern in der Regel die Rufnummer. Beim Audio Test Service ist dieses Feld leer. In der Beschreibung von Set-CsAudioTestServiceApplication (http://technet.microsoft.com/en-us/library/gg398907.aspx) steht, dass dieses Feld nicht genutzt wird. Wenn Sie aber dennoch eine TelURI eintragen, dann können Sie den Audio Test Service sogar von einem beliebigen Telefon anrufen.
  • Thumbnailphoto
    Auch dieses Attribut gibt es an dem Kontaktobjekt. Ich habe es testweise sogar gesetzt und tatsächlich erscheint dann das andere Bild. Allerdings ist das nur ein kurzes Aufflackern, bis der Client dann das Bild wieder Ausblendet. Ich vermute er nutzt dann ein anderes Bild, was er per SIP provisioniert bekommt. Wäre interessant, das nachzuschauen

Sie sehen, dass auch solche Objekte in vielen Dingen den normalen Lync Objekten folgen.

"Vergessene Dienste"

Wer aber schon auf der Suche ist und einige Migrationen hinter sich hat wird vielleicht auch folgende Bild sehen:

 

Das bedeutet, dass von früheren Installationen und Pools noch der ein oder andere ApplicationContact verblieben ist und nicht gelöscht wurde. Sie können diese mit ADSIEdit gut daran erkennen, dass der HomeServer auf einen "gelöschten Pool verweist. hier mal einen partiellen Export:

dn: CN={f7535060-80b3-4797-8487-c155156cc663},CN=Application Contacts,CN=RTC Service,CN=Services,CN=Configuration,DC=netatwork,DC=de
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: contact
msRTCSIP-ApplicationOptions: 5
msRTCSIP-OwnerUrn: urn:application:testbot
msRTCSIP-OptionFlags: 384
msRTCSIP-UserEnabled: TRUE
msRTCSIP-ApplicationDestination: 
 CN={0a65dcfc-3db1-4cf0-8cae-98b05f74fab9}\0ADEL:373180fb-aa4b-4ded-a4c5-1d3ef0
 1cc639,CN=Deleted Objects,CN=Configuration,DC=netatwork,DC=de
msRTCSIP-UserPolicies: 0=181440183
msRTCSIP-PrimaryHomeServer: 
 CN=Lc Services\0ADEL:2fcb6bca-cd2d-4d9d-af2d-5dcbb41f7e63,CN=Deleted Objects,C
 N=Configuration,DC=netatwork,DC=de

Sowohl die msRTCSIP-ApplicationDestination als auch der msRTCSIP-PrimaryHomeServer verweisen auf einen nicht mehr existenten Pool. Ich hatte mich dann einfach damit beholfen, diese Objekte zu löschen und nach einem Update des Lync Addressbuch war der Spuck dann vorüber. Es gibt ja leider kein "remove-CsAudioTestServiceApplication 

Warnung
Direkte Änderungen mit ADSIEDIT haben immer ein Restrisiko.

Weitere Links