Working with Verizon Join Reveal in ArcGIS GeoE…

Faheem

Introduction

Verizon Join gives a number of fleet administration options for monitoring and managing your fleet of automobiles. This information will focus particularly on Verizon Join Reveal’s GPS Push Service and how one can connect with the information feed and carry out real-time ingestion and evaluation with ArcGIS GeoEvent Server. This method requires a HTTPS endpoint to be arrange in such a approach {that a} Verizon Join can join and ship the information to it. The HTTPS endpoint must be protected utilizing primary authentication and be accessible outdoors of your group’s community firewall. This information makes use of Home windows IIS and the next steps spotlight enabling primary authentication and routing from an IIS endpoint to an ArcGIS GeoEvent Server connector endpoint. A corporation firewall or a load balancer can be utilized instead of IIS.

This information will display the next:

  • Creating an HTTPS endpoint on GeoEvent Server.
  • Creating an HTTPS endpoint on IIS with primary authentication enabled.
  • Routing site visitors from the HTTPS endpoint on IIS to the HTTPS endpoint on GeoEvent Server.

Necessities

  • ArcGIS GeoEvent Server put in and configured.
  • Verizon Join Reveal requires a public-facing endpoint configured with primary authentication to ship information to. Please think about options for engaging in this akin to an online server on a DMZ, an software gateway, or a load balancer. This information will use IIS to create an endpoint that’s publicly accessible.
  • Familiarity with configuring inputs, GeoEvent Companies, and outputs in GeoEvent Supervisor. Entry the obtainable quick start guide, documentation, and tutorials. This information refers to GeoEvent Server 11.1.

Import the GeoEvent Server Configuration file

This information comprises a downloadable GeoEvent configuration file which comprises GeoEvent Definitions (schemas) which might be wanted to course of information from Verizon Join Reveal.

The obtain is on the backside of the weblog web page in a .zip file. Obtain the .zip file, extract the VerizonConnectReveal_Config.xml file, and import it to GeoEvent Server utilizing the next steps.

  1. In an online browser, navigate to ArcGIS GeoEvent Supervisor and go to Website > GeoEvent > Configuration Retailer
    Jeff_G_0-1682123441005.png
  2. Click on Import Configuration and choose the downloaded configuration file for import.
  3. Click on Subsequent and select Import Configuration to import all the configuration and click on Import
    Jeff_G_1-1682123441006.png

Configure a GeoEvent Server connector endpoint to obtain information from Verizon Join Reveal

    1. Open an online browser and navigate to ArcGIS GeoEvent Supervisor (e.g., https://:6143/geoevent/supervisor).
    2. Click on Add Enter after which click on Obtain JSON on a REST Endpoint.Jeff_G_2-1682123441010.pngJeff_G_3-1682123441012.png
    3. Configure the brand new enter connector with the next parameters:
      • Identify — VerizonConnectReveal-rest-json-in

Be aware: For this information, we will probably be utilizing this title. Nevertheless, you might be free to make use of any title of your selecting.

      • GeoEvent Definition Identify (Current) — VerizonConnectReveal-SubscriptionConfirmation
      • Anticipated Date Format — yyyy-MM-dd’T’HH:mm:ss’Z’

Be aware: This date format is necessary. Information is not going to be processed except this date format is configured with the enter connector.

    • X Geometry Discipline — longitude
    • Y Geometry Discipline — latitude
      Jeff_G_40-1682125382076.png
  1. Click on Save to save lots of the brand new enter connector.
  2. Begin the newly created enter connector by clicking on the play icon.Jeff_G_5-1682123441016.png
  3. Click on on the enter connector to open the properties window.Jeff_G_6-1682123441017.png
  4. Copy the URL parameter and put it aside in a textual content editor. This will probably be used to create a URL Rewrite rule.Jeff_G_7-1682123441017.png

Allow primary authentication

To obtain information from Verizon Join Reveal, the HTTPS endpoint you simply created must have primary authentication. GeoEvent doesn’t help primary authentication out of the field, so we might want to use an software akin to IIS to route site visitors from this HTTPS endpoint to a HTTPS endpoint enabled with primary authentication.

  • The next steps assumes the next:
  • IIS is put in and enabled on the machine
  • The machine is on the DMZ of your group’s community, or site visitors from outdoors your group’s community could be configured to entry the online server

Be aware: IIS doesn’t must be on the identical machine as your GeoEvent Server. Nevertheless, the online server should be capable to talk with GeoEvent Server.

Home windows Server 2019 and up

  1. Open Server Supervisor and choose Handle > Add Roles and OptionsJeff_G_8-1682123441028.png
  2. Hold deciding on Subsequent till Server Roles is chosen.
  3. Navigate to Internet Server (IIS) > Internet Server > Safety and test the Fundamental Authentication checkbox.Jeff_G_9-1682123441032.png
  4. Hold clicking Subsequent till the Affirmation part is chosen.
  5. Click on Set up, wait till the set up completes, then click on Shut.

Home windows 10

  1. Open the Management Panel and navigate to Packages > Packages and Options.
  2. Click on Flip Home windows options on or off.Jeff_G_10-1682123441034.jpeg
  3. Navigate to Web Info Companies > World Broad Internet Companies > Safety and test the Fundamental Authentication checkbox.
    Jeff_G_11-1682123441038.jpeg
  4. Click on OK to use the change and Shut as soon as the change is utilized.

Subsequent, you’ll create an area account on the machine that can present the HTTPS endpoint for the Verizon Join Reveal server to authenticate, connect with, and ship information to.

  1. Open Laptop Administration and navigate to Native Customers and Teams > Customers
  2.  Below Extra Actions, click on New Person.
  3. Enter your Username and Password and test Password by no means expires.Jeff_G_12-1682123441041.jpeg
  4. Click on Create to create the brand new person.

Subsequent, we are going to create a digital listing in IIS that can function our HTTPS endpoint.

  1. In File Explorer, create a brand new folder with the title of HTTPS endpoint for the Verizon Join Reveal server. This can be a reputation of your selecting. For this information, we will probably be utilizing C:VerizonReveal.
  2. Open Web Info Companies (IIS) Supervisor and navigate to Websites and right-click Default Internet Website and select Add Digital Listing.
    Jeff_G_13-1682123441045.jpeg
  3. Enter the Alias and Bodily path as illustrated beneath, then click on the OK button to dismiss the dialog.Jeff_G_14-1682123441047.jpeg
  4. Click on OK so as to add the brand new digital listing. The brand new digital listing ought to now seem beneath Default Internet Website.
    Jeff_G_15-1682123441048.jpeg
  5. To check the digital listing, create a brand new index.html file in C:VerizonReveal
  6. Open index.html in a textual content editor and duplicate and paste the content material beneath.

    Hey Verizon
  7. Save the textual content file.
  8. In a browser, enter http://localhost/verizonrevealJeff_G_38-1682124219105.png
    The textual content Hey Verizon ought to show on the web page.

Subsequent, it’s needed that primary authentication be enabled for the digital listing in IIS Supervisor.

  1. Open Web Info Companies (IIS) Supervisor and navigate to Websites > Default Internet Website and choose the verizonreveal digital listing.
  2. Double-click Authentication.
    Jeff_G_17-1682123441053.jpeg
  3. Choose Fundamental Authentication then select Allow beneath Actions on the suitable paneJeff_G_18-1682123441056.jpeg
  4. The Nameless Authentication standing is Enabled by default, choose it after which select Disable from the Actions panel on the suitable.
  5. To check the essential authentication, open the browser and navigate to http://localhost/verzionreveal/. A Register dialog will pop up.
    Jeff_G_19-1682123441057.jpeg
  6. Enter your Username and Password for the verizonconnect person you beforehand created and click on Register.

If authentication is profitable, the webpage will show Hey Verizon, indicating primary authentication is working correctly.

Route site visitors from an IIS endpoint to a GeoEvent Server connector endpoint

The URL Rewrite and Software Request Routing are IIS modules which might be wanted to redirect HTTP site visitors. The URL Rewrite module needs to be put in first, adopted by the Software Request Routing module.

  1. Obtain and set up URL Rewrite from IIS.web right here: https://www.iis.net/downloads/microsoft/url-rewrite
  2. Obtain and set up Software Request Routing right here: https://www.iis.net/downloads/microsoft/application-request-routing
  3. After each modules are put in, relaunch IIS Supervisor to refresh its content material.
  4. Below the IIS group, double-click Software Request Routing Cache to open it.Jeff_G_20-1682123441065.png
  5. Within the Actions panel, within the Proxy subgroup, click on Server Proxy Settings.
    Jeff_G_21-1682123441068.jpeg
  6. Test the field for Allow proxy and preserve the default values for all different parameters.Jeff_G_22-1682123441075.png
  7. Click on on Apply beneath the Actions panel to save lots of your adjustments.
  8. Navigate again to Residence in IIS Supervisor by clicking the machine title within the tree view.
  9. Double-click on the URL Rewrite to open it.
    Jeff_G_23-1682123441081.png
  10. Click on Add Rule(s) from the Actions panel.
    Jeff_G_24-1682123441083.jpeg
  11. On the Add Rule(s) dialog, choose Clean rule and click on OK.
    Jeff_G_25-1682123441085.jpeg
  12. Enter the rule configuration as illustrated within the instance beneath.

    Be aware: The Rewrite URL you enter needs to be the identical URL because the GeoEvent Server enter connector you created within the Configure a GeoEvent Server connector endpoint to obtain information from Verizon Join Reveal part above.

    Jeff_G_26-1682123441087.png

For this instance, the Rewrite URL is

https://:6143/geoevent/relaxation/receiver/VerizonConnectReveal-rest-json-in

  1. Click on Apply to create the rule.
  2. Click on Again to Guidelines to navigate again, the newly created rule will probably be listed.Jeff_G_27-1682123441089.jpeg

Your URL ought to now be accessible by way of https:///verizonreveal

That is the URL that will probably be used to supply to Verizon Join in future steps.

It is suggested you encrypt the site visitors utilizing an HTTPS URL to keep away from exposing the essential authentication data within the HTTP header. For the reason that HTTP site visitors is being despatched over a public community, additionally it is really helpful you receive a CA-signed certificates in your server from a trusted certificates supplier (e.g., Verisign, DigiCert, and so on.) and apply it to your server.

Verify Subscription

Verizon Join requires customers to substantiate the subscription to the GPS Push Service with a subscription affirmation URL. The preliminary message from the GPS Push Service comprises the SubscribeURL parameter. We might want to use the enter connector to obtain this message and ship it to an output.

Within the Configure a GeoEvent Server connector endpoint to obtain information from Verizon Join Reveal part, we already configured the enter connector to obtain the subscription affirmation message.

Jeff_G_39-1682125369568.pngGeoEvent Server wants to have the ability to ship the subscription affirmation message to an output utilizing an output connector, akin to Ship an E-mail or Write to a JSON File. On this information, we will probably be utilizing Write to a JSON File.

  1. Distant into the GeoEvent Server machine and create a folder the place the output connector can write a JSON file to. Alternatively, you may register a folder on a file share that the GeoEvent service account can entry.
  2. In GeoEvent Supervisor, click on Add Output beneath GeoEvent Companies and title it SubscriptionConfirmation-file-json-out
    Jeff_G_29-1682123441095.png
  3. Click on Register Folder and enter the trail title of the folder you created in step 1.
  4. For Filename Prefix, enter SubscriptionConfirmation
    Jeff_G_30-1682123441096.png
  5. Hold all different values as default and click on Save.

Now we should create a GeoEvent Service to attach the enter and output connectors that we simply created.

  1. Within the GeoEvent Supervisor web page, click on Add Service beneath GeoEvent Service.
    Jeff_G_31-1682123441100.png
  2. Chances are you’ll present any title of your selecting. On this information we will probably be naming it Verizon Join Reveal Affirmation.
  3. Drag-and-drop the VerizonConnectReveal-rest-json-in and SubscriptionConfirmation-file-json-out connectors into the service designer and join them collectively.
    Jeff_G_32-1682123441102.png
  4. Click on Publish.

Now that the enter and output connectors have been configured, we’re able to obtain the subscription affirmation message from the GPS Push Service. Be sure that the GeoEvent service and each enter and output connectors are turned on and have been configured accurately.

You’ll now must submit the next to Verizon Join:

  • The credentials created within the Allow primary authentication part.
  • The HTTPS endpoint created within the Route site visitors from an IIS endpoint to a GeoEvent Server connector endpoint part.

For extra data, go to the next hyperlink or contact Verizon Join Buyer Help.

As soon as HTTPS endpoint and credentials are supplied to Verizon Join, the primary message from the GPS Push Service would be the subscription affirmation message.

Be aware: You’ll have three days to substantiate the submission request. If the subscription has not been confirmed by then, you will want to resubmit the endpoints to Verizon Join.

If the message was output to a JSON file, it ought to appear as if this:

"Sort" : "SubscriptionConfirmation",
"MessageId" : "165545c9-2a5c-472c-8df2-7ff2be2b3b1b",
"Token" : "2336412f37...",
"TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic",
"Message" : "You could have chosen to subscribe to the subject arn:aws:sns:us-west-2:123456789012:MyTopic.nTo verify the subscription, go to the SubscribeURL included on this message.",
"SubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=ConfirmSubscription&TopicArn=arn:aws:sns:us-west-2:12345......",
"Timestamp" : "2012-04-26T20:45:04.751Z",
"SignatureVersion" : "1",
"Signature" : "EXAMPLEpH+DcEwjAPg8O9mY8dReBSwksfg2S7WKQcikcNKWLQjwu6A4VbeS0QHVCkhRS7fUQvi2egU3N858fiTDN6bkkOxYDVrY0Ad8L10Hs3zH81mtnPk5uvvolIC1CXGu43obcgFxeL3khZl8IKvO61GWB6jI9b5+gLPoBc1Q=",
"SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem"

Copy and paste the SubscribeURL worth (with out quotes) right into a browser. For instance:

https://sns.us-west-2.amazonaws.com/?Action=ConfirmSubscription&TopicArn=arn:aws:sns:us-west-2:12345…

This could verify your subscription to the GPS Push Service.

Configure GeoEvent Server to course of the Verizon Join Reveal information

As soon as subscribed, we have to reconfigure the enter connector to have the ability to obtain information.

  1. In GeoEvent Supervisor, click on on VerizonConnectReveal-rest-json-in beneath Inputs.
  2. Change the next parameters:
    • JSON Object Identify — information ­
    • GeoEvent Definition (current) — VerizonConnectReveal-data
    • Guarantee all parameters match those within the picture beneath:
      Jeff_G_41-1682125507044.png
  3. Click on Save to save lots of your adjustments.

The enter connector is now able to obtain information from the Verizon Join Reveal GPS Push Service.

Mapping occasion information to a flattened schema

The Verizon Join Reveal GPS Push Service information comprises sub-hierarchies in its information construction. This information isn’t simply translated to a function schema that can be utilized in ArcGIS functions. So, on this case, the GPS Push Service information must be mapped to a flattened schema first.

The GeoEvent configuration file included on this information which incorporates two GeoEvent Definitions (schemas):

  • VerizonConnectReveal-data – The incoming information from the GPS Push Service from Verizon Join Reveal
  • VerizonConnectReveal-data-flat – The flattened model of the above schema. The GeoEvent service ought to use the Discipline Mapper processor to map to this GeoEvent Definition.

When creating your GeoEvent Service, please make sure you use a Discipline Mapper processor to map occasion information to the flattened schema.

Jeff_G_34-1682123441105.png

Jeff_G_35-1682123441109.png

Troubleshooting

Testing the HTTPS endpoint utilizing functions akin to Postman or Boomerang

  • If you’re unable to obtain information from Verizon Join Reveal and you’ve got confirmed the subscription, then you need to use an software akin to Postman to ship check requests to your configured HTTPS endpoint.

Be aware: Be sure that you configure the request as a POST with the Authentication set to Fundamental Authentication. Set the content-type to software/json.

  • Copy the pattern JSON information beneath and paste into the JSON physique panel:
{
  "information": {
    "SequenceId": 162517,
    "UpdateUTC": 1614364635000,
    "DeviceTimeZoneOffset": -5,
    "DeviceTimeZoneUseDST": false,
    "DisplayState": "Transferring",
    "IsPrivate": false,
    "SpeedKmph": 30,
    "DirectionDegrees": 340,
    "Heading": "North",
    "DeltaDistanceKm": 0.54,
    "OdometerKm": 64853.82300541169,
    "TotalEngineMinutes": 179742,
    "IdleTimeMinutes": 0,
    "Latitude": 35.78075055555556,
    "Longitude": -77.90424,
    "DeltaTimeInSec": 89,
    "SensorBits": 0,
    "geometry": {
      "x": -77.90424,
      "y": 35.78075055555556,
      "spatialReference": {
        "wkid": 4326
      }
    },
    "f": null,
    "token": null,
    "SensorValues": null,
    "Automobile": {
      "Quantity": "1234",
      "Identify": "Truck1234",
      "VIN": "1ABCDEF567890",
      "ESN": 13000000
    },
    "Deal with": {
      "AddressLine1": "4020 State Rd 1327, Elm Metropolis, NC 27822, USA",
      "AddressLine2": "4020 State Rd 1327",
      "Locality": "Elm Metropolis",
      "PostalCode": "27822",
      "AdministrativeArea": "NC",
      "Nation": "USA"
    },
    "Driver": {
      "DriverKeyFobId": 0,
      "DriverLastName": "Bond",
      "DriverFirstName": "Jason",
      "DriverNumber": null
    }
  }
}

Gateway Error (502)

Contributors

  • Jeffrey Garcia, Writer
  • Morakot Pilouk, Ph.D., Writer

VerizonConnectReveal_Config.zip

Leave a Comment