gRPC

gRPC

gRPC is a high-performance, open-source remote procedure call (RPC) framework. Your application requests events from the Firehose gRPC channel by using a server-streaming RPC call. Cisco Spaces sends a continuous sequence of Protocol Buffer binary messages over the connection.

gRPC supports code generation for several programming languages. You can use strongly typed clients without implementing serialization.

The Cisco Spaces Firehose API gRPC service definition is provided as a Protocol Buffers (.proto) file. Compile the file by using the Protocol Buffers compiler for your programming language. gRPC operates over HTTP/2, and events are encoded as Protocol Buffer binary messages.

For more information, refer to gRPC Streaming in the Cisco Spaces Firehose documentation.


Note


The Cisco SpacesFirehose API maintains a rolling window of recent events for the partner. The width of this window is unspecified and is subject to change; providing timestamps within the preceding hour is expected to work.


Multiple receiver and partitions

These guidelines to configure multi-receiver deployments for your application:

  • If your application uses multiple receivers, include the min_partition and max_partition values in the EventsStreamRequest.

  • Your application can have up to 12 receivers.

For example, if you have 4 receivers within your application, you would have these:

  • Receiver #1 with min_partition = 1 and max_partition = 3

  • Receiver #2 with min_partition = 4 and max_partition = 6

Receiver partition assignments

Configure your receivers with these partition assignments:

  • Receiver #3 with min_partition = 7 and max_partition = 9

  • Receiver #4 with min_partition = 10 and max_partition = 12

Regional endpoints

Use the following endpoint to connect to the Firehose gRPC channel in the Cisco Spaces Federal environment.

Table 1.

Region

Host

Port

US

partners.spaces-gov.cisco

443