Trait chirpstack_api::as_pb::external::api::device_service_server::DeviceService [−][src]
pub trait DeviceService: Send + Sync + 'static { type StreamFrameLogsStream: Stream<Item = Result<StreamDeviceFrameLogsResponse, Status>> + Send + Sync + 'static; type StreamEventLogsStream: Stream<Item = Result<StreamDeviceEventLogsResponse, Status>> + Send + Sync + 'static;}Show 16 methods
fn create<'life0, 'async_trait>(
&'life0 self,
request: Request<CreateDeviceRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn get<'life0, 'async_trait>(
&'life0 self,
request: Request<GetDeviceRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetDeviceResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn list<'life0, 'async_trait>(
&'life0 self,
request: Request<ListDeviceRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ListDeviceResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn delete<'life0, 'async_trait>(
&'life0 self,
request: Request<DeleteDeviceRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn update<'life0, 'async_trait>(
&'life0 self,
request: Request<UpdateDeviceRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn create_keys<'life0, 'async_trait>(
&'life0 self,
request: Request<CreateDeviceKeysRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn get_keys<'life0, 'async_trait>(
&'life0 self,
request: Request<GetDeviceKeysRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetDeviceKeysResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn update_keys<'life0, 'async_trait>(
&'life0 self,
request: Request<UpdateDeviceKeysRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn delete_keys<'life0, 'async_trait>(
&'life0 self,
request: Request<DeleteDeviceKeysRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn activate<'life0, 'async_trait>(
&'life0 self,
request: Request<ActivateDeviceRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn deactivate<'life0, 'async_trait>(
&'life0 self,
request: Request<DeactivateDeviceRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn get_activation<'life0, 'async_trait>(
&'life0 self,
request: Request<GetDeviceActivationRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetDeviceActivationResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn get_random_dev_addr<'life0, 'async_trait>(
&'life0 self,
request: Request<GetRandomDevAddrRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetRandomDevAddrResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn get_stats<'life0, 'async_trait>(
&'life0 self,
request: Request<GetDeviceStatsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetDeviceStatsResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn stream_frame_logs<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamDeviceFrameLogsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamFrameLogsStream>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait; fn stream_event_logs<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamDeviceEventLogsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamEventLogsStream>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
Expand description
Generated trait containing gRPC methods that should be implemented for use with DeviceServiceServer.
Associated Types
type StreamFrameLogsStream: Stream<Item = Result<StreamDeviceFrameLogsResponse, Status>> + Send + Sync + 'static
type StreamFrameLogsStream: Stream<Item = Result<StreamDeviceFrameLogsResponse, Status>> + Send + Sync + 'static
Server streaming response type for the StreamFrameLogs method.
type StreamEventLogsStream: Stream<Item = Result<StreamDeviceEventLogsResponse, Status>> + Send + Sync + 'static
type StreamEventLogsStream: Stream<Item = Result<StreamDeviceEventLogsResponse, Status>> + Send + Sync + 'static
Server streaming response type for the StreamEventLogs method.
Required methods
Create creates the given device.
Get returns the device matching the given DevEUI.
List returns the available devices.
Delete deletes the device matching the given DevEUI.
Update updates the device matching the given DevEUI.
CreateKeys creates the given device-keys.
GetKeys returns the device-keys for the given DevEUI.
UpdateKeys updates the device-keys.
DeleteKeys deletes the device-keys for the given DevEUI.
Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
Deactivate de-activates the device.
fn get_activation<'life0, 'async_trait>(
&'life0 self,
request: Request<GetDeviceActivationRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetDeviceActivationResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_activation<'life0, 'async_trait>(
&'life0 self,
request: Request<GetDeviceActivationRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetDeviceActivationResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
GetActivation returns the current activation details of the device (OTAA and ABP).
fn get_random_dev_addr<'life0, 'async_trait>(
&'life0 self,
request: Request<GetRandomDevAddrRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetRandomDevAddrResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_random_dev_addr<'life0, 'async_trait>(
&'life0 self,
request: Request<GetRandomDevAddrRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<GetRandomDevAddrResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
GetStats returns the device stats.
fn stream_frame_logs<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamDeviceFrameLogsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamFrameLogsStream>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn stream_frame_logs<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamDeviceFrameLogsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamFrameLogsStream>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
StreamFrameLogs streams the uplink and downlink frame-logs for the given DevEUI.
- These are the raw LoRaWAN frames and this endpoint is intended for debugging only.
- This endpoint does not work from a web-browser.
fn stream_event_logs<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamDeviceEventLogsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamEventLogsStream>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn stream_event_logs<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamDeviceEventLogsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamEventLogsStream>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
StreamEventLogs stream the device events (uplink payloads, ACKs, joins, errors).
- This endpoint is intended for debugging only.
- This endpoint does not work from a web-browser.