Does Here map supports Multi Model transportation system? - here-api

We are trying to find a solution where map provider support route and cost optimization via different types of carrier.
For example : I need to deliver set of items from Location 'A' - 'D'. Delivery will be done using Truck from Location A to Location B. Further items can be moved via Train, Air or Water to next Location C and Now from C location, Truck can pickup the load and deliver to Location D.
Location A -B -> Using Truck,
Location B - C -> Using Train/Air/Water,
Location C - D -> Using Truck

Yes, our Routing and Fleet Telematics APIs can be used to find the fastest/shortest/cost optimised routes for different transport modes: [car | pedestrian | carHOV | publicTransport | publicTransportTimeTable | truck | bicycle ]
Please checkout the documentation to learn more:
https://developer.here.com/documentation/routing/topics/introduction.html
https://developer.here.com/documentation/fleet-telematics/dev_guide/index.html

Related

When distributing a release bundle on Artifactory how do the edge nodes map to the jfrog CLI API?

I'm trying to distribute my release bundles using the jfrog CLI and based on how we have setup our Artifactory instance I'm not sure how the web interface maps to the [CLI API][1]. On the web interface it asks me to select the edge nodes I want to distribute to however, the API talks about sites, cities and country codes. My goal is to distribute to a single one of the edge nodes.
[1]: https://www.jfrog.com/confluence/display/CLI/CLI+for+JFrog+Distribution#CLIforJFrogDistribution-DistributingaReleaseBundle%20(
The difference between the UI and REST API/CLI is that:
Via UI the Distribution receives the list of available Destinations from Mission Control. Then, once you select any, it is automatically creates the pattern map that is submitted via REST API (/ui endpoint).
REST API: you need to provide the Destinations in a form of patterns
JFROG CLI: wrapping the API.
The pattern build in the json (distribution_rules):
"site_name": Destination name or wildcard (*)
Every Destination has a city and Country that can be set in advance (when the Destination is registered). Wildcard supported as well.
So, in your case site == edge, city and country code are optional params.
See Mission Control API for getting list of Destinations: https://www.jfrog.com/confluence/display/JFROG/Mission+Control+REST+API#MissionControlRESTAPI-GetJPDList

SABRE Hotel Passive Segment API

In SABRE just started on a "webapp" in SABRE for the agent to convert a HK segment to a passive segment (GK). I am new to the API's. Is there an API for does this with SABRE. I couldn't find one but surely there's a generic method for sending a "valid sabre command" ...
The agent entry would be like this...
0HHTAAGK1DFWIN27JUL-OUT2AUG/HI AIRPORT WEST/SGLB/75.00/SI-#5827 OCEAN DRIVE¥MIAMI FL 38834¥PHONE305-
555-1111#RQNEAR POOL/CF89732901
You are unable to convert an HK reservation to GK, as HK is an online sale with the hotel and GK is an offline sale with the hotel.
In order for you to sell a hotel segment in any status, you can use the services listed below according to your needs:
HotelResModifyLLSRQ: https://developer.sabre.com/docs/soap_apis/hotel/book/Modify_Hotel_Reservation
EnhancedHotelBookRQ: https://developer.sabre.com/docs/soap_apis/hotel/book/enhanced_hotel_book
OTA_HotelResLLSRQ: https://developer.sabre.com/docs/soap_apis/hotel/book/book_hotel_reservation
All of these services allow you to sell a hotel with HK or GK status.
I'm transitioning from sabre script writing to sabre red apps.
I found this example/sample it has textboxes to collect information and then push to sabre. You should be able to rename some of the boxes and add some textboxes to collect all the hotel data and push to sabre.
Location: C:\SDK\red-app-sdk-3.0-20.11.6\samples
File: com.sabre.redapp.example3.web.customworkflow-1.0.5-SNAPSHOT-v20201016-1358.zip
This is the main processor file that initiates the data in html, to ts, to sabre.
C:\SDK\workspace\com-sabre-test3-web-module\src\code
Main.ts
The modal shown in sabre comes from template dir. These are HTML pages with boxes/drop downs etc.
C:\SDK\workspace\com-sabre-test3-web-module\src\templates
PnrView.html
Transmit to sabre
C:\SDK\workspace\com-sabre-test3-web-module\src\code\view
Pnr.View.ts

Verify if data was returned from preferred region in cosmos

So I have setup my cosmos in 2 regions (say West US and South Central US). I also have my app services running in these two region and connecting to cosmos. For app services running in each region I have configured my preferred region list. So for app service running WUS region, preferred list is in order [WUS, SCUS] and for app service running SCUS region, preferred list is in order [SCUS, WUS].
I want to verify if this configuration is working and my data was returned from cosmos region in order as i have mentioned. For example if accessed from WUS app service, verify if region chooses to execute the query was WUS and vice versa.
Is there any way to verify this?
NOTE : I am using spring-data-cosmosdb-2.1.2 to connect to cosmos.
Not sure if you can get that information from Response in code but you can make use of Cosmos Metrics in Azure portal.There you can filter the metrics on Region.
So, Attempt a request through App from region 1 and then verify in portal that expected Cosmos region served it. Test in same way for region 2.
Yes, just dump the Diagnostics returned in the response object and look for the FQDN to the endpoint. It will have a regional subdomain pre-pended to the URI.

How to send token in CoAP requests?

Is there a consensus on how to send tokens as part of CoAP requests?
HTTP clients share their identity/credentials through the Authorization header (or eventually the Cookie header) or less often as part of the URL (e.g. a JSON Web Token encoded in base64url). In the CoAP RFC, there is not equivalent option to Authorization.
Draft profiles for authentication and authorization for constrained environments (e.g. OSCORE or DTLS) rely on the underlying security protocol to maintain a stateful connection and the token is uploaded to /authz-info once:
C RS AS
| [-- Resource Request --->] | |
| | |
| [<---- AS Request ------] | |
| Creation Hints | |
| | |
| ----- POST /token ----------------------------> |
| | |
| <---------------------------- Access Token ----- |
| + Access Information |
| ---- POST /authz-info ---> | |
| (access_token, N1) | |
| | |
| <--- 2.01 Created (N2) --- | |
However, this is not suitable for unprotected environment (e.g. for development or in a private network). Since CoAP is typically on top of UDP, it is not possible to have "sessions" so we cannot track which client uploaded which token. I'd like to avoid to discuss about usefulness of token in unprotected context.
Should the token be part of the URI (i.e. as a Uri-Query option or in the Uri-Path)? ThingsBoard is an example of service having the the token as part of the Uri-Path but I'm not sure if this is the best option. Also, would sending a binary CBOR Web Token in Uri-Query be possible without base64url encoding?
In CoAP, no attempt is made to provide user authentication without a security layer in place, nor are there provisions for sessions in the CoAP layer (which would violate the REST design).
As I understand, that was a conscious decision to guide implementers towards a RESTful design, and to avoid the transfer of security tokens over unsecured transports.
For the two use case of "during development", it is possible to introduce an own CoAP option in the experimental-use range, for example "65003 = Simulated-OSCORE-Key-ID" (where 65003 is chosen to be critical and not safe to forward). While the OSCORE stack is not operational, an ad-hoc made-up OSCORE key ID could be inserted there and then have a token POSTed using it in the ACE steps. Obviously, those constructs should neither make their way out of a test setup, and not into specifications.
Private networks are considered as untrusted ("NoSec mode") as the rest of the network in CoAP. That assumption can probably be understood better in the context of the principle of least authority, which makes setups where all devices (and processes) on a network share the same set of permissions highly unlikely.

How to create an API Management service programmatically?

I am trying to programmatically (via Azure Resource Manager, if possible) create an APIM service in a specific resource group. The goal is that we can have a template or script that is parameterized and can be checked into source control, so that we can duplicate and recreate our environments.
This table in an ARM documentation page says Yes, Resource Manager is Enabled for APIM, but the Quickstart Templates link finds no sample templates for the Microsoft.ApiManagement resource type. However, this could mean merely that no one has yet contributed a template to the gallery, and that I would have to write my own.
As for writing my own ARM template, the article that walks you through authoring a Resource Manager template says:
To learn much of what you need to know about resource providers, see Resource Manager providers, regions, API versions and schemas
... which links back to the same page as my "This table" text above. The same section of the "authoring templates" article also says:
[Properties are] Resource specific configuration settings. The values for the properties are exactly the same as the values you provide in the request body for the REST API operation (PUT method) to create the resource. For links to resource schema documentation or REST API, see Resource Manager providers, regions, API versions and schemas.
... which again links back to the same page as above.
I have checked both the APIM REST API and the azure-resource-manager-schemas page for documentation on how to create an APIM instance.
The APIM REST API requires that you have created an APIM instance already. It's designed for manipulating APIM resources within an APIM instance, not for creating the APIM instance in the first place.
The ARM schemas project does not contain a schema for Microsoft.ApiManagement. The strings "api management" and "apim" do not occur within the schemas project.
Is it possible to create an API Management service programmatically, and if so, how?
Yes it is possible to create an ApiManagement service programmatically using the Azure Powershell 1.0 commandlets https://azure.microsoft.com/en-us/documentation/articles/powershell-install-configure/. Below is the commandlet that will help you achieve it.
PS C:\WINDOWS\system32> get-help New-AzureRmApiManagement -example
NAME
New-AzureRmApiManagement
SYNOPSIS
Creates an API Management deployment.
SYNTAX
New-AzureRmApiManagement [-Capacity [<Int32>]] [-Sku [<PsApiManagementSku>]] [-Tags [<0, Culture=neutral,
PublicKeyToken=b77a5c561934e089>]] -AdminEmail <String> -Location {North Central US | South Central US | Central
US | West Europe | North Europe | West US | East US | East US 2 | Japan East | Japan West | Brazil South |
Southeast Asia | East Asia | Australia East | Australia Southeast} -Name <String> -Organization <String>
-ResourceGroupName <String> [<CommonParameters>]
Example 1: Create at Developer tier API Management service
PS C:\>New-AzureRmApiManagement -ResourceGroupName "ContosoGroup02" -Name "ContosoApi" -Location "Central US"
-Organization "Contoso" -AdminEmail "admin#contoso.com"
This command creates a Developer tier API Management service. The command specifies the organization and the
administrator address. The command does not specify the SKU parameter. Therefore, the cmdlet uses the default
value of Developer.
Example 2: Create a Standard tier service that has three units
PS C:\>New-AzureRmApiManagement -ResourceGroupName "ContosoGroup02 -Name "ContosoApi" -Location "Central US"
-Organization "Contoso" -AdminEmail "admin#contoso.com" -Sku Standard -Capacity 3
This command creates a Standard tier API Management service that has three units.
You can find additional commandlets by using
get-Help AzureRmApiManagement
Full documentation of the commandlets can be found here
https://msdn.microsoft.com/en-us/library/mt619282.aspx
You can now use the quickstart API Management Service ARM template from GitHub.
New-AzureRmApiManagement can be used to create APIM instance. But provisioning an APIM instance takes time, usually 20 to 30 minutes. If you have to create multiple instances, to save time, it's better to do it with an Azure Automation runbook, and run this command in parallel. Here is an example.

Resources