arcgis.realtime.velocity.feeds module¶
RSS¶
-
class
arcgis.realtime.velocity.feeds.
RSS
(label: str, description: str, rss_url: str, http_auth_type: Union[arcgis.realtime.velocity.http_authentication_type.NoAuth, arcgis.realtime.velocity.http_authentication_type.BasicAuth, arcgis.realtime.velocity.http_authentication_type.CertificateAuth], http_headers: Dict[str, str] = <factory>, data_format: Optional[Union[arcgis.realtime.velocity.input.format.RssFormat, arcgis.realtime.velocity.input.format.GeoRssFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None, run_interval: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles'))¶ Poll an HTTP endpoint for RSS events. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
rss_url
str. Address of the HTTP endpoint providing data.
http_auth_type
Union[NoAuth, BasicAuth, CertificateAuth]. An instance that contains the Authentication info for this feed instance.
http_headers
Dict[str, str]. A Name-Value dictionary that contains HTTP headers for connecting to the RSS feed.
Optional Argument
Description
data_format
Union[RssFormat, GeoRssFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
run_interval
RunInterval. An instance of scheduler configuration.
default value - RunInterval(cron_expression=”0 * * ? * * *”, timezone=”America/Los_Angeles”)
- Returns
A data class with RSS feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import RSS from arcgis.realtime.velocity.http_authentication_type import ( NoAuth, BasicAuth, CertificateAuth, ) from arcgis.realtime.velocity.input.format import GeoRssFormat from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant from arcgis.realtime.velocity.feeds.run_interval import RunInterval name = "rss feed name" description = "rss feed description" url = "rss feed url" http_auth = NoAuth() # http_auth = BasicAuth(username="username", password="password") # http_auth = CertificateAuth(pfx_file_http_location="https://link", password="password") http_headers = { "Content-Type": "application/json" } # all properties can also be defined in the constructor as follows # Set data format data_format = GeoRssFormat() # Set geometry field geometry = XYZGeometry( x_field="category_longitude", y_field="category_latitude", wkid=4326, z_field="category_altitude", z_unit="Meters" ) # Set time field time = TimeInterval( interval_start_field="start_field", interval_end_field="end_field" ) # Set recurrence run_interval = RunInterval( cron_expression="0 * * ? * * *", timezone="America/Los_Angeles" ) # Configure the RSS Feed rss = RSS( label="feed_name", description="feed_description", rss_url=url, http_auth_type=http_auth, http_headers=http_headers, track_id_field="track_id", data_format=data_format, geometry=geometry, time=time, run_interval=run_interval ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration RSS_feed = feeds.create(rss) RSS_feed.start() feeds.items
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.RssFormat, arcgis.realtime.velocity.input.format.GeoRssFormat]] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
http_auth_type
: Union[arcgis.realtime.velocity.http_authentication_type.NoAuth, arcgis.realtime.velocity.http_authentication_type.BasicAuth, arcgis.realtime.velocity.http_authentication_type.CertificateAuth]¶
-
http_headers
: Dict[str, str]¶
-
rss_url
: str¶
-
run_interval
: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles')¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
HttpPoller¶
-
class
arcgis.realtime.velocity.feeds.
HttpPoller
(label: str, description: str, url: str, http_method: str, http_auth_type: Union[arcgis.realtime.velocity.http_authentication_type.NoAuth, arcgis.realtime.velocity.http_authentication_type.BasicAuth, arcgis.realtime.velocity.http_authentication_type.CertificateAuth], url_params: Dict[str, str] = <factory>, http_headers: Dict[str, str] = <factory>, enable_long_polling: bool = False, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None, run_interval: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles'))¶ Poll an HTTP endpoint for events. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
url
str. Address of the HTTP endpoint providing data.
http_http_method
str. Either “GET” or “POST”
http_auth_type
Union[NoAuth, BasicAuth, CertificateAuth, OAuth]. An instance that contains the Authentication info for this feed instance.
url_params
Dict[str, str]. A dictionary of url param/value pairs that contains http params used accessing the HTTP resource.
http_headers
Dict[str, str]. A Name-Value dictionary that contains HTTP headers for connecting to the HTTP resource.
enable_long_polling
bool. default value - False
Optional Argument
Description
data_format
Union[EsriJsonFormat, GeoJsonFormat, JsonFormat, DelimitedFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
run_interval
RunInterval. An instance of scheduler configuration.
default value - RunInterval(cron_expression=”0 * * ? * * *”, timezone=”America/Los_Angeles”)
- Returns
A dataclass with Http poller feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import HttpPoller from arcgis.realtime.velocity.http_authentication_type import ( NoAuth, BasicAuth, CertificateAuth, ) arcgis.realtime.velocity.input.format import DelimitedFormat from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant from arcgis.realtime.velocity.feeds.run_interval import RunInterval name = "http_poller_feed_name" description = "http_poller_description_feed" url = "http_poller_url" http_auth = NoAuth() # http_auth = BasicAuth(username="username", password="password") # http_auth = CertificateAuth(pfx_file_http_location="http_auth_link", password="password") http_headers = {"Content-Type": "application/json"} url_params = {"f": "json"} http_poller = HttpPoller( label=name, description=description, url=url, http_method="GET", http_auth_type=http_auth, url_params=url_params, http_headers=http_headers, enable_long_polling=False, data_format=None ) # Set track id field http_poller.set_track_id("track_id") # Set time field time = TimeInstant(time_field="time_field") http_poller.set_time_config(time=time) # Set geometry field geometry = XYZGeometry( x_field="x", y_field="y", wkid=4326 ) http_poller.set_geometry_config(geometry=geometry) # Set recurrence http_poller.run_interval = RunInterval( cron_expression="0 * * ? * * *", timezone="America/Los_Angeles" ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration http_poller_feed = feeds.create(http_poller) http_poller_feed.start() feeds.items
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
enable_long_polling
: bool = False¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
http_auth_type
: Union[arcgis.realtime.velocity.http_authentication_type.NoAuth, arcgis.realtime.velocity.http_authentication_type.BasicAuth, arcgis.realtime.velocity.http_authentication_type.CertificateAuth]¶
-
http_headers
: Dict[str, str]¶
-
http_method
: str¶
-
run_interval
: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles')¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
-
url
: str¶
-
url_params
: Dict[str, str]¶
HttpReceiver¶
-
class
arcgis.realtime.velocity.feeds.
HttpReceiver
(label: str, description: str, authentication_type: str, sample_message: str, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receive events via a dedicated HTTP endpoint. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
authentication_type
str. Either “none” or “arcgis”
sample_message
str. Some sample content to auto-detect data format from. example - “name,agensam,23”
Optional Argument
Description
data_format
Union[EsriJsonFormat, GeoJsonFormat, JsonFormat, DelimitedFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with Http receiver feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import HttpReceiver from arcgis.realtime.velocity.http_authentication_type import ( NoAuth, BasicAuth, CertificateAuth, ) sample_message="name,age dan,23" http_receiver = HttpReceiver( label="feed_name", description="feed_description", authentication_type="none", sample_message=sample_message, data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration http_receiver_feed = feeds.create(http_receiver) http_receiver_feed.start() feeds.items
-
authentication_type
: str¶
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
sample_message
: str¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
HttpSimulator¶
-
class
arcgis.realtime.velocity.feeds.
HttpSimulator
(label: str, description: str, url: str, field_separator: str = ',', features_per_execution: int = 1, interval_for_sending_events: int = 1000, repeat_simulation: bool = True, time_field_index: int = 0, convert_to_current_time: bool = True, data_format: Optional[arcgis.realtime.velocity.input.format.DelimitedFormat] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Simulate events from a text file. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
url
str. The full URL to the externally accessible simulation file.
field_separator
str. The character, or delimiter, which separates field values in the simulation file. default value - “,”
features_per_execution
int. The number of records (features) to simulate at a time. default value - 1
interval_for_sending_events
int. The interval between sending the number of features per execution default value - 1000
repeat_simulation
boolean. Whether to automatically restart from the beginning when the end of the file is reached. default value - True
time_field_index
int. The numerical index of the date field in the dataset, where the index starts at 0. default value - 0
convert_to_current_time
boolean. Whether to convert the time values in the dataset to current time as the data is simulated. default value - True
Optional Argument
Description
data_format
Union[DelimitedFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with Http simulator feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import HttpSimulator from arcgis.realtime.velocity.input.format import DelimitedFormat from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant http_simulator = HttpSimulator( label="feed_name", description="feed_description", url="http_simulator_url", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration http_simulator_feed = feeds.create(http_simulator) http_simulator_feed.start() feeds.items
-
convert_to_current_time
: bool = True¶
-
data_format
: Optional[arcgis.realtime.velocity.input.format.DelimitedFormat] = None¶
-
features_per_execution
: int = 1¶
-
field_separator
: str = ','¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
interval_for_sending_events
: int = 1000¶
-
repeat_simulation
: bool = True¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
time_field_index
: int = 0¶
-
track_id_field
: Optional[str] = None¶
-
url
: str¶
AWSIoT¶
-
class
arcgis.realtime.velocity.feeds.
AWSIoT
(label: str, description: str, endpoint: str, topic: str, qos_level: int = 0, access_key_id: Optional[str] = None, secret_access_key: Optional[str] = None, session_token: Optional[str] = None, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receives events from an AWS Iot broker. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
endpoint
str. Endpoint for the AWS IoT broker.
topic
str. Topic over which event messages stream.
qos_level
int. The Quality of Service (QoS) level defines the guarantee of delivery for a specific message. A QoS of 0 means a message is delivered zero or more times. It offers better performance, but no guaranteed delivery. A QoS of 1 means a message is delivered at least once, thereby offering guaranteed delivery. With both levels messages may be delivered multiple times. default value - 0
Optional Argument
Description
access_key_id
str. Access key ID for the AWS IoT credentials.
secret_access_key
str. Secret access key for the AWS IoT credentials.
session_token
str. Session token for the AWS IoT broker.
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with AWS Iot feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import AWSIoT from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant aws_config = AWSIoT( label="feed_name", description="feed_description", endpoint="aws_iot feed endpoint", topic="aws_iot_topic", qos_level=0, access_key_id="aws_iot_access_key_id", secret_access_key="aws_iot_secret_access_key", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration aws_feed = feeds.create(aws_config) aws_feed.start() feeds.items
-
access_key_id
: Optional[str] = None¶
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
endpoint
: str¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
qos_level
: int = 0¶
-
secret_access_key
: Optional[str] = None¶
-
session_token
: Optional[str] = None¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
topic
: str¶
-
track_id_field
: Optional[str] = None¶
AzureEventHub¶
-
class
arcgis.realtime.velocity.feeds.
AzureEventHub
(label: str, description: str, shared_access_key_name: str, shared_access_key: str, event_hub_endpoint: str, event_hub_entity_path: str, consumer_group: Optional[str] = None, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receives events from an Azure Event Hub. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
shared_access_key_name
str. Shared access key name for Azure Event Hub credentials.
shared_access_key
str. Shared access key name for Azure Event Hub credentials.
event_hub_endpoint
str. Endpoint of the Azure Event Hub.
event_hub_entity_path
str. Entity path of the Azure Event Hub.
Optional Argument
Description
consumer_group
str. Consumer group for the Azure Event Hub
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with azure event hub feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import AzureEventHub from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant azure_event_hub_config = AzureEventHub( label="feed_name", description="feed_description", shared_access_key_name="azure_event_hub_shared_key_name", shared_access_key="azure_event_hub_shared_key", event_hub_endpoint="azure_event_hub_endpoint", event_hub_entity_path="azure_event_hub_entity_path", consumer_group="azure_consumer_group", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration azure_event_hub_feed = feeds.create(azure_event_hub_config) azure_event_hub_feed.start() feeds.items
-
consumer_group
: Optional[str] = None¶
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
event_hub_endpoint
: str¶
-
event_hub_entity_path
: str¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
AzureServiceBus¶
-
class
arcgis.realtime.velocity.feeds.
AzureServiceBus
(label: str, description: str, topic_name: str, subscription_name: str, shared_access_key_name: str, shared_access_key: str, endpoint: str, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receives events from an Azure Service Bus. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
topic_name
str. Topic name for the Azure Service Bus.
subscription_name
str. Topic name for the Azure Service Bus.
shared_access_key_name
str. Shared access key name for the Azure Service Bus.
shared_access_key
str. Shared access key for the Azure Service Bus.
endpoint
str. Endpoint of the Azure Service Bus.
Optional Argument
Description
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with azure service bus feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import AzureServiceBus from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant azure_service_bus_config = AzureServiceBus( label="feed_name", description="feed_description", topic_name="azure_service_bus_topic_name", subscription_name="azure_service_bus_subscription_name", shared_access_key_name="azure_service_bus_shared_access_key_name", shared_access_key="azure_service_bus_shared_access_key", endpoint="azure_service_bus_endpoint", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration azure_service_bus_feed = feeds.create(azure_service_bus_config) azure_service_bus_feed.start() feeds.items
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
endpoint
: str¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
subscription_name
: str¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
topic_name
: str¶
-
track_id_field
: Optional[str] = None¶
CiscoEdgeIntelligence¶
-
class
arcgis.realtime.velocity.feeds.
CiscoEdgeIntelligence
(label: str, description: str, host: str, port: int, topic: str, qos_level: int = 0, username: Optional[str] = None, password: Optional[str] = None, client_id: Optional[str] = None, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receives events from a Cisco Edge Intelligence broker. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
host
str. Hostname of the Edge Intelligence broker prefixed with “tcp://” for non-SSL and “ssl://” for SSL connections
port
str. Port on which the Edge Intelligence broker is accessible.
topic
str. Topic over which event messages stream.
qos_level
int. Quality of Service (QoS) level defines the guarantee of delivery for a specific message. In MQTT 3.1.1, a QoS of 0 means a message is delivered at most once, a QoS of 1 at least once, and a Qos of 2 exactly once.
default value - 0
Optional Argument
Description
username
Username for basic authentication
password
Password for basic authentication
client_id
Client ID ArcGIS Velocity will use to connect to the Edge Intelligence broker
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with cisco edge intelligence feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import CiscoEdgeIntelligence from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant cisco_edge_config = CiscoEdgeIntelligence( label="feed_name", description="feed_description", host="cisco_host", port="cisco_port", topic="cisco_topic", qos_level=0, username="cisco_username", password="cisco_password", client_id="cisco_client_id", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration cisco_edge_feed = feeds.create(cisco_edge_config) cisco_edge_feed.start() feeds.items
FeatureLayer¶
-
class
arcgis.realtime.velocity.feeds.
FeatureLayer
(label: str, description: str, query: str = '1=1', fields: str = '*', outSR: int = 4326, url: Optional[str] = None, portal_item_id: Optional[str] = None, extent: Optional[Dict[str, Any]] = None, time_stamp_field: Optional[str] = None, track_id_field: Optional[str] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None, run_interval: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles'))¶ Poll a feature layer for features at a fixed schedule. This data class can be used to define the feed configuration and use it to create the feed.
Data format is Esri Layer. Velocity will automatically handle the location for you.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
query
str. Feature layer query parameters default value - “1=1”
fields
str. Requested feature layer output fields. Example - “field1,field2” default value - “*”
outSR
int. Requested output Spatial Reference default value - 4326 Additional information on Projected and Geographic Coordinate system at: https://developers.arcgis.com/rest/services-reference/enterprise/using-spatial-references.htm
Optional Argument
Description
portal_item_id
str. Portal item id of the feature layer Note: either portal_item_id or url is required
extent
Dict[str, Any]. A Geometry object that defines the spatial extent for the feature layer
# Sample Value { "spatialReference": { "latestWkid": 3857, "wkid": 102100 }, "xmin": -14784278.027601289, "ymin": 2604610.848073723, "xmax": -11451317.846255329, "ymax": 6852675.132049575 }
time_stamp_field
str. An optional Date field for latest features Optionally, specify a date field to be used to retrieve only the latest features from the feature layer.
If a timestamp field is not specified, ArcGIS Velocity will load all features that meet the criteria of the WHERE clause when it polls the feature layer.
If a timestamp field is specified, the first time ArcGIS Velocity polls the feature layer it will load all features with a timestamp field datetime within the past minute and less than the first feed poll time that also meet the criteria of the WHERE clause. Each subsequent poll, only features with a timestamp field value between the last polling time and the current polling time that also meet the criteria of the WHERE clause will be loaded.
track_id_field
str. Name of the field from the incoming data that should be set as track_id.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
run_interval
RunInterval. An instance of scheduler configuration.
default value - RunInterval(cron_expression=”0 * * ? * * *”, timezone=”America/Los_Angeles”)
- Returns
A data class with feature layer feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import FeatureLayer from arcgis.realtime.velocity.http_authentication_type import ( NoAuth, BasicAuth, CertificateAuth, ) from arcgis.realtime.velocity.input.format import DelimitedFormat from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant from arcgis.realtime.velocity.feeds.run_interval import RunInterval extent = { "spatialReference": { "latestWkid": 3857, "wkid": 102100 }, "xmin": "xmin", "ymin": "ymin", "xmax": "xmax", "ymax": "ymax" } # Feature Layer Properties feature_layer_config = FeatureLayer( label="feed_name", description="feed_description", query="1=1", fields="*", outSR=4326, url="feed_sample_server_link", extent=extent, time_stamp_field="date_field" ) feature_layer_config # Set recurrence feature_layer_config.run_interval = RunInterval( cron_expression="0 * * ? * * *", timezone="America/Los_Angeles" ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration feature_layer_feed = feeds.create(feature_layer_config) feature_layer_feed.start() feeds.items
-
data_format
: Any = None¶
-
extent
: Optional[Dict[str, Any]] = None¶
-
fields
: str = '*'¶
-
outSR
: int = 4326¶
-
portal_item_id
: Optional[str] = None¶
-
query
: str = '1=1'¶
-
run_interval
: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles')¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
time_stamp_field
: Optional[str] = None¶
-
track_id_field
: Optional[str] = None¶
-
url
: Optional[str] = None¶
StreamLayer¶
-
class
arcgis.realtime.velocity.feeds.
StreamLayer
(label: str, description: str, portal_item_id: str, query: str = '1=1', fields: str = '*', outSR: int = 4326, extent: Optional[Dict[str, Any]] = None, track_id_field: Optional[str] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receive features from a Stream Layer. This data class can be used to define the feed configuration and use it to create the feed.
Data format is Esri Layer. Velocity will automatically handle the location for you.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
portal_item_id
str. Portal item id of the Stream layer
query
str. Stream layer query parameters default value - “1=1”
fields
str. Requested Stream layer output fields. Example - “field1,field2” default value - “*”
outSR
int. Requested output Spatial Reference default value - 4326 Additional information on Projected and Geographic Coordinate system at: https://developers.arcgis.com/rest/services-reference/enterprise/using-spatial-references.htm
data_format
str. Specify the overall format of your incoming data
Optional Argument
Description
WHERE clause
str. Query to retrieve a subset of features
Out fields
str. Comma-separated list of fields to use for processing
Output spatial reference
str. Spatial reference in which queried features should return
extent
Dict[str, Any]. JSON representing an Envelope as defined by the ArcGIS REST API’s JSON geometry schema.
# Sample Value { "spatialReference": { "latestWkid": 3857, "wkid": 102100 }, "xmin": -14784278.027601289, "ymin": 2604610.848073723, "xmax": -11451317.846255329, "ymax": 6852675.132049575 }
track_id_field
str. Name of the field from the incoming data that should be set as track_id.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with stream layer feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import StreamLayer from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant extent = { "spatialReference": { "latestWkid": 3857, "wkid": 102100 }, "xmin": "xmin", "ymin": "ymin", "xmax": "xmax", "ymax": "ymax" } stream_layer_config = StreamLayer( label="feed_name", description="feed_description", portal_item_id="portal_id", query="1=1", fields="*", outSR=4326, extent=extent ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration stream_layer_feed = feeds.create(stream_layer_config) stream_layer_feed.start() feeds.items
-
data_format
: Any = None¶
-
extent
: Optional[Dict[str, Any]] = None¶
-
fields
: str = '*'¶
-
outSR
: int = 4326¶
-
portal_item_id
: str¶
-
query
: str = '1=1'¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
Geotab¶
-
class
arcgis.realtime.velocity.feeds.
Geotab
(label: str, description: str, url: str, database: str, username: str, password: str, groups: Optional[str] = None, diagnostics_ids: Optional[str] = None, data_format: Optional[arcgis.realtime.velocity.input.format.JsonFormat] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None, run_interval: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles'))¶ Poll Geotab for events. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
url
str. The URL to authenticate Geotab.
database
str. The name of the Geotab database providing data
username
str. Specify the username to authenticate Geotab
password
str. Specify the password to authenticate Geotab
Optional Argument
Description
groups
str. List of groups to include in the feature schema. Separate multiple values with a semi-colon.
diagnostics_ids
str. List of diagnostic IDs to include in the feature schema. Separate multiple values with a semi-colon.
data_format
JsonFormat. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
run_interval
RunInterval. An instance of scheduler configuration.
default value - RunInterval(cron_expression=”0 * * ? * * *”, timezone=”America/Los_Angeles”)
- Returns
A data class with Geotab feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import Geotab from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant geotab = Geotab( label="feed_name", description="feed_description", url="Geotab_url", database="Geotab_database", username="Geotab_user_name", password="Geotab_password", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration geotab_feed = feeds.create(geotab) geotab_feed.start() feeds.items
-
data_format
: Optional[arcgis.realtime.velocity.input.format.JsonFormat] = None¶
-
database
: str¶
-
diagnostics_ids
: Optional[str] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
groups
: Optional[str] = None¶
-
password
: str¶
-
run_interval
: arcgis.realtime.velocity.feeds.run_interval.RunInterval = RunInterval(cron_expression='0 * * ? * * *', timezone='America/Los_Angeles')¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
-
url
: str¶
-
username
: str¶
Kafka¶
-
class
arcgis.realtime.velocity.feeds.
Kafka
(label: str, description: str, brokers: str, topics: str, authentication: Union[arcgis.realtime.velocity.feeds.kafka_authentication_type.NoAuth, arcgis.realtime.velocity.feeds.kafka_authentication_type.SASLPlain], consumer_group_id: Optional[str] = None, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receive events from a Kafka broker. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
brokers
str. Comma-separated list of Kafka brokers, including the port, such as host1.domain.com:9092,host2.domain.com:9092
example - “kafkaServer1.hostname.com:9092,kafkaServer2.hostname.com:9092”
topics
str. Topic to which the output will send messages.
authentication
Union[NoAuth, SASLPlain]. Kafka authentication type.
Optional Argument
Description
consumer_group_id
str. A unique string that identifies the consumer group that this feed belongs to as a consumer.
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with Kafka feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import Kafka from arcgis.realtime.velocity.feeds.kafka_authentication_type import NoAuth, SASLPlain from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant kafka_config = Kafka( label="feed_name", description="feed_description", brokers="kafka.a4iot.com:9092", topics="topicName", authentication=NoAuth(), data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration kafka_feed = feeds.create(kafka_config) kafka_feed.start() feeds.items
-
authentication
: Union[arcgis.realtime.velocity.feeds.kafka_authentication_type.NoAuth, arcgis.realtime.velocity.feeds.kafka_authentication_type.SASLPlain]¶
-
brokers
: str¶
-
consumer_group_id
: Optional[str] = None¶
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
topics
: str¶
-
track_id_field
: Optional[str] = None¶
MQTT¶
-
class
arcgis.realtime.velocity.feeds.
MQTT
(label: str, description: str, host: str, port: int, topic: str, qos_level: int = 0, username: Optional[str] = None, password: Optional[str] = None, client_id: Optional[str] = None, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receive events from an MQTT broker. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
host
str. Hostname of the of the broker prefixed with “tcp://” for non-SSL and “ssl://” for SSL connections
port
int. Port on which the MQTT broker is accessible
topic
str. Topic over which event messages stream.
qos_level
int. Quality of Service (QoS) level defines the guarantee of delivery for a specific message. In MQTT 3.1.1, a QoS of 0 means a message is delivered at most once, a QoS of 1 at least once, and a QoS of 2 exactly once.
default value - 0
Optional Argument
Description
username
str. Username for basic authentication.
password
str. Password for basic authentication.
client_id
str. Client ID ArcGIS Velocity will use to connect to the MQTT broker.
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with MQTT feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import MQTT from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant mqtt_config = MQTT( label="feed_name", description="feed_description", host="Mqtt host", port=8883, topic="Mqtt topic", qos_level=0, username="Mqtt_username", password="Mqtt_password", client_id="Mqtt_client_id", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration mqtt_feed = feeds.create(mqtt_config) mqtt_feed.start() feeds.items
-
client_id
: Optional[str] = None¶
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
host
: str¶
-
password
: Optional[str] = None¶
-
port
: int¶
-
qos_level
: int = 0¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
topic
: str¶
-
track_id_field
: Optional[str] = None¶
-
username
: Optional[str] = None¶
RabbitMQ¶
-
class
arcgis.realtime.velocity.feeds.
RabbitMQ
(label: str, description: str, host: str, port: int = 5672, use_ssl: bool = False, prefetch_count: int = 0, virtual_host: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None, queue_name: Optional[str] = None, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receive events from a RabbitMQ broker. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
host
str. Host address of the RabbitMQ Server.
example - rabbitmqbroker.centralus.cloudapp.azure.com
port
int. Port on which the RabbitMQ Server is accessible. default value - 5672
use_ssl
bool. Whether or not to use SSL in the connection. default value - False
prefetch_count
int. Prefetch count is used to specify the number of messages RabbitMQ sends. This limits how many messages are received before acknowledging a message. default value - 0
Optional Argument
Description
virtual_host
str. Virtual host of the RabbitMQ Server. example - virtualhost1
username
str. Username for server authentication.
password
str. password for server authentication.
queue_name
str. Name of the queue over which messages will be received.
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with RabbitMQ feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import RabbitMQ from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant rabbitmq_config = RabbitMQ( label="feed_name", description="feed_description", host="RabbitMQ host", username="RabbitMQ_username", password="RabbitMQ password", prefetch_count=0, queue_name="RabbitMQ_queue_name", data_format=None ) # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration rabbitmq_feed = feeds.create(rabbitmq_config) rabbitmq_feed.start() feeds.items
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
host
: str¶
-
password
: Optional[str] = None¶
-
port
: int = 5672¶
-
prefetch_count
: int = 0¶
-
queue_name
: Optional[str] = None¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
-
use_ssl
: bool = False¶
-
username
: Optional[str] = None¶
-
virtual_host
: Optional[str] = None¶
VerizonConnectReveal¶
-
class
arcgis.realtime.velocity.feeds.
VerizonConnectReveal
(label: str, description: str, username: str, password: str, data_format: Optional[arcgis.realtime.velocity.input.format.JsonFormat] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receive messages from Verizon Connect Reveal via a dedicated HTTP endpoint. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
username
str. Specify a new username.
password
str. Specify a new password.
Optional Argument
Description
data_format
Union[JsonFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with Verizon connection reveal feed configuration.
# Usage Example from arcgis.realtime.velocity.feeds import VerizonConnectReveal from arcgis.realtime.velocity.input.format import DelimitedFormat from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant verizon_connect_reveal = VerizonConnectReveal( label="feed_name", description="feed_description", username = "username", password = "password", data_format=None ) # user can't change the schema verizon_connect_reveal.set_track_id("SequenceId") # create verizon connect reveal feed # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration verizon_connect_reveal_feed = feeds.create(verizon_connect_reveal) verizon_connect_reveal_feed.start() feeds.items
-
data_format
: Optional[arcgis.realtime.velocity.input.format.JsonFormat] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
password
: str¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
-
username
: str¶
WebSocket¶
-
class
arcgis.realtime.velocity.feeds.
WebSocket
(label: str, description: str, url: str, data_format: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None, track_id_field: Optional[str] = None, geometry: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None, time: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None)¶ Receives events from a web socket. This data class can be used to define the feed configuration and use it to create the feed.
Argument
Description
label
str. Unique label for this feed instance.
description
str. Feed description.
url
str. Web Socket URL over which messages are received.
Optional Argument
Description
data_format
Union[DelimitedFormat, EsriJsonFormat, GeoJsonFormat, JsonFormat, XMLFormat]. An instance that contains the data-format configuration for this feed. Configure only allowed formats. If this is not set right during initialization, a format will be auto-detected and set from a sample of the incoming data. This sample will be fetched from the configuration provided so far in the init.
track_id_field
str. name of the field from the incoming data that should be set as track_id.
geometry
Union[XYZGeometry, SingleFieldGeometry]. An instance of geometry configuration that will be used to create geometry objects from the incoming data.
time
Union[TimeInstant, TimeInterval]. An instance of time configuration that will be used to create time info from the incoming data.
- Returns
A data class with Web Socket feed configuration configuration.
# Usage Example from arcgis.realtime.velocity.feeds import WebSocket from arcgis.realtime.velocity.input.format import DelimitedFormat from arcgis.realtime.velocity.feeds.geometry import XYZGeometry, SingleFieldGeometry from arcgis.realtime.velocity.feeds.time import TimeInterval, TimeInstant web_socket = WebSocket( label="feed_name", description="feed_description", url = "http://feed_url.com" ) # create web socket feed # use velocity object to get the FeedsManager instance feeds = velocity.feeds # use the FeedsManager object to create a feed from this feed configuration web_socket_feed = feeds.create(web_socket) web_socket_feed.start() feeds.items
-
data_format
: Optional[Union[arcgis.realtime.velocity.input.format.EsriJsonFormat, arcgis.realtime.velocity.input.format.GeoJsonFormat, arcgis.realtime.velocity.input.format.JsonFormat, arcgis.realtime.velocity.input.format.DelimitedFormat, arcgis.realtime.velocity.input.format.XMLFormat]] = None¶
-
geometry
: Optional[Union[arcgis.realtime.velocity.feeds.geometry.XYZGeometry, arcgis.realtime.velocity.feeds.geometry.SingleFieldGeometry]] = None¶
-
time
: Optional[Union[arcgis.realtime.velocity.feeds.time.TimeInstant, arcgis.realtime.velocity.feeds.time.TimeInterval]] = None¶
-
track_id_field
: Optional[str] = None¶
-
url
: str¶
NoAuth¶
-
class
arcgis.realtime.velocity.feeds.
NoAuth
¶ This dataclass is used to specify that no authentication is needed to connect to a Kafka Broker.
SASLPlain¶
-
class
arcgis.realtime.velocity.feeds.
SASLPlain
(username: str, password: str)¶ This dataclass is used to specify a SASL/Plain Authentication scenario using username and password for connecting to a Kafka Broker.
Argument
Description
username
str. Username for basic authentication
password
str. Password for basic authentication
-
password
: str¶
-
username
: str¶
-
XYZGeometry¶
-
class
arcgis.realtime.velocity.feeds.
XYZGeometry
(x_field: str, y_field: str, wkid: int, z_field: str = None, z_unit: str = None)¶ Dataclass that holds the XYZ Geometry configuration.
Argument
Description
x_field
str. Longitude field name
y_field
str. Latitude field name
wkid
int. WKID of the geometry
Optional Argument
Description
z_field
str. Z field name
z_unit
str. Options - Kilometers, Meters, Centimeters, Millimeters, Fathoms, Miles, NauticalMiles, Yards, Feet, Inches
- Returns
True if the operation is a success
# Usage Example geometry = XYZGeometry( x_field = "x", y_field = "y", wkid = 4326 )
-
wkid
: int¶
-
x_field
: str¶
-
y_field
: str¶
-
z_field
: str = None¶
-
z_unit
: str = None¶
SingleFieldGeometry¶
-
class
arcgis.realtime.velocity.feeds.
SingleFieldGeometry
(geometry_field: str, geometry_type: str, geometry_format: str, wkid: int)¶ Dataclass that holds the Single Field Geometry configuration
Argument
Description
geometry_field
str. Geometry field name esriGeometryPoint, esriGeometryPolyline, esriGeometryPolygon, esriGeometryMulti
geometry_type
str. Options - esriGeometryPoint, esriGeometryPolyline, esriGeometryPolygon, esriGeometryMulti
geometry_format
str. Options - coordinates, esrijson, geojson, wkt
wkid
int. WKID of the geometry
- Returns
True if the operation is a success
# Usage Example geometry = SingleFieldFeometry( geometry_field="geometry_field" geometry_type="esriGeometryPoint", geometry_format="esrijson", wkid=4326 )
-
geometry_field
: str¶
-
geometry_format
: str¶
-
geometry_type
: str¶
-
wkid
: int¶
TimeInstant¶
-
class
arcgis.realtime.velocity.feeds.
TimeInstant
(time_field: str, date_format: str = None)¶ Data class that holds the Instant Time configuration
Argument
Description
time_field
str. Time field name
Optional Argument
Description
date_format
str. If the field does not contain epoch value a date format can be defined for the time field
- Returns
boolean True if the operation is a success
# Usage Example time = TimeInstant(time_field="time_field")
-
date_format
: str = None¶
-
time_field
: str¶
TimeInterval¶
-
class
arcgis.realtime.velocity.feeds.
TimeInterval
(interval_start_field: str, interval_end_field: str, date_format: str = None)¶ Data class that holds the Interval Time configuration
Argument
Description
interval_start_field
str. Start-time field name for the time interval
interval_end_field
str. End-time field name for the time interval
Optional Argument
Description
date_format
str. If the field does not contain epoch value a date format can be defined for the time field
- Returns
boolean True if the operation is a success
# Usage Example time = TimeInterval( interval_start_field="start_field", interval_end_field="end_field" )
-
date_format
: str = None¶
-
interval_end_field
: str¶
-
interval_start_field
: str¶
RunInterval¶
-
class
arcgis.realtime.velocity.feeds.
RunInterval
(cron_expression: str, timezone: str = 'America/Los_Angeles')¶ Set the run interval for the feed.
Argument
Description
cron_expression
str. Default value - if nothing is specified following expression will be used to configure the feed: example - “0 * * ? * * *” - Runs every minute
Cron Expression that specifies the run interval. Please use the following link to generate the cron expression:
timezone
str. Default value - “America/Los_Angeles” Run interval timezone to use. refer: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for strings
- Returns
True if the operation is a success
# Usage Example feed.run_interval = RunInterval( cron_expression="0 * * ? * * *", timezone="America/Los_Angeles", ) # Seconds value must be between 10 and 59 # Minutes value must be between 1 and 59 # Hours value must be between 1 and 23
-
cron_expression
: str¶
-
timezone
: str = 'America/Los_Angeles'¶