gpg::NearbyConnections

#include <nearby_connections.h>

Es una API que se usa para crear conexiones y comunicarse entre apps en la misma red local.

Resumen

Constructores y destructores

NearbyConnections()
~NearbyConnections()

Funciones públicas

AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
void
Acepta una solicitud de conexión.
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
void
Acepta una solicitud de conexión.
Disconnect(const std::string & remote_endpoint_id)
void
Se desconecta del extremo remoto con el ID especificado.
RejectConnectionRequest(const std::string & remote_endpoint_id)
void
Rechaza una solicitud de conexión.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
void
Solicita que se establezca una conexión con un extremo remoto.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
void
Solicita una conexión a un extremo remoto.
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
Envía un mensaje confiable al extremo remoto con el ID especificado.
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
Envía un mensaje confiable a los extremos remotos con los IDs especificados.
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
Envía un mensaje poco confiable al extremo remoto con el ID especificado.
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
Envía un mensaje poco confiable a los extremos remotos con los ID especificados.
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
void
Comienza a anunciar un extremo para una app local.
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
void
Encuentra extremos remotos con el ID de servicio especificado y, luego, invoca al objeto de escucha repetidamente mientras la app encuentra y pierde extremos.
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
void
Encuentra extremos remotos con el ID de servicio especificado.
Stop()
void
Se desconecta de todos los extremos remotos y detiene cualquier publicidad o descubrimiento que se esté llevando a cabo.
StopAdvertising()
void
Deja de anunciar el extremo local.
StopDiscovery(const std::string & service_id)
void
Deja de encontrar extremos remotos para un ID de servicio especificado con anterioridad.

Clases

gpg::NearbyConnections::Builder

Builder que se usa para construir objetos NearbyConnections.

Funciones públicas

AcceptConnectionRequest

void AcceptConnectionRequest(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  IMessageListener *listener
)

Acepta una solicitud de conexión.

Luego, la app puede enviar mensajes al extremo especificado y recibirlos de este. Puede hacerlo mediante listener hasta que la app se desconecte del otro extremo. remote_endpoint_id debe coincidir con el ID del extremo remoto que solicitó la conexión. ConnectionRequestCallback proporciona ese ID. payload puede retener un mensaje para enviarlo junto con la respuesta de la conexión. listener especifica un objeto de escucha que recibirá notificaciones de eventos para esta conexión.

AcceptConnectionRequest

void AcceptConnectionRequest(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  MessageListenerHelper helper
)

Acepta una solicitud de conexión.

Esta función solo difiere de AcceptConnectionRequest en que usa MessageListenerHelper, en lugar de IMessageListener.

Desconectar

void Disconnect(
  const std::string & remote_endpoint_id
)

Se desconecta del extremo remoto con el ID especificado.

NearbyConnections

 NearbyConnections()

RejectConnectionRequest

void RejectConnectionRequest(
  const std::string & remote_endpoint_id
)

Rechaza una solicitud de conexión.

remote_endpoint_id debe coincidir con el ID del extremo remoto que solicitó la conexión. ConnectionRequestCallback proporciona ese ID.

SendConnectionRequest

void SendConnectionRequest(
  const std::string & name,
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  ConnectionResponseCallback callback,
  IMessageListener *listener
)

Solicita que se establezca una conexión con un extremo remoto.

name es un nombre que la app puede mostrar a los usuarios del otro dispositivo para identificar este extremo. Si especificas una string vacía, se usa el nombre del dispositivo. remote_endpoint_id es el ID del extremo remoto al que esta app envía una solicitud de conexión. payload puede retener un mensaje personalizado para enviarlo junto con la solicitud de conexión. Como alternativa, en lugar de una carga útil, tu app puede pasar un vector de bytes vacío. Esta función invoca la devolución de llamada especificada en respuesta a la solicitud. Si la operación se realiza correctamente, se mostrará la respuesta “Connection Accepted” o “Connection Rechazada”. De lo contrario, genera un mensaje de error. En el caso de una conexión aceptada, la app puede enviar mensajes al extremo remoto, y la app invoca al objeto de escucha especificado cuando recibe un mensaje o se desconecta del extremo remoto.

SendConnectionRequest

void SendConnectionRequest(
  const std::string & name,
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  ConnectionResponseCallback callback,
  MessageListenerHelper helper
)

Solicita una conexión a un extremo remoto.

Difiere de SendConnectionRequest solo en que usa MessageListenerHelper en lugar de IMessageListener.

SendReliableMessage

void SendReliableMessage(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload
)

Envía un mensaje confiable al extremo remoto con el ID especificado.

SendReliableMessage

void SendReliableMessage(
  const std::vector< std::string > & remote_endpoint_ids,
  const std::vector< uint8_t > & payload
)

Envía un mensaje confiable a los extremos remotos con los IDs especificados.

SendUnreliableMessage

void SendUnreliableMessage(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload
)

Envía un mensaje poco confiable al extremo remoto con el ID especificado.

SendUnreliableMessage

void SendUnreliableMessage(
  const std::vector< std::string > & remote_endpoint_ids,
  const std::vector< uint8_t > & payload
)

Envía un mensaje poco confiable a los extremos remotos con los ID especificados.

StartAdvertising

void StartAdvertising(
  const std::string & name,
  const std::vector< AppIdentifier > & app_identifiers,
  Duration duration,
  StartAdvertisingCallback start_advertising_callback,
  ConnectionRequestCallback request_callback
)

Comienza a anunciar un extremo para una app local.

name puede ser un nombre que la app mostrará a los usuarios para identificar el extremo. Si especificas una string vacía, se usa el nombre del dispositivo. Si se especifica, app_identifiers especifica cómo instalar o iniciar esta app en diferentes plataformas. duration especifica la duración (en milisegundos) durante la cual se ejecutará el anuncio, a menos que la app invoque a StopAdvertising() o Stop() antes de que venza la duración. Si el valor de duration es igual a gpg::Duration::zero(), la publicidad continuará de forma indefinida hasta que la app llame a StopAdvertising(). Esta función invoca a start_advertising_callback cuando la publicidad se inicia o falla. Esta devolución de llamada recibe la información del extremo si se tiene éxito o un código de error si se produce un error. Esta función invoca a request_callback cuando un extremo remoto solicita una conexión con el extremo de la app. Esta función continúa anunciando la presencia de este extremo hasta que la app llame a StopAdvertising o hasta que transcurra la duración. Si ya se está anunciando un extremo, esta llamada falla.

StartDiscovery

void StartDiscovery(
  const std::string & service_id,
  Duration duration,
  IEndpointDiscoveryListener *listener
)

Encuentra extremos remotos con el ID de servicio especificado y, luego, invoca al objeto de escucha repetidamente mientras la app encuentra y pierde extremos.

Continúa haciéndolo hasta que la app invoque StopDiscovery con el ID de servicio especificado. service_id debe coincidir con el valor que proporcionan las apps cuando publican anuncios a través de StartAdvertising. duration especifica la duración máxima (en milisegundos) para que se ejecute el descubrimiento (puede detenerse antes si la app invoca a StopDiscovery()). Si el valor de Duration es igual a gpg::Duration::zero(), la detección continúa indefinidamente hasta que la app llame a StopDiscovery() o Stop(). Si ya hay un objeto de escucha registrado para encontrar extremos para el ID de servicio especificado, esta llamada falla.

StartDiscovery

void StartDiscovery(
  const std::string & service_id,
  Duration duration,
  EndpointDiscoveryListenerHelper helper
)

Encuentra extremos remotos con el ID de servicio especificado.

Esta función solo difiere de StartDiscovery en que usa EndpointDiscoveryListenerHelper en lugar de IEndpointDiscoveryListener.

Detener

void Stop()

Se desconecta de todos los extremos remotos y detiene cualquier publicidad o descubrimiento que se esté llevando a cabo.

Borra el estado interno.

StopAdvertising

void StopAdvertising()

Deja de anunciar el extremo local.

Si lo haces, NO se verán afectadas las conexiones existentes.

StopDiscovery

void StopDiscovery(
  const std::string & service_id
)

Deja de encontrar extremos remotos para un ID de servicio especificado con anterioridad.

~NearbyConnections

 ~NearbyConnections()