Tuesday, 24 June 2014

How to expand a particular property in the powershell

When i ran a command Get-CsAdminRole -Identity "SamAccountName of the security group"
If the security group exists and the role is already created in the Lync Infrastructure, i will be able to see below output

Identity: SAMAccountName of the security group
SID: 
IsStandardRole: False
Cmdlets: {Name=Disable-CSUser, Name=Enable-CSUser, Name=Get-CSAdUser, Name=Get-CSUser...}
ConfigScopes: {Site:2}
UserScopes: {OU:ou=Name of the OU,dc=Domain,dc=com...}
Template: CSUserAdministrator

In order to see the complete output instead of three dots, we need to run the below command to expand a particular property

 Get-CsAdminRole -Identity "SamAccountName of the security group" | Select-Object -ExpandProperty userscopes


Thursday, 19 June 2014

Decommission of Lync Servers

Before you decommission a deployment

  • Provide users with sufficient notice to ensure that they can plan for the down time.
  • Deactivate the server roles on the weekend or holiday, or during other off-peak hours.
  • Disable monitoring in System Center Operations Manager or third-party monitoring system
The following checklist defines the phases of the decommissioning process in the order in which we strongly recommend that you perform the tasks:

Phase 1: Disable all users that are enabled for Lync Server

You can move existing users to a different Lync Pool or you can remove the users if the accounts are no longer needed

Phase 2: Delete all conference directories

Get-CsConferenceDirectory (This command will provide the list of conference directories and associated Lync Pool

You can find the Identity of the Lync Pool for which you are decommissioning

For eg. Remove-CsConferenceDirectory -Identity 2 -Force

If you want to move the directory, you can run the below command

For eg. Move-CsConferenceDirectory -Identity 2  -Target <DestinationServerPoolFqdn> -Force

Phase 3: Remove Voice Components as needed:

Delete all Contact objects enabled for Lync Server Enterprise Voice features by using Lync Server Management Shell.
If the Lync Server 2010 response groups have been migrated to a Lync Server 2013 deployment, do not remove the contact objects of the migrated response groups. If response groups have been migrated, skip the document “Remove Response Group Service Workflow Contact Objects” that is listed in the “Documentation” column. For more information, see http://technet.microsoft.com/en-us/library/jj204854.aspx.
Remove Enterprise Voice routes by using Lync Server Control Panel.
Remove all Call Park orbits by using Lync Server Control Panel.
Remove all tables for Enterprise Voice unassigned phone numbers.
Back up the Location Information service database.
Back up the custom music on hold file.
Delete Enterprise Voice routes.
Reassign the public switched telephone network (PSTN) gateway.

Phase 4: Confirm that the Front End Server or pool is empty.
Phase 5: Run the Remove Deployment Wizard in Topology Builder.
Phase 6: Publish the finalized topology by using Lync Server Management Shell.
Phase 7: Verify that replication is complete by using Lync Server Management Shell.
Phase 8: Remove local component files on each server by using the Deployment Wizard.
Phase 9: Publish a final, empty topology using the FinalizeUninstall parameter of Publish-CsTopology cmdlet.
Phase 10: Remove all SQL Server databases, instances, and the Central Management store by using Lync Server Management Shell.
Phase 11: (Optional) Remove any prerequisite software from the Front End Server.
Phase 12: (Optional) Remove any local groups that remain on the Front End Server.


Sunday, 9 February 2014

Finding Out Which Lync Pool Servers a User is Associated With, and the Preferred Connection Order

We can find out which servers the user is associated with and the preferred order that the client will connect using the following in the Lync Management Shell:

Get-CsUserPoolInfo -Identity 'sip:testuser01@mylab.local' | Select-Object -ExpandProperty PrimaryPoolMachinesInPreferredOrder | Format-List MachineId,Fqdn


Wednesday, 5 February 2014

Error opening file for writing wireshark

During the installation of Wire Shark received below error

Click Abort to stop the installation,

Retry to try again, or

Ignore to skip this file.
---------------------------
Abort Retry Ignore 

To resolve the issue, You need to Install the Wire Shark by Run As Administrator. Using this you will be able to successfully install the Wire Shark in your machine to capture the network packets.

Tuesday, 4 February 2014

Lync Users from child domain are unable to communicate with Federated users

Issue: Internal users are unable to communicate with federated partners

Both parties use Open Federation. So, I have checked the UCCAPI logs after reproducing the issue.

Below is log reference

02/02/2014|20:28:56.359 D14:218 INFO  :: Data Received - *.*.*.*:5061 (To Local Address: *.*.*.*:63616) 765 bytes:
02/02/2014|20:28:56.359 D14:218 INFO  :: SIP/2.0 500 The server encountered an unexpected internal error
Proxy-Authentication-Info: Kerberos qop="auth", opaque="B65AC651", srand="38DAC634", snum="19", rspauth="040401ffffffffff0000000000000000d56cb1294aaddd51faf2098f", targetname="sip/*.domain.com", realm="SIP Communications Service", version=4
From: "TestUser"<sip:TestUser@Childdomain.com>;tag=e5eb8b9937;epid=9d9ec06d9b
To: <sip:FederatedUser@hp.com>;tag=07BCF4D13256B81D79E9A68DC93E4672
Call-ID: e8cdcc10ae654253a16910ec43813f5e
CSeq: 1 SUBSCRIBE
Via: SIP/2.0/TLS 10.160.8.134:63616;ms-received-port=63616;ms-received-cid=18C1F00
ms-diagnostics: 1008;reason="Unable to resolve DNS SRV record";domain="Child Domain.com";source="sip.domain.com"
Server: RTC/4.0
Content-Length: 0



02/02/2014|20:28:56.359 D14:218 INFO  :: End of Data Received - *.*.*.*:5061 (To Local Address: *.*.*.*:63616) 765 bytes

To resolve the issue CNAME & SRV record should be created

CNAME record to be created for Childdomain.com, Value: AccessEdgeFQDN
Federation record to be created in Public DNS
_sipfederationtls._tcp.childdomain.com 86400 IN SRV 0 0 5061 sip.childdomain.com






How do i know to which Front End Server my Lync Client registered

If you have multiple Front End Servers, your account will be randomly homed to one of them. Use the below command to retrieve the list of servers in order that a user will attempt to try to login

Get-CsUserPoolInfo -Identity 'sip:Firstname.Lastname@domain.com' | Select-Object -ExpandProperty PrimaryPoolMachinesInPreferredOrder | Format-List MachineId,Fqdn

Lync Server uses a hash algorithm to determine which front end server the client will primarily connect to, and also the order of failover for every front end server in the pool. This will ensure that all clients from the same user will consistently connect to the same front end server and in turn connect to the same registration database. The hash algorithm is based on the maximum number of servers in the pool (10). This will help ensure that users are evenly spread across all available front end servers in a pool. The maximum number of servers is used to ensure that hash values never need to be recomputed with the addition or removal of servers to or from the pool.

Refer: DNS Load Balancing