Merge pull request #14820 from paul-szczepanek-arm/events-doc

BLE: Clarify ble event docs with crossreferences
pull/14560/head^2
Martin Kojtal 2021-07-01 17:17:49 +02:00 committed by GitHub
commit d83494f54b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 125 additions and 20 deletions

View File

@ -302,7 +302,7 @@ public:
*/ */
struct EventHandler { struct EventHandler {
/** /**
* Called when an advertising device receive a scan response. * Called when an advertising device receive a scan request.
* *
* @param event Scan request event. * @param event Scan request event.
* *
@ -319,6 +319,8 @@ public:
* *
* @param event Advertising start event. * @param event Advertising start event.
* *
* @note Check event.getStatus() to see if advertising started successfully
*
* @see startAdvertising() * @see startAdvertising()
*/ */
virtual void onAdvertisingStart(const AdvertisingStartEvent &event) virtual void onAdvertisingStart(const AdvertisingStartEvent &event)
@ -333,7 +335,8 @@ public:
* *
* @param event Advertising end event. * @param event Advertising end event.
* *
* @see startAdvertising() * @note Check event.getStatus() to see if advertising ended successfully
*
* @see stopAdvertising() * @see stopAdvertising()
* @see onConnectionComplete() * @see onConnectionComplete()
*/ */
@ -409,8 +412,9 @@ public:
} }
/** /**
* Called when connection attempt ends or an advertising device has been * Called when connection attempt ends. Check event.getStatus() to see if connection
* connected. * was established. If this device is the peripheral and it was advertising this will
* end the advertising set which will also create the onAdvertisingEnd event.
* *
* @see startAdvertising() * @see startAdvertising()
* @see connect() * @see connect()
@ -431,8 +435,8 @@ public:
* *
* @version 4.1+. * @version 4.1+.
* *
* @note This event is not generated if connection parameters update * @note This event will only be produced if manageConnectionParametersUpdateRequest() was called
* is managed by the middleware. * with true. Otherwise the stack will handle the request and no event will be generated.
* *
* @see manageConnectionParametersUpdateRequest() * @see manageConnectionParametersUpdateRequest()
* @see acceptConnectionParametersUpdate() * @see acceptConnectionParametersUpdate()
@ -553,6 +557,8 @@ public:
/** /**
* Function invoked when the privacy subsystem has been enabled and is * Function invoked when the privacy subsystem has been enabled and is
* ready to be used. * ready to be used.
*
* @see enablePrivacy()
*/ */
virtual void onPrivacyEnabled() virtual void onPrivacyEnabled()
{ {
@ -1087,6 +1093,7 @@ public:
* @see EventHandler::onUpdateConnectionParametersRequest when a central * @see EventHandler::onUpdateConnectionParametersRequest when a central
* receives a request to update the connection parameters. * receives a request to update the connection parameters.
* *
* @see onUpdateConnectionParametersRequest
* @see acceptConnectionParametersUpdate to accept the request. * @see acceptConnectionParametersUpdate to accept the request.
* @see rejectConnectionParametersUpdate to reject the request. * @see rejectConnectionParametersUpdate to reject the request.
*/ */
@ -1286,6 +1293,8 @@ public:
* false to disable it. * false to disable it.
* *
* @return BLE_ERROR_NONE in case of success or an appropriate error code. * @return BLE_ERROR_NONE in case of success or an appropriate error code.
*
* @see EventHandler::onPrivacyEnabled()
*/ */
ble_error_t enablePrivacy(bool enable); ble_error_t enablePrivacy(bool enable);
@ -1433,7 +1442,7 @@ public:
*/ */
ble_error_t reset(); ble_error_t reset();
/** /**
* Register a Gap shutdown event handler. * Register a Gap shutdown event handler.
* *
* The handler is called when the Gap instance is about to shut down. * The handler is called when the Gap instance is about to shut down.

View File

@ -107,6 +107,8 @@ public:
* *
* @param connectionHandle The handle of the connection that changed the size. * @param connectionHandle The handle of the connection that changed the size.
* @param attMtuSize * @param attMtuSize
*
* @see negotiateAttMtu()
*/ */
virtual void onAttMtuChange( virtual void onAttMtuChange(
ble::connection_handle_t connectionHandle, ble::connection_handle_t connectionHandle,

View File

@ -112,6 +112,8 @@ public:
* *
* @param connectionHandle The handle of the connection that changed the size. * @param connectionHandle The handle of the connection that changed the size.
* @param attMtuSize * @param attMtuSize
*
* @see negotiateAttMtu()
*/ */
virtual void onAttMtuChange( virtual void onAttMtuChange(
ble::connection_handle_t connectionHandle, ble::connection_handle_t connectionHandle,
@ -162,14 +164,14 @@ public:
/** /**
* Function invoked when the GattServer instance is about * Function invoked when the GattServer instance is about
* to be shut down. This can result in a call to reset() or BLE::reset(). * to be shut down. This can be the result of a call to reset() or BLE::reset().
*/ */
virtual void onShutdown(const GattServer &server) { virtual void onShutdown(const GattServer &server) {
(void)server; (void)server;
} }
/** /**
* Function invoked when the client has subscribed to characteristic updates * Function invoked when the client has subscribed to characteristic updates.
* *
* @note params has a temporary scope and should be copied by the * @note params has a temporary scope and should be copied by the
* application if needed later * application if needed later
@ -179,7 +181,7 @@ public:
} }
/** /**
* Function invoked when the client has unsubscribed to characteristic updates * Function invoked when the client has unsubscribed from characteristic updates.
* *
* @note params has a temporary scope and should be copied by the * @note params has a temporary scope and should be copied by the
* application if needed later * application if needed later
@ -303,9 +305,11 @@ public:
* GattServer state. * GattServer state.
* *
* @note This function is meant to be overridden in the platform-specific * @note This function is meant to be overridden in the platform-specific
* subclass. Overides must call the parent function before any cleanup. * subclass. Overrides must call the parent function before any cleanup.
* *
* @return BLE_ERROR_NONE on success. * @return BLE_ERROR_NONE on success.
*
* @see EventHandler::onShutdown()
*/ */
ble_error_t reset(); ble_error_t reset();
@ -401,6 +405,9 @@ public:
* *
* @return BLE_ERROR_NONE if the attribute value has been successfully * @return BLE_ERROR_NONE if the attribute value has been successfully
* updated. * updated.
*
* @see EventHandler::onDataSent(), this will only be triggered if there are
* client subscribed and the localOnly parameter is set to false.
*/ */
ble_error_t write( ble_error_t write(
GattAttribute::Handle_t attributeHandle, GattAttribute::Handle_t attributeHandle,
@ -429,6 +436,9 @@ public:
* *
* @return BLE_ERROR_NONE if the attribute value has been successfully * @return BLE_ERROR_NONE if the attribute value has been successfully
* updated. * updated.
*
* @see EventHandler::onDataSent(), this will only be triggered if there are
* client subscribed and the localOnly parameter is set to false.
*/ */
ble_error_t write( ble_error_t write(
ble::connection_handle_t connectionHandle, ble::connection_handle_t connectionHandle,
@ -448,6 +458,8 @@ public:
* *
* @return BLE_ERROR_NONE if the connection and handle are found. False * @return BLE_ERROR_NONE if the connection and handle are found. False
* otherwise. * otherwise.
*
* @see EventHandler::onDataSent()
*/ */
ble_error_t areUpdatesEnabled( ble_error_t areUpdatesEnabled(
const GattCharacteristic &characteristic, const GattCharacteristic &characteristic,
@ -466,6 +478,8 @@ public:
* *
* @return BLE_ERROR_NONE if the connection and handle are found. False * @return BLE_ERROR_NONE if the connection and handle are found. False
* otherwise. * otherwise.
*
* @see EventHandler::onDataSent()
*/ */
ble_error_t areUpdatesEnabled( ble_error_t areUpdatesEnabled(
ble::connection_handle_t connectionHandle, ble::connection_handle_t connectionHandle,

View File

@ -249,10 +249,17 @@ public:
#if BLE_ROLE_PERIPHERAL #if BLE_ROLE_PERIPHERAL
/** /**
* Request application to accept or reject pairing. Application should respond by * Called when a pairing request is received. Application should respond by
* calling the appropriate function: acceptPairingRequest or cancelPairingRequest * calling the appropriate function: acceptPairingRequest() or cancelPairingRequest().
* This event will only trigger if setPairingRequestAuthorisation() was called with true.
* Otherwise the stack will handle the requests.
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
*
* @see requestPairing()
* @see requestAuthentication()
* @see setLinkEncryption()
* @see setPairingRequestAuthorisation()
*/ */
virtual void pairingRequest(ble::connection_handle_t connectionHandle) { virtual void pairingRequest(ble::connection_handle_t connectionHandle) {
(void)connectionHandle; (void)connectionHandle;
@ -264,6 +271,9 @@ public:
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
* @param[in] result result of the pairing indicating success or reason for failure * @param[in] result result of the pairing indicating success or reason for failure
*
* @see acceptPairingRequest()
* @see requestPairing()
*/ */
virtual void pairingResult(ble::connection_handle_t connectionHandle, SecurityCompletionStatus_t result) { virtual void pairingResult(ble::connection_handle_t connectionHandle, SecurityCompletionStatus_t result) {
(void)connectionHandle; (void)connectionHandle;
@ -277,6 +287,8 @@ public:
* @param[in] connectionHandle Connection handle. * @param[in] connectionHandle Connection handle.
* @param[in] peer_address Peer address that has been saved by the security database, NULL it not found. * @param[in] peer_address Peer address that has been saved by the security database, NULL it not found.
* @param[in] address_is_public Address type, true if public. Invalid if peer_address NULL. * @param[in] address_is_public Address type, true if public. Invalid if peer_address NULL.
*
* @see getPeerIdentity()
*/ */
virtual void peerIdentity(ble::connection_handle_t connectionHandle, virtual void peerIdentity(ble::connection_handle_t connectionHandle,
const address_t *peer_address, const address_t *peer_address,
@ -294,6 +306,8 @@ public:
* Deliver the requested whitelist to the application. * Deliver the requested whitelist to the application.
* *
* @param[in] whitelist pointer to the whitelist filled with entries based on bonding information * @param[in] whitelist pointer to the whitelist filled with entries based on bonding information
*
* @see generateWhitelistFromBondTable()
*/ */
virtual void whitelistFromBondTable(::ble::whitelist_t* whitelist) { virtual void whitelistFromBondTable(::ble::whitelist_t* whitelist) {
(void)whitelist; (void)whitelist;
@ -304,10 +318,14 @@ public:
// //
/** /**
* Inform the device of the encryption state of a given link. * Triggered by change of encryption state on a link. This change can be initiated
* locally or by the remote peer.
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
* @param[in] result encryption state of the link * @param[in] result encryption state of the link
*
* @see requestAuthentication()
* @see setLinkEncryption()
*/ */
virtual void linkEncryptionResult(ble::connection_handle_t connectionHandle, ble::link_encryption_t result) { virtual void linkEncryptionResult(ble::connection_handle_t connectionHandle, ble::link_encryption_t result) {
(void)connectionHandle; (void)connectionHandle;
@ -319,10 +337,14 @@ public:
// //
/** /**
* Display the given passkey on the local device. * Triggered during pairing based on IO capabilities of devices. Display the given
* passkey on the local device for user verification.
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
* @param[in] passkey 6 digit passkey to be displayed * @param[in] passkey 6 digit passkey to be displayed
*
* @see init()
* @see setIoCapability()
*/ */
#if BLE_PASSKEY_DISPLAY_REVERSED_DIGITS_DEPRECATION #if BLE_PASSKEY_DISPLAY_REVERSED_DIGITS_DEPRECATION
MBED_DEPRECATED_SINCE("mbed-os-6.8.0", "This returns the passkey in reverse order. Please set the config option ble.ble-passkey-display-reversed-digits-deprecation in your mbed_app.json override section to false. This will then return the passkey in the correct order.") MBED_DEPRECATED_SINCE("mbed-os-6.8.0", "This returns the passkey in reverse order. Please set the config option ble.ble-passkey-display-reversed-digits-deprecation in your mbed_app.json override section to false. This will then return the passkey in the correct order.")
@ -341,6 +363,10 @@ public:
* by supplying the confirmation using the confirmationEntered function. * by supplying the confirmation using the confirmationEntered function.
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
*
* @see init()
* @see setIoCapability()
* @see confirmationEntered()
*/ */
virtual void confirmationRequest(ble::connection_handle_t connectionHandle) { virtual void confirmationRequest(ble::connection_handle_t connectionHandle) {
(void)connectionHandle; (void)connectionHandle;
@ -352,6 +378,10 @@ public:
* proceed by supplying the passkey through the passkeyEntered function. * proceed by supplying the passkey through the passkeyEntered function.
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
*
* @see init()
* @see setIoCapability()
* @see passkeyEntered()
*/ */
virtual void passkeyRequest(ble::connection_handle_t connectionHandle) { virtual void passkeyRequest(ble::connection_handle_t connectionHandle) {
(void)connectionHandle; (void)connectionHandle;
@ -360,9 +390,13 @@ public:
#if BLE_FEATURE_SECURE_CONNECTIONS #if BLE_FEATURE_SECURE_CONNECTIONS
/** /**
* Notify the application that a key was pressed by the peer during passkey entry. * Notify the application that a key was pressed by the peer during passkey entry.
* This is only informative to provide feedback to the user. These events will only
* be triggered if you call setKeypressNotification()
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
* @param[in] keypress type of keypress event * @param[in] keypress type of keypress event
*
* @see setKeypressNotification()
*/ */
virtual void keypressNotification(ble::connection_handle_t connectionHandle, ble::Keypress_t keypress) { virtual void keypressNotification(ble::connection_handle_t connectionHandle, ble::Keypress_t keypress) {
(void)connectionHandle; (void)connectionHandle;
@ -371,16 +405,20 @@ public:
#endif // BLE_FEATURE_SECURE_CONNECTIONS #endif // BLE_FEATURE_SECURE_CONNECTIONS
/** /**
* Indicate to the application it needs to return legacy pairing OOB to the stack. * Indicate to the application it needs to return legacy pairing OOB to the stack
* using legacyPairingOobReceived().
* *
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
*
* @see legacyPairingOobReceived()
*/ */
virtual void legacyPairingOobRequest(ble::connection_handle_t connectionHandle) { virtual void legacyPairingOobRequest(ble::connection_handle_t connectionHandle) {
(void)connectionHandle; (void)connectionHandle;
} }
/** /**
* Indicate that the application needs to send legacy pairing OOB data to the peer. * Indicate that the application needs to send legacy pairing OOB data to the peer through
* another communication channel.
* *
* @param[in] address address that will be used in the pairing * @param[in] address address that will be used in the pairing
* @param[in] temporaryKey temporary key to be used in legacy pairing * @param[in] temporaryKey temporary key to be used in legacy pairing
@ -398,6 +436,8 @@ public:
* @param[in] random random number used to generate the confirmation * @param[in] random random number used to generate the confirmation
* @param[in] confirm confirmation value to be use for authentication * @param[in] confirm confirmation value to be use for authentication
* in secure connections pairing * in secure connections pairing
*
* @see generateOOB()
*/ */
virtual void oobGenerated(const ble::address_t *address, virtual void oobGenerated(const ble::address_t *address,
const ble::oob_lesc_value_t *random, const ble::oob_lesc_value_t *random,
@ -418,6 +458,8 @@ public:
* @param[in] connectionHandle connection connectionHandle * @param[in] connectionHandle connection connectionHandle
* @param[in] csrk signing key, pointer only valid during call * @param[in] csrk signing key, pointer only valid during call
* @param[in] authenticated indicates if the signing key is authenticated * @param[in] authenticated indicates if the signing key is authenticated
*
* @see getSigningKey()
*/ */
virtual void signingKey(ble::connection_handle_t connectionHandle, const ble::csrk_t *csrk, bool authenticated) { virtual void signingKey(ble::connection_handle_t connectionHandle, const ble::csrk_t *csrk, bool authenticated) {
(void)connectionHandle; (void)connectionHandle;
@ -545,6 +587,8 @@ public:
* *
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::pairingResult()
*/ */
ble_error_t requestPairing(ble::connection_handle_t connectionHandle); ble_error_t requestPairing(ble::connection_handle_t connectionHandle);
#endif // BLE_ROLE_CENTRAL #endif // BLE_ROLE_CENTRAL
@ -556,6 +600,8 @@ public:
* *
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::pairingRequest()
*/ */
ble_error_t acceptPairingRequest(ble::connection_handle_t connectionHandle); ble_error_t acceptPairingRequest(ble::connection_handle_t connectionHandle);
#endif // BLE_ROLE_PERIPHERAL #endif // BLE_ROLE_PERIPHERAL
@ -566,6 +612,8 @@ public:
* *
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::pairingRequest()
*/ */
ble_error_t cancelPairingRequest(ble::connection_handle_t connectionHandle); ble_error_t cancelPairingRequest(ble::connection_handle_t connectionHandle);
@ -578,6 +626,10 @@ public:
* to continue with pairing by calling acceptPairingRequest * to continue with pairing by calling acceptPairingRequest
* or cancelPairingRequest if the user wishes to reject it. * or cancelPairingRequest if the user wishes to reject it.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::pairingRequest()
* @see EventHandler::acceptPairingRequest()
* @see EventHandler::cancelPairingRequest()
*/ */
ble_error_t setPairingRequestAuthorisation(bool required = true); ble_error_t setPairingRequestAuthorisation(bool required = true);
@ -586,6 +638,8 @@ public:
* *
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::peerIdentity()
*/ */
ble_error_t getPeerIdentity(ble::connection_handle_t connectionHandle); ble_error_t getPeerIdentity(ble::connection_handle_t connectionHandle);
@ -595,7 +649,7 @@ public:
#if BLE_FEATURE_SECURE_CONNECTIONS #if BLE_FEATURE_SECURE_CONNECTIONS
/** /**
* Allow of disallow the use of legacy pairing in case the application only wants * Allow or disallow the use of legacy pairing in case the application only wants
* to force the use of Secure Connections. If legacy pairing is disallowed and either * to force the use of Secure Connections. If legacy pairing is disallowed and either
* side doesn't support Secure Connections the pairing will fail. * side doesn't support Secure Connections the pairing will fail.
* *
@ -627,21 +681,29 @@ public:
/** /**
* Set the passkey that is displayed on the local device instead of using * Set the passkey that is displayed on the local device instead of using
* a randomly generated one * a randomly generated one. This will be used during pairing
* *
* @param[in] passkey ASCII string of 6 digits * @param[in] passkey ASCII string of 6 digits
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::passkeyRequest() - this will be called on the peer which will have
* to use passkeyEntered() to send this passkey back to us.
*/ */
ble_error_t setDisplayPasskey(const Passkey_t passkey); ble_error_t setDisplayPasskey(const Passkey_t passkey);
/** /**
* Set the security mode on a connection. Useful for elevating the security mode * Set the security mode on a connection. Useful for elevating the security mode
* once certain conditions are met, e.g., a particular service is found. * once certain conditions are met, e.g., a particular service is found.
* This call is a request for the stack to take appropriate action and may result
* in (re)pairing or encryption. Wait for events in your registered EventHandler.
* *
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @param[in] securityMode Requested security mode. * @param[in] securityMode Requested security mode.
* *
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::linkEncryptionResult()
* @see EventHandler::pairingResult()
*/ */
ble_error_t setLinkSecurity(ble::connection_handle_t connectionHandle, SecurityMode_t securityMode); ble_error_t setLinkSecurity(ble::connection_handle_t connectionHandle, SecurityMode_t securityMode);
@ -699,6 +761,8 @@ public:
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @param[in] encryption encryption state requested * @param[in] encryption encryption state requested
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::linkEncryptionResult()
*/ */
ble_error_t setLinkEncryption(ble::connection_handle_t connectionHandle, ble::link_encryption_t encryption); ble_error_t setLinkEncryption(ble::connection_handle_t connectionHandle, ble::link_encryption_t encryption);
@ -735,6 +799,9 @@ public:
* *
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::linkEncryptionResult()
* @see EventHandler::pairingResult()
*/ */
ble_error_t requestAuthentication(ble::connection_handle_t connectionHandle); ble_error_t requestAuthentication(ble::connection_handle_t connectionHandle);
@ -756,6 +823,8 @@ public:
* address will be returned along with the rest of the OOB data when generation * address will be returned along with the rest of the OOB data when generation
* is complete. Using an invalid address is illegal. * is complete. Using an invalid address is illegal.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::oobGenerated()
*/ */
ble_error_t generateOOB(const ble::address_t *address); ble_error_t generateOOB(const ble::address_t *address);
@ -791,6 +860,8 @@ public:
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @param[in] confirmation True value indicates the passkey displayed matches. * @param[in] confirmation True value indicates the passkey displayed matches.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::confirmationRequest()
*/ */
ble_error_t confirmationEntered(ble::connection_handle_t connectionHandle, bool confirmation); ble_error_t confirmationEntered(ble::connection_handle_t connectionHandle, bool confirmation);
#endif // BLE_FEATURE_SECURE_CONNECTIONS #endif // BLE_FEATURE_SECURE_CONNECTIONS
@ -801,6 +872,8 @@ public:
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @param[in] passkey ASCII string of digits entered by the user. * @param[in] passkey ASCII string of digits entered by the user.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::passkeyRequest()
*/ */
ble_error_t passkeyEntered(ble::connection_handle_t connectionHandle, Passkey_t passkey); ble_error_t passkeyEntered(ble::connection_handle_t connectionHandle, Passkey_t passkey);
@ -812,6 +885,8 @@ public:
* @param[in] connectionHandle Handle to identify the connection. * @param[in] connectionHandle Handle to identify the connection.
* @param[in] keypress Type of keypress event. * @param[in] keypress Type of keypress event.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::keypressNotification() - this will be trigger on the peer
*/ */
ble_error_t sendKeypressNotification(ble::connection_handle_t connectionHandle, ble::Keypress_t keypress); ble_error_t sendKeypressNotification(ble::connection_handle_t connectionHandle, ble::Keypress_t keypress);
#endif // BLE_FEATURE_SECURE_CONNECTIONS #endif // BLE_FEATURE_SECURE_CONNECTIONS
@ -822,12 +897,15 @@ public:
* @param[in] address address of the peer device this data comes from * @param[in] address address of the peer device this data comes from
* @param[in] tk pointer to out of band data received containing the temporary key. * @param[in] tk pointer to out of band data received containing the temporary key.
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see legacyPairingOobRequest
*/ */
ble_error_t legacyPairingOobReceived(const ble::address_t *address, const ble::oob_tk_t *tk); ble_error_t legacyPairingOobReceived(const ble::address_t *address, const ble::oob_tk_t *tk);
#if BLE_FEATURE_SECURE_CONNECTIONS #if BLE_FEATURE_SECURE_CONNECTIONS
/** /**
* Supply the stack with the OOB data for secure connections. * Supply the stack with the OOB data for secure connections. This data is generated on the peer
* and is received through another communication channel.
* *
* @param[in] address address of the peer device this data comes from * @param[in] address address of the peer device this data comes from
* @param[in] random random number used to generate the confirmation * @param[in] random random number used to generate the confirmation
@ -853,6 +931,8 @@ public:
* (provide MITM protection). * (provide MITM protection).
* *
* @return BLE_ERROR_NONE or appropriate error code indicating the failure reason. * @return BLE_ERROR_NONE or appropriate error code indicating the failure reason.
*
* @see EventHandler::signingKey()
*/ */
ble_error_t getSigningKey(ble::connection_handle_t connectionHandle, bool authenticated); ble_error_t getSigningKey(ble::connection_handle_t connectionHandle, bool authenticated);
#endif // BLE_FEATURE_SIGNING #endif // BLE_FEATURE_SIGNING