Enabling users for Skype for Business (Lync)

The following code sample enables a user for Skype for Business.

PowerShell
[Reflection.Assembly]::LoadWithPartialName("Softerra.Adaxes.Adsi")

# Connect to the Adaxes service
$ns = New-Object("Softerra.Adaxes.Adsi.AdmNamespace")
$service = $ns.GetServiceDirectly("localhost")

# Bind to the user
$userDN = "CN=John Smith,CN=Users,DC=domain,DC=com"
$user = $service.OpenObject("Adaxes://$userDN", $null, $null, 0)

# Enable the user for Skype for Business
$user.LyncEnable("lyncserver.domain.com", "sip:jsmith@domain.com",
    "ADM_LYNCTELEPHONYMODE_PC2PC", $null, $null)
C#
using Softerra.Adaxes.Interop.Adsi;
using Softerra.Adaxes.Adsi;
class Program
    {
        static void Main(string[] args)
    {
        // Connect to the Adaxes service
        AdmNamespace ns = new AdmNamespace();
        IAdmService service = ns.GetServiceDirectly("localhost");

        // Bind to the user
        const string userPath = "Adaxes://CN=John Smith,CN=Users,DC=domain,DC=com";
        IADs user = (IADs)service.OpenObject(userPath, null, null, 0);

        // Enable the user for Skype for Business
        lyncOps = (IAdmLyncOps)user;
        lyncOps.LyncEnable("lyncserver.domain.com", "sip:jsmith@domain.com",
            ADM_LYNCTELEPHONYMODE_ENUM.ADM_LYNCTELEPHONYMODE_PC2PC, null, null);
    }
}

See also