\r
-function Get-TravelTimes() {\r
+function Add-Addresses(){\r
+ Param(\r
+ [string]$addressFile = "Addresses.csv",\r
+ [string]$outFile= "Address_Details.csv"\r
+ )\r
+ Copy-Item $outFile "$outFile.backup"\r
+ $addressList = Get-Content $addressFile | ConvertFrom-Csv\r
+ $details = Get-Content $outFile| ConvertFrom-Csv\r
+\r
+ $results = [System.Collections.ArrayList]@()\r
+ $known = [System.Collections.ArrayList]@()\r
+\r
+ $details | ForEach-Object {\r
+ $idx = $results.Add($_)\r
+ $known.Add($_.Address)\r
+ }\r
+ $addressList | ForEach-Object {\r
+ if($known -NotContains $_.Address)\r
+ {\r
+ $idx = $results.Add($_)\r
+ $idx = Write-Host "Aadded " + $_.Address\r
+ }\r
+ }\r
+ $results | Format-Table\r
+ $answer = Read-Host -Prompt "Write updated file? y/N"\r
+ if($answer -Eq "y") {\r
+ $results | Export-Csv -NoTypeInformation -Path $outFile\r
+ Write-Host "Updated $outFile"\r
+ }\r
+}\r
+\r
+\r
+function Add-AddressLocations(){\r
+ Param(\r
+ [string]$outFile= "Address_Details.csv"\r
+ )\r
+ Copy-Item $outFile "$outFile.backup"\r
+ $details = Get-Content $outFile| ConvertFrom-Csv\r
\r
+ $results = [System.Collections.ArrayList]@()\r
+\r
+ $details | ForEach-Object {\r
+ $updated = $_\r
+ if($_.lat -Eq $null)\r
+ {\r
+ Write-Host "Looking up position of " $_.Address\r
+ $coords= Get-MapCoords -Address $_.Address\r
+ $coords | Format-List\r
+ $updated.lat = $coords.lat\r
+ $updated.lon = $coords.lon\r
+ $updated | Format-List\r
+ }\r
+ $idx = $results.Add($updated)\r
+ }\r
+ $results | Format-Table\r
+ $answer = Read-Host -Prompt "Write updated file? y/N"\r
+ if($answer -Eq "y") {\r
+ $results | Export-Csv -NoTypeInformation -Path $outFile\r
+ Write-Host "Updated $outFile"\r
+ }\r
+}\r
+\r
+\r
+function Add-TravelTimes() {\r
+ Param(\r
+ [string]$outFile= "Address_Details.csv"\r
+ )\r
+ $details = Get-Content $outFile| ConvertFrom-Csv\r
\r
}\r
\r
$fuzzyUrl = "https://atlas.microsoft.com/search/fuzzy/json?&api-version=1.0&subscription-key={Your-Azure-Maps-Subscription-key}&language=en-US&query=pizza"\r
\r
+function Invoke-SubKeyCheck {\r
+ if($env:AzMapsSubKey -Eq $null) {\r
+ Write-Error "Please set env:AzMapsSubKey"\r
+ Exit\r
+ }\r
+}\r
+\r
function Get-MapAddress() {\r
param(\r
[string]$address\r
)\r
+ Invoke-SubKeyCheck\r
$subKey = $env:AzMapsSubKey\r
$addyUrl = "https://atlas.microsoft.com/search/address/json?&subscription-key=$subKey&api-version=1.0&language=en-US&query=$address"\r
$result = Invoke-WebRequest $addyUrl\r
param(\r
[string]$address\r
)\r
+ Invoke-SubKeyCheck\r
$subKey = $env:AzMapsSubKey\r
$result = Get-MapAddress -Address $address\r
return $result.results.entryPoints[0].position\r
[string]$from_address,\r
[string]$to_address\r
)\r
+ Invoke-SubKeyCheck\r
$subKey = $env:AzMapsSubKey\r
$pos1 = Get-MapCoords -Address $from_address\r
$lat1 = $pos1.lat\r