Tekelija.RemoteGIS

Module performs GIS web service queries for various things, i guess:

  1. Get address from coordinate point:

    GISAddress GetAddressFromPoint(Coordinates coordinates, string projection = "G")

    request: https://vgis3d.urszr.si:8443/dws-0.0.1/call/GetAddressWithin?x={0}&y={1}&proj={2}&with_geom=false&radius=10

  2. Get neighbour responsible units by unit type id:

    List<Unit> GetNeighbourResponsibleUnits(int unitTypeId, Coordinates coordinates, string projection = "G")

    request: https://vgis3d.urszr.si:8443/dws/call/GetNeighbourResponsibles?vrsta_id={0}&x={1}&y={2}&proj={3}&with_geom=false

  3. Get neighbour responsible units by unit function code:

    List<Unit> GetNeighbourResponsibleUnits(string unitFunctionCode, Coordinates coordinates, string projection = "G")

    request: https://vgis3d.urszr.si:8443/dws/call/GetNeighbourEnclose?table={0}&x={1}&y={2}&proj={3}&with_geom=false

  4. Get responsible unit by unit type id:

    Unit GetResponsibleUnit(int unitTypeId, Coordinates coordinates, string projection = "G")

    request: https://vgis3d.urszr.si:8443/dws/call/GetResponsible?vrsta_id={0}&x={1}&y={2}&proj={3}&with_geom=false

  5. Get responsible unit by unit function code:

    List<Unit> GetResponsibleUnit(string unitFunctionCode, Coordinates coordinates, string projection = "G")

    request: https://vgis3d.urszr.si:8443/dws/call/GetEnclose?table={0}&x={1}&y={2}&proj={3}&with_geom=false

  6. Search location:

    List<GISAddress> SearchLocation(QueryObject query)

    request: https://vgis3d.urszr.si:8443/ses/search?s=location&query={0}

  7. Get coordinates from shape:

    Coordinates GetCoordinatesFromShape(byte[] shape)

    request: https://vgis3d.urszr.si:8443/psa/psa/

  8. Get OB sibling units:

    List<Unit> GetObSiblingsUnits(int ezrid)

    request: https://vgis3d.urszr.si:8443/dws/call/GetObSiblings?ezrId={0}

  9. Get GZ sibling units:

    List<Unit> GetGzSiblingsUnits(int ezrid)

    request: https://vgis3d.urszr.si:8443/dws/call/GetGzSiblings?ezrId={0}

Configuration

Module config

{
  "RemoteGIS": {
    "CertFile": "D:\\temp\\gis-bs\\ipkom-services.pfx",
    "ExtractCoordinatesFromShapeUri": "https://vgis3d.urszr.si:8443/psa/psa/",
    "GetAddressUri": "https://vgis3d.urszr.si:8443/dws-0.0.1/call/",
    "LocationSearchUri": "https://vgis3d.urszr.si:8443/ses/",
    "ResponsibleUnitsUri": "https://vgis3d.urszr.si:8443/dws/call/",
    "VerifySSL": false
  }
}

Params

Setting Default value Notes
CertFile string, null path to .pfx file with client certificate. If absolute path is given, double backslash should be used as path delimiter
ExtractCoordinatesFromShapeUri string, null extract coordinates endpoint url
GetAddressUri string, null get address endpoint url
LocationSearchUri string, null location search endpoint url
ResponsibleUnitsUri string, null responsible units endpoint url
VerifySSL bool, false verify gis service certificate

Message bus config

{
  "MessageBus": {
    "Url": "rabbitmq://localhost",
    "Username": null,
    "Password": null,
    "Endpoint": "<endpoint-name>",
    "MessageRepositoryUri": null
  }
}

Parameters:

Name Type Default Description
Url string null RabbitMQ url (rabbitmq://…)
Username string null RabbitMQ username
Password string null RabbitMQ user password
Endpoint string null RabbitMQ endpoint
MessageRepositoryUri string host name Origin of the call, may have some sense for global call data collection setup

Authorization config

{
  "AuthServer": {
    "Issuer": "https://authenticatomatic.urszr.si:22000",
    "ClientId": null,
    "ClientSecret": null,
    "Audience": null
  }
}
Name Type Default Description
Issuer string null OAuth server url
ClientId string null Authorization app id
ClientSecret string null Authorization app secret
Audience string[] null Array of audiences (scope resources) to be used in token validation