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 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 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

Server streaming response type for the StreamFrameLogs method.

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.

GetActivation returns the current activation details of the device (OTAA and ABP).

GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.

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.

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.

Implementors