Der Beitrag Remove Delegate from SQL Database erschien zuerst auf .
]]>We know that we have sometimes Problem with Delegates, we can´t read / Change / remove with sefautil.exe.
I create a Script for this issue, this is very helpful
If you have more delegate under „Manage Calls from:“ and no other Chance to remove it, you can use this small script.
Example: Get-SFBDelegate -DelegatorSip test1@contoso.com -DelegateSIP Test2@contoso.com
function Get-SfBDelegate {
Param([Parameter(Mandatory=$True,Position=0)][string]$delegateSIP,
[Parameter(Mandatory=$True,Position=1)][string]$delegatorSIP)
$SFBPools = Get-CsService | sort identity |select identity
$table =@()
foreach ($SFBPool in $SFBPools.identity)
{
$split = $SFBPool.Split(„:“)
$table += @{‚Function‘ = $split[0];’FQDN’=$split[1]}
}
$out = $table.ForEach({[PSCustomObject]$}) | ?{$.Function -match „registrar“} | Group-Object -Property Function
$menu = @{}
$Fqdn = ($out.group | ?{$_.FQDN -match „pool“} | select fqdn -Unique).FQDN
if ($fqdn.Count -gt „1“){
for ($i=1;$i -le $FQDN.count; $i++) {
Write-Host “ $i. $($FQDN[$i-1])“
$menu.Add($i,($FQDN[$i]))
}
}
else{
for ($i=1;$i -le $FQDN.count; $i++) {
Write-Host “ $i. $($FQDN)“
$menu.Add($i,($FQDN[$i]))
}
}
[int]$ans = Read-Host ‚Enter selection‘
$selection = $menu.Item($ans)
$servers = (Get-CsComputer -Pool $selection).identity
###################################################################
#$Servers = (Get-CsComputer | Where-Object -Property Pool -Match $pool | Select-Object identity).identity
$array =@()
foreach ($server in $Servers){
$DelegateQuery = „Select * From rtc.dbo.Resource Where UserAtHost='$delegateSIP
‚“
$DelegateResult= (Invoke-Sqlcmd -ServerInstance $Server\rtclocal -Query $DelegateQuery)
$DelegatorQuery= „Select * From rtc.dbo.Resource Where UserAtHost='$delegatorSIP
‚“
$DelegatorResult= (Invoke-Sqlcmd -ServerInstance $Server\rtclocal -Query $DelegatorQuery)
$resourceID = $DelegatorResult.ResourceId
$DelegationQuery = „select * From [rtc].[dbo].[Delegate] Where DelegatorId = '$resourceID
‚“
$DelegationResult =(Invoke-Sqlcmd -ServerInstance $Server\rtclocal -Query $DelegationQuery)
foreach ($Delegation in $DelegationResult){
$search = $Delegation.DelegateId
$SQLscript = „select * From rtc.dbo.Resource where ResourceId = '$search
‚“
$return= (Invoke-Sqlcmd -ServerInstance $Server\rtclocal -Query $SQLscript)
if ($DelegateResult.ResourceId -notmatch $search){$toRemove = „yes“} else {$toRemove = „no“}
$Subscribs = New-Object psobject -Property @{DelegatorId = $Delegation.DelegatorId;
DelegatorSIP =$DelegatorResult.UserAtHost;
DelegateId = $Delegation.DelegateId;
DelegateSIP =$return.UserAtHost;
FrontendServer = $server;
toRemove = $toRemove}
$array += $Subscribs
}
}
($Global:array = $array)| sort toRemove | ft -a Delegator*, Delegate*, Front*, to*
if (!([string]::IsNullOrEmpty($Global:array))){
$n = „n“
$n = Read-Host -Prompt „Do you like to remove all with property toRemove = yes? Press y = yes, n = no“
if ($n -eq ‚y‘){
foreach ($arr in $array){
if ($arr -match „yes“) {
$removeDelegator = $arr.DelegatorId
$removeDelegate = $arr.DelegateId
$DeleteQuery =“Delete From [rtc].[dbo].[PromptedSubscriber] Where PublisherId = '$removeDelegator
‚ AND SubscriberId = '$removeDelegate
‚
Delete From [rtc].[dbo].[Delegate] Where DelegatorId = '$removeDelegator
‚AND DelegateId = '$removeDelegate
‚“
$server = $arr.FrontendServer+“\rtclocal“
Invoke-Sqlcmd -ServerInstance $server -Query $DeleteQuery -ErrorAction SilentlyContinue
Write-Output „DELETED !!“
$arr | ft -a
}
$SubscriberId | ft -a
}
}
}
else {Write-Host „we dont found Entrys for the delegator: $delegatorSIP and delegate: $delegateSIP „}
}# Remove Delegator in SQL DATABASE end
Der Beitrag Remove Delegate from SQL Database erschien zuerst auf .
]]>Der Beitrag Lync 2013 persistent chat-service stoppt nach 20 minuten erschien zuerst auf .
]]>Log Name: Lync Server
Source: LS Persistent Chat Server
Event ID: 53553
Level: Error
Wenn dieser Fehler Auftritt müssen sie die Konfiguration der „Persistent Chat“ exportieren siehe Befehl 1.
Dann muss die Datenbank neu installiert werden mit dem Parameter -Clean siehe Befehl 2
Als letztes noch die Konfiguration ein wieder importieren. siehe Befehl 3 Verwenden Sie die folgenden Befehle ein:
1. Export-CsPersistentChatData –DbInstance <YourPCInstance> –FileName PCExport.zip, um die Konfiguration in eine Datei zu exportieren.
2. Install-CsDatabase –DatabaseType PersistentChat –SqlServerFQDN <PCServer.Domain.local> –SqlInstanceName <YourPCInstance> –Clean die Persistent Chat DB reinigen.
3. Import-CsPersistentChatData –DbInstance <YourPCInstance> –FileName PCExport.zip, um die Daten zu importieren.
Microsoft veröffentlicht dazu diesen KB-Artikel, um das oben genannte Problem zu beheben.
Der Beitrag Lync 2013 persistent chat-service stoppt nach 20 minuten erschien zuerst auf .
]]>Der Beitrag Skype for Business Resources erschien zuerst auf .
]]>Endlich sind auch die ersten Informationen über Skype for Business „SfB“ da.
Hier sind einige Links für euch
TechNet Documentation: https://technet.microsoft.com/en-us/library/gg398616.aspx
Skype for Business change management and adoption: https://support.office.com/en-us/article/Skype-for-Business-change-management-and-adoption-d8d85da6-52e7-4819-8451-45c103fb5ccb?omkt=en-us&ui=en-US&rs=en-US&ad=US
Skype for Business Protocol Workloads Poster: http://www.microsoft.com/en-us/download/details.aspx?id=46448
Skype for Business Client awareness and readiness resources: https://www.microsoft.com/en-us/download/details.aspx?id=46369
Skype for Business Solutions Catalog: http://partnersolutions.skypeforbusiness.com/solutionscatalog
Skype for Business FAQs: https://products.office.com/en-US/skype-for-business/faqs
TechNet Documentation: https://technet.microsoft.com/en-us/library/gg398616.aspx
Skype for Business change management and adoption: https://support.office.com/en-us/article/Skype-for-Business-change-management-and-adoption-d8d85da6-52e7-4819-8451-45c103fb5ccb?omkt=en-us&ui=en-US&rs=en-US&ad=US
Skype for Business Protocol Workloads Poster: http://www.microsoft.com/en-us/download/details.aspx?id=46448
Skype for Business Client awareness and readiness resources: https://www.microsoft.com/en-us/download/details.aspx?id=46369
Skype for Business Solutions Catalog: http://partnersolutions.skypeforbusiness.com/solutionscatalog
Skype for Business FAQs: https://products.office.com/en-US/skype-for-business/faqs
Wenn ich einen Link vergessen haben sollte, dann last es mich wissen und ich werde ihn hier hinzufügen.
Der Beitrag Skype for Business Resources erschien zuerst auf .
]]>Der Beitrag Remote Call Control mit Skype for Business erschien zuerst auf .
]]>Nach der Installation fällt auf dass der Skype for Business Client das Branding von Skype hat. Eine Funktion die in diesem Skype Branding wegfällt ist "RemoteCallControl". Es ist dennoch möglich mit Skype for Business "Remote Call Control" zu betreiben.
Dazu muss in der ClientPolicy "EnableSkypeUI" auf $false gestellt werden.
Nach einen Neustart des Clients sehen sie wieder die Lync 2013 GUI und RemoteCallControl ist wieder möglich.
Hier ein Auszug von Microsoft Office Blog:
We demonstrate how this is performed for the online service on the show; once you’re logged into the online service via PowerShell, you can use Grant-CsClientPolicy Cmdlet as shown below, to control the experience: Disable Skype user interface (UI) for all users:
Grant-CsClientPolicy -PolicyName ClientPolicyDisableSkypeUI
Enable Skype UI for all users:
Grant-CsClientPolicy -PolicyName ClientPolicyEnableSkypeUI
These Cmdlets will control the UI presented to all users in your Office 365 or Lync Online tenant. There are more options for controlling the experience at an individual user or group level on TechNet.
We demonstrate how this is performed for the online service on the show; once you’re logged into the online service via PowerShell, you can use Grant-CsClientPolicy Cmdlet as shown below, to control the experience: Disable Skype user interface (UI) for all users:
Grant-CsClientPolicy -PolicyName ClientPolicyDisableSkypeUI
Enable Skype UI for all users:
Grant-CsClientPolicy -PolicyName ClientPolicyEnableSkypeUI
These Cmdlets will control the UI presented to all users in your Office 365 or Lync Online tenant. There are more options for controlling the experience at an individual user or group level on TechNet.
If you’re running Lync Server and want to roll out the updated Skype for Business UI to your organization, you can use the Set-CsClientPolicy Cmdlet: Enable Skype UI for all users:
Set-CsClientPolicy -Identity Global -EnableSkypeUI $true
Disable Skype user interface (UI) for all users:
Set-CsClientPolicy -Identity Global -EnableSkypeUI $false
In addition to the options above for selecting between the Skype for Business UI and the Lync UI, we’ve created a number of resources to help with awareness, readiness and adoption. These resources, along with the ability to switch the UI between the two interfaces, will give users the resources they need to be prepared for this change.
In O365 sind folgende ClientPolicys schon angelegt Identity
——–
Global
Tag:ClientPolicyNoSaveIMNoArchivingNoIMURL
Tag:ClientPolicyNoIMURL
Tag:ClientPolicyNoSaveIMNoArchiving
Tag:ClientPolicyNoSaveIMNoArchivingNoIMURLPhoto
Tag:ClientPolicyNoIMURLPhoto
Tag:ClientPolicyNoSaveIMNoArchivingPhoto
Tag:ClientPolicyDefault
Tag:ClientPolicyDefaultPhoto
Tag:ClientPolicyDisableSkypeUI
Tag:ClientPolicyEnableSkypeUI
Mit diesem Befehl könnt ihr für einen Online User die Policy für den Lync-Client 2013 GUI per Powershell setzen
Get-CsOnlineUser <SIP@Adresse> | Grant-CsClientPolicy Tag:ClientPolicyDisableSkypeUI
oder dann für alle
Get-CsOnlineUser | Grant-CsClientPolicy Tag:ClientPolicyDisableSkypeUI
Der Beitrag Remote Call Control mit Skype for Business erschien zuerst auf .
]]>Der Beitrag Skype for Business-Servers kommt!!! erschien zuerst auf .
]]>
Die Veröffentlichung des Skype for Business-Servers folgt am 1. Mai!
Der Beitrag Skype for Business-Servers kommt!!! erschien zuerst auf .
]]>Der Beitrag check your Lync environment erschien zuerst auf .
]]>Damit könnt ihr eure Lync Umgebung Testen!
Im ersten Teil des Scriptes müsst ihr die Variable eintragen
#########################################################################################
# Set Credential and Variable
$Global:UserName1 ="TestUser1" # TestUser1 SamAccountName
$Global:UserName2 ="TestUser2" # TestUser2 SamAccountName
$Global:UserName3 ="TestUser3" # TestUser3 SamAccountName
$Global:UserPW1 = "PW2014!!" # TestUser1 Password
$Global:UserPW2 = "PW2014!!" # TestUser2 Password
$Global:UserPW3 = "PW2014!!" # TestUser3 Password
$Global:LogonDomain = "contoso" # Logon Domain
$Global:TargetPSTNNr = "+123456789" # a Mobil number maybe
$Global:SIPDomain = "contoso.com" # Sip Domain
$Global:Language = "de-DE" # Primary Language
$global:LyncFE01FQDN = "LyncFE01.contoso.com" # Lync Frontend FQDN for SE and EE
$global:LyncFE02FQDN = "LyncFE02.contoso.com" # Lync Frontend FQDN for EE
$Global:isSE = "TRUE" # if Standard Edition type True, If Enterprise edition type false
# CommonAreaPhone Part
$Global:CommonAreaPhoneExt= "short dial" # PhoneExtension
$Global:CommonAreaPhonePIN= "159753" # PIN
$Global:CommonAreaPhoneName= "TestPhone" # SIPName from commonAreaPhone with out SIPDomain
#########################################################################################
Lync_Test_CSLyncInfrastructur.zip
Folgende Test cmdlet von dem Modul Lync sind in dem Modul eingebaut:
# Lync-TestAddressBookService
# Lync-TestAddressBookWebQuery
# Lync-TestAVConference
# Lync-TestCertificateConfiguration
# Lync-TestClientAuth
# Lync-TestComputer
# Lync-TestDialInConferencing
# Lync-TestFederation
# Lync-TestGroupExpansion
# Lync-TestGroupIm
# Lync-TestIM
# Lync-TestKerberosAccountAssignment
# Lync-TestMcxConference
# Lync-TestMcxP2PIM
# Lync-TestMcxPushNotification
# Lync-TestOUPermission
# Lync-TestP2PAV
# Lync-TestPhoneBootstrap
# Lync-TestPresence
# Lync-TestPstnOutboundCall
# Lync-TestPstnPeerToPeerCall
# Lync-TestRegistration
# Lync-TestSetupPermission
# Lync-TestTopology
# Lync-TestTrunkConfiguration
# Lync-TestVoiceUser
# Lync-TestWebApp
# Lync-TestWebAppAnonymous
Der Beitrag check your Lync environment erschien zuerst auf .
]]>Der Beitrag Lync Powershell auf lokalen Computer/Server öffnen! erschien zuerst auf .
]]>hier kannst Du alle Lync Server eintragen, mit den Du Dich verbinden möchtest.
#So kannst du mit Credentials in einem PS-Script arbeiten. Achtung das PW wird mit dem ausführenden Benutzer verschlüsselt und kann nur von diesem gelesen werden.
#Einmalig muss das PW in ein File gespeichert werden
#read-host -AsSecureString | ConvertFrom-SecureString | Out-File "c:Scriptpass.txt"
[string] $MenuOption = "None"
[bool] $HasInternetAccess = ([Activator]::CreateInstance([Type]::GetTypeFromCLSID([Guid]'{DCB00C01-570F-4A9B-8D69-199FDBA5723B}‘)).IsConnectedToInternet)
[string] $Menu = @‘
**********************************
Lync Server 2013 – Remote Powershell Load script
**********************************
Please select an option from the choices below.
Preinstallation steps
========================
1) Fronent Server –> LyncPool01
2) EdgeServer –> Lyncedge01
3) SBA –> SBA01
99)
‚@
$Menu += @‘
99) Exit
Select an option.. [1-99]?
‚@
# Bitte Variablen anpassen
$DomainAccount = <DomainLyncAdminAccount>
$lyncPool = "<FQDN für LyncPool oder lync Frontend>"
$Lyncedge01 = "<FQDN für LyncEdgeServer oder LyncEdgePool>"
$SBA01 = "<FQDN für SBA>"
# Programm
Do {
if ($MenuOption -ne "None") {Write-Host "`nLast command: "$MenuOption -BackgroundColor Yellow -ForegroundColor black}
$MenuOption = Read-Host $Menu
switch ($MenuOption) {
1 { # Fronent Server –> LyncPool01
$username="$DomainAccount"
$pass= cat c:Scriptpass.txt | ConvertTo-SecureString
$credentials = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $pass
$session = New-PSSession -ConnectionURI “https://$lyncPool/OcsPowershell” -Credential $credentials
Import-PsSession $session
}
2 { # EdgeServer –> Lyncedge01
$username="$DomainAccount"
$pass= cat C:UserssplanerDocumentsPowershellpass.txt | ConvertTo-SecureString
$credentials = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $pass
$session = New-PSSession -ConnectionURI “https://$Lyncedge01/OcsPowershell” -Credential $credentials
Import-PsSession $session
}
3 { # SBA –> SBA01
$username="$DomainAccount"
$pass= cat C:UserssplanerDocumentsPowershellpass.txt | ConvertTo-SecureString
$credentials = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $pass
$session = New-PSSession -ConnectionURI “https://$SBA01/OcsPowershell” -Credential $credentials
Import-PsSession $session
}
default {
Write-Host "You haven’t selected any of the available options."
}
}
} while ($MenuOption -ne 99)
Der Beitrag Lync Powershell auf lokalen Computer/Server öffnen! erschien zuerst auf .
]]>Der Beitrag zu einen Lync Server verbinden! erschien zuerst auf .
]]>read-host -AsSecureString | ConvertFrom-SecureString | Out-File "C:Users%userprofil%DocumentsPowershellpass.txt"
dein Passwort in deinem User Verzeichniss abspeichert!! Aber sei vorsichtig solange wie du an deinem PC Angemeldet bist. Kann jeder and diese Datei ran!!!!
#So kannst du mit Credentials in einem PS-Script arbeiten. Achtung das PW wird mit dem ausführenden Benutzer verschlüsselt und kann nur von diesem gelesen werden.
|
Der Beitrag zu einen Lync Server verbinden! erschien zuerst auf .
]]>