{"id":676,"date":"2023-08-25T13:11:22","date_gmt":"2023-08-25T12:11:22","guid":{"rendered":"https:\/\/van-daag.nl\/?p=676"},"modified":"2023-08-25T15:52:08","modified_gmt":"2023-08-25T14:52:08","slug":"prefill-peterconnects-toolbar","status":"publish","type":"post","link":"https:\/\/van-daag.nl\/?p=676","title":{"rendered":"Prefill PeterConnects Toolbar"},"content":{"rendered":"\n<p>In the beginning we had a PHP Website to make xml files for prefilling the PCA toolbar.<br>The site use LDAP connection. Due to security it is changed to LDAPS. So I needed to build something to to do the same but then with LDAPS connection.<br>I could change the PHP code, but the code was old, and I&#8217;m not used PHP code.<\/p>\n\n\n\n<p>On the server that I use, Domain tools are installed.<\/p>\n\n\n\n<p>On the Script location this is how my directory is build<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"108\" height=\"125\" src=\"https:\/\/i0.wp.com\/van-daag.nl\/wp-content\/uploads\/2023\/08\/image-8.png?resize=108%2C125&#038;ssl=1\" alt=\"\" class=\"wp-image-678\"\/><\/figure>\n\n\n\n<p>In the script, it downloads the XML files from the PeterConnects server and place them in XMLIN<\/p>\n\n\n\n<p>In the XMLOUT directory are the files that you manual need to put on the PeterConnects server.<\/p>\n\n\n\n<p>BACKUP Directory. Here are all backups of the XMLOUT files. When running script, first it makes a backup of the XMLOUT files. Then the rest.<\/p>\n\n\n\n<p>In the Config.txt file is how you would like the filling. This is per line same in the toolbar. Have the departments together<br>PHONE;NAME;DEPARTMENT<br>xxx;van der Meer, Daag;ICT<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Now the script:<br>Row 15: Add\/Change Servername<br>Row 20: Add\/Change Domain Search location of the users.<br>Row 21: Add\/Change Full Domain name.<\/p>\n\n\n\n<p>I Always run this script manual, but it is possible to automate it. Also to upload it back to the PeterConnects server and Restart PeterConnects services to activate the XML&#8217;s.<\/p>\n\n\n\n<pre title=\"Start.ps1\" class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell line-numbers\">#######################################\n#### Created By Daag van der Meer\n#### 16-10-2020 Finished\n#####################################\n\n\n\n\n# Determine script location for PowerShell\n$ScriptDir = Split-Path $script:MyInvocation.MyCommand.Path\n$ExportDir = \"$ScriptDir\\XMLOUT\\\"\n$ImportDir = \"$ScriptDir\\XMLIN\\\"\n$BackupDir = \"$ScriptDir\\BACKUPS\\\"\n$date = (Get-Date).ToString('yyyyMMddHHmmss')\n$PeterConnectsserver = \"\\\\&lt;SERVER&gt;\\c$\\Program Files\\PeterConnects\\Data\\Toolbar\\*.*\"\n$ZIP = \"Backup\"+$date+\".zip\"\n$BackupLoc = \"$ScriptDir\\BACKUPS\\\"+$ZIP\n$Powershell = \"$ScriptDir\\Start.ps1\"\n$Config = \"$ScriptDir\\config.txt\"\n$DomainSearch = \"OU=xxx,DC=xxx,DC=xxx,DC=xxx\"\n$UPNDC = \"@xxx.xxx.xxx\" # This is the domain DNS\n\n##\n## BACKUP Old XML files\nCompress-Archive -Path $ImportDir,$Powershell, $Config -DestinationPath $BackupLoc\n#######\n### Delete Current XML\nGet-ChildItem -Path $ImportDir -Include *.* -Recurse | foreach { $_.Delete()}\n\n####\n##Download latest XML's\nCopy-Item $PeterConnectsserver -Destination $ImportDir\n\nfunction get_uniqueID{\n   Param($unique_ID)\n\n\n\t\t$IDcnt = $IDcnt+1;\n        $i+1\n\n\t\t            $ordercnt = $ordercnt+1;\n\n}\n\n########\n## Clean Export folder\n########\nGet-ChildItem -Path $ExportDir -Include *.* -Recurse | foreach { $_.Delete()}\n\nGet-ADUser -Filter * -properties displayName,sAMAccountName,ipphone,info,department -SearchBase $DomainSearch | Where-Object {$_.ipphone -ne $null}  |\n\nForEach-Object {\n\n           $displayName = $_.displayName\n           $userPrincipalName2 = $_.sAMAccountName\n           $userPrincipalName = $userPrincipalName2+$UPNDC\n           $ipphone = $_.ipphone\n           $info = $_.info\n           $department = $_.department\n\n$i = 0\n$IDcnt = 0;\n$ordercnt = 0;\n$uniqueID_incr = 1           \n\n\n\n\n$uniqueID_base = 20000 * $ipphone\n$uniqueID = $uniqueID_base\n\n\n$NEW_XML = $ExportDir + \"Config_\" +$userPrincipalName+\".xml\"\n$ORG_XML = $ImportDir + \"Config_\" +$userPrincipalName+\".xml\"\n\n$aftersales = $uniqueID_base + $uniqueID_incr - 1\n$dealerdevelopment = $uniqueID_base + $uniqueID_incr - 2\n$directie = $uniqueID_base + $uniqueID_incr - 3\n$finance = $uniqueID_base + $uniqueID_incr - 4\n$groepen = $uniqueID_base + $uniqueID_incr -  5\n$ICT = $uniqueID_base + $uniqueID_incr - 6\n$marketing = $uniqueID_base + $uniqueID_incr - 7\n$mijngroep = $uniqueID_base + $uniqueID_incr - 8\n$overig = $uniqueID_base + $uniqueID_incr - 9\n$sales = $uniqueID_base + $uniqueID_incr - 10\n$self = $uniqueID_base + $uniqueID_incr - 11\n$Gemistegesprekken = $uniqueID_base + $uniqueID_incr - 12\n\n\n\n\n\n$XMLTESTPATH = Test-Path $ORG_XML\n\nIf ($XMLTESTPATH -eq $True) {\n\n$SELECTSTRING = Select-String -Pattern '&lt;ToolbarUserConfig ID=\"[0-9][0-9][0-9][0-9]*\"&gt;' $ORG_XML | % { $_.Matches } \n$toolbar_id = $SELECTSTRING -replace '&lt;ToolbarUserConfig ID=\"','' -replace '\"&gt;','' \n#Write-Host $ReplSELECTSTRING\n\n     # Create the XML File Tags\n        $enc = New-Object System.Text.UTF8Encoding($True)\n\n\n      \n     $XmlWriter = New-Object System.Xml.XmlTextWriter($NEW_XML,$enc)\n\n     $xmlWriter.Formatting = 'Indented'\n    \n\n\n     $xmlWriter.WriteStartDocument()\n    \n     $xmlWriter.WriteStartElement('ToolbarUserConfig')\n     $XmlWriter.WriteAttributeString('ID', $toolbar_id)\n     #$xmlWriter.WriteStartElement('WebApplication')\n        $xmlWriter.WriteStartElement('UserInfo')\n            $xmlWriter.WriteElementString('PcaUniqueId',$ipphone)\n            $xmlWriter.WriteElementString('UserDomain',$userPrincipalName)\n            $xmlWriter.WriteElementString('Label', $displayName)\n            $xmlWriter.WriteElementString('LineNr', $ipphone)\n            $xmlWriter.WriteElementString('ShowLineNr', $ipphone)\n            $xmlWriter.WriteStartElement('TenantPrefix')\n            $xmlWriter.WriteEndElement()\n            $xmlWriter.WriteElementString('ShowLineNumbers', 'true')\n            $xmlWriter.WriteStartElement('ColumnOffsets')\n            $xmlWriter.WriteEndElement()\n            $xmlWriter.WriteElementString('OnHotkey', 'DialDirect')\n            $xmlWriter.WriteElementString('Hotkey', 'CTRL-SHIFT B')\n            $xmlWriter.WriteElementString('EnableClipboardMonitor', 'true')\n            $xmlWriter.WriteElementString('OnInboundCall', 'NoNotify')\n            $xmlWriter.WriteElementString('ShowPopupInboundCall', 'WhileRinging')\n            $xmlWriter.WriteElementString('UrlSetName', 'TELEFOONLIJST')\n            $xmlWriter.WriteElementString('ShowMonitorsGrouped', 'true')\n            $xmlWriter.WriteElementString('FollowOwnMaGroup', 'false')\n            $xmlWriter.WriteElementString('MaDefaultGroup', $mijngroep)\n            $xmlWriter.WriteElementString('EnableMultipleColumns', 'false')\n            $xmlWriter.WriteElementString('ShowEmptyGroups', 'false')\n            $xmlWriter.WriteElementString('ContactClickAction', 'Dial')\n            $xmlWriter.WriteElementString('ContactSingleClick', 'false')\n            $xmlWriter.WriteElementString('ShowServiceDeskQueue', 'false')\n            $xmlWriter.WriteElementString('EnableAnswerHotkey', 'false')\n            $xmlWriter.WriteElementString('EnableAnswerHotkeyWhenFocussed', 'true')\n            $xmlWriter.WriteElementString('AnswerHotkey', 'NULL VK_0')\n            $xmlWriter.WriteElementString('AnswerHotkeyWhenFocussed', 'NULL m')\n            $xmlWriter.WriteElementString('PickupOnPhonePickup', 'false')\n            $xmlWriter.WriteElementString('LanguageCode', 'Dutch')\n            $xmlWriter.WriteElementString('TbQueueCallRing', 'OnPhone')\n            $xmlWriter.WriteElementString('OnTelURI', 'Disabled')\n        $xmlWriter.WriteEndElement()\n\n\n\n        ##### Start of MonitoredUSers\n        $xmlWriter.WriteStartElement('MonitoredUsers')\n\nForeach ($line in get-Content $Config)\n{\n$Split = $line.split(\";\")\n$ConfigPhone = $Split[0]\n$ConfigName = $Split[1]\n$ConfigDepartment = $Split[2]\n\n#Write-host $ConfigPhone\n\nIf ($ConfigDepartment -like \"Directie\")\n    {$Department = $directie\n    }\nIf ($ConfigDepartment -like \"Sales\")\n    {$Department = $sales\n    }\nIf ($ConfigDepartment -like \"After Sales\")\n    {$Department = $aftersales\n    }\nIf ($ConfigDepartment -like \"DealerDevelopment\")\n    {$Department = $dealerdevelopment\n    }\nIf ($ConfigDepartment -like \"Finance\")\n    {$Department = $finance\n    }    \nIf ($ConfigDepartment -like \"Marketing\")\n    {$Department = $marketing\n    }\nIf ($ConfigDepartment -like \"ICT\")\n    {$Department = $ICT\n    }    \nIf ($ConfigDepartment -like \"Overig\")\n    {$Department = $overig\n    }\nIf ($ConfigDepartment -like \"Groepen\")\n    {$Department = $groepen\n    }            \n\n\n    \n\n           $xmlWriter.WriteStartElement('MonitoredUser')\n            $ordercnt = $ordercnt+1\n            $i++\n            $uniqueID = $uniqueID + $i\n            $XmlWriter.WriteAttributeString('ID', ($uniqueID))\n                $xmlWriter.WriteStartElement('UserId')\n                $XmlWriter.WriteAttributeString('IdType', 'PrimaryPhoneNumber')\n                $XmlWriter.WriteAttributeString('ID', $ConfigPhone)\n                $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteStartElement('MonitorInfo')\n                    $xmlWriter.WriteElementString('PcaUniqueId', $ConfigPhone)\n                    $xmlWriter.WriteElementString('IdGroup', $Department)\n                    $xmlWriter.WriteElementString('Label', $ConfigName)\n                    $xmlWriter.WriteElementString('Order', $ordercnt)\n                    $xmlWriter.WriteElementString('LastUsedMsgType', 'Unknown')\n                    $xmlWriter.WriteElementString('Hidden', 'false')\n                    $xmlWriter.WriteElementString('ShowLineNr', $ConfigPhone)\n                $xmlWriter.WriteEndElement()\n            $xmlWriter.WriteEndElement()\n    }        \n\n \n\n\n        $xmlWriter.WriteEndElement()    ##### End of MonitoredUsers\n\n\n        ##### Start of MonitoredUsersGroups\n        $xmlWriter.WriteStartElement('MonitoredUsersGroups')\n\n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                    $XmlWriter.WriteAttributeString('ID', $self)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Self')\n                        $xmlWriter.WriteElementString('Order', '1')\n                        $xmlWriter.WriteElementString('GroupType', 'Self')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'NotHidden')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n           # $xmlWriter.WriteEndElement()\n            \n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $mijngroep)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Mijn Groep')\n                        $xmlWriter.WriteElementString('Order', '2')\n                        $xmlWriter.WriteElementString('GroupType', 'MaOwnGroup')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'All')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n\n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $directie)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Directie')\n                        $xmlWriter.WriteElementString('Order', '3')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n\n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $sales)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Sales')\n                        $xmlWriter.WriteElementString('Order', '4')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n\n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $aftersales)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Ownership Experience')\n                        $xmlWriter.WriteElementString('Order', '5')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n            \n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $dealerdevelopment)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Retail Management')\n                        $xmlWriter.WriteElementString('Order', '6')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n\n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $finance)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Finance')\n                        $xmlWriter.WriteElementString('Order', '7')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n\n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $marketing)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Marketing')\n                        $xmlWriter.WriteElementString('Order', '8')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n            \n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $ICT)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'ICT')\n                        $xmlWriter.WriteElementString('Order', '9')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n            \n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $overig)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Overig')\n                        $xmlWriter.WriteElementString('Order', '10')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n            \n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $groepen)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Groepen')\n                        $xmlWriter.WriteElementString('Order', '11')\n                        $xmlWriter.WriteElementString('GroupType', 'Other')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'None')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n\n            $xmlWriter.WriteStartElement('MonitoredUsersGroup')\n                $XmlWriter.WriteAttributeString('ID', $Gemistegesprekken)\n                    $xmlWriter.WriteStartElement('GroupInfo')\n                        $xmlWriter.WriteElementString('Label', 'Gemiste gesprekken')\n                        $xmlWriter.WriteElementString('Order', '12')\n                        $xmlWriter.WriteElementString('GroupType', 'MissedCalls')\n                        $xmlWriter.WriteElementString('GroupBgColor', '65536')\n                        $xmlWriter.WriteElementString('ButtonBgColor', '65536')\n                        $xmlWriter.WriteElementString('ShowMembers', 'All')\n                        $xmlWriter.WriteElementString('Public', 'false')\n                    $xmlWriter.WriteEndElement()\n                $xmlWriter.WriteEndElement()\n            $xmlWriter.WriteEndElement()\n\n\n     $xmlWriter.WriteEndElement()\n     $xmlWriter.WriteEndDocument()\n     $xmlWriter.Flush()\n     $xmlWriter.Close()\n\n\n\n\n$a = '&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;'\n$b = '&lt;?xml version=\"1.0\" encoding=\"UTF-8\" ?&gt;'\n\n((Get-Content $NEW_XML) -replace [regex]::Escape($a), $b ) | Set-Content $NEW_XML\n\n\n\n\n}\n$TestPath = Test-Path $ORG_XML\nIf ($TestPath -eq $False)\n{\nWrite-host \"No XML for $displayName and has PhoneNumber:$ipphone\" -ForegroundColor red\n\n\n}\n\n\n}\n\n\nGet-Content -Path $ExportDir\\*.xml -OutBuffer 1000000000 | Select-String \"&lt;MonitoredUser ID=\" -List |Out-File $ScriptDir\\peter.txt\n$Inhoud = Get-Content $ScriptDir\\peter.txt | Group-Object | Where-Object { $_.Count -gt 1 } | Select -ExpandProperty Name\nWrite-Host $Inhoud\nIf ($Inhoud -ne ''){\n\nWrite-host \"XML Is not working. Duplicate ID numbers\" -ForegroundColor Yellow\n$a = new-object -comobject wscript.shell\n$b = $a.popup(\u201cWARNING XML is not working in peter Connect. Duplicated ID\u201c,0,\u201dWarning\u201d,1)\n\n\n}\t\nRemove-Item $ScriptDir\\peter.txt\n[void](Read-Host 'Press Enter to continue\u2026')\n\t\n[void]($Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown'))<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>In the beginning we had a PHP Website to make xml files for prefilling the PCA toolbar.The site use LDAP connection. Due to security it is changed to LDAPS. So I needed to build something to to do the same but then with LDAPS connection.I could change the PHP code, but the code was old, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[53,54,55,11],"tags":[],"class_list":["post-676","post","type-post","status-publish","format-standard","hentry","category-blogs","category-cucm","category-peterconnects","category-powershell-script"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/van-daag.nl\/index.php?rest_route=\/wp\/v2\/posts\/676","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/van-daag.nl\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/van-daag.nl\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/van-daag.nl\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/van-daag.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=676"}],"version-history":[{"count":6,"href":"https:\/\/van-daag.nl\/index.php?rest_route=\/wp\/v2\/posts\/676\/revisions"}],"predecessor-version":[{"id":684,"href":"https:\/\/van-daag.nl\/index.php?rest_route=\/wp\/v2\/posts\/676\/revisions\/684"}],"wp:attachment":[{"href":"https:\/\/van-daag.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=676"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/van-daag.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=676"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/van-daag.nl\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=676"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}