gpg::NearbyConnections

#include <nearby_connections.h>

एक ही लोकल नेटवर्क पर ऐप्लिकेशन के बीच कनेक्शन बनाने और कम्युनिकेट करने के लिए इस्तेमाल किया जाने वाला एपीआई.

खास जानकारी

कंस्ट्रक्टर और डिस्ट्रक्टर

NearbyConnections()
~NearbyConnections()

सार्वजनिक फ़ंक्शन

AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
void
कनेक्ट करने का अनुरोध स्वीकार करता है.
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
void
कनेक्ट करने का अनुरोध स्वीकार करता है.
Disconnect(const std::string & remote_endpoint_id)
void
बताए गए आईडी के ज़रिए रिमोट एंडपॉइंट से डिसकनेक्ट होता है.
RejectConnectionRequest(const std::string & remote_endpoint_id)
void
किसी कनेक्शन के अनुरोध को अस्वीकार करता है.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
void
रिमोट एंडपॉइंट की मदद से कनेक्शन बनाने का अनुरोध करता है.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
void
रिमोट एंडपॉइंट से कनेक्शन का अनुरोध करता है.
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
दिए गए आईडी के साथ रिमोट एंडपॉइंट पर एक भरोसेमंद मैसेज भेजता है.
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
इससे तय किए गए आईडी वाले रिमोट एंडपॉइंट पर भरोसेमंद मैसेज भेजा जाता है.
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
बताए गए आईडी वाले रिमोट एंडपॉइंट पर गैर-भरोसेमंद मैसेज भेजता है.
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
बताए गए आईडी वाले रिमोट एंडपॉइंट को गैर-भरोसेमंद मैसेज भेजता है.
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
void
लोकल ऐप्लिकेशन के लिए, एंडपॉइंट का विज्ञापन दिखाना शुरू करता है.
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
void
दिए गए सर्विस आईडी के साथ रिमोट एंडपॉइंट ढूंढता है. साथ ही, लिसनर को बार-बार कॉल करता है, क्योंकि ऐप्लिकेशन, एंडपॉइंट को ढूंढता है और उन्हें खो देता है.
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
void
दिए गए सेवा आईडी वाले रिमोट एंडपॉइंट ढूंढता है.
Stop()
void
सभी रिमोट एंडपॉइंट से डिसकनेक्ट होता है; होने वाले किसी भी विज्ञापन या सुझाव पर रोक लगाती है.
StopAdvertising()
void
लोकल एंडपॉइंट का विज्ञापन बंद कर देता है.
StopDiscovery(const std::string & service_id)
void
पहले से तय किए गए सेवा आईडी के लिए, रिमोट एंडपॉइंट ढूंढना बंद करता है.

क्लास

gpg::NearbyConnections::Builder

Builder क्लास का इस्तेमाल, NearbyConnections ऑब्जेक्ट को बनाने के लिए किया जाता है.

सार्वजनिक फ़ंक्शन

AcceptConnectionRequest

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

कनेक्ट करने का अनुरोध स्वीकार करता है.

इसके बाद, ऐप्लिकेशन तय किए गए एंडपॉइंट पर मैसेज भेज सकता है और उनसे मैसेज रिसीव कर सकता है. यह listener का इस्तेमाल करके, तब तक ऐसा कर सकता है, जब तक ऐप्लिकेशन दूसरे एंडपॉइंट से डिसकनेक्ट नहीं हो जाता. remote_endpoint_id का आईडी, उस रिमोट एंडपॉइंट के आईडी से मेल खाना चाहिए जिससे कनेक्शन का अनुरोध किया गया है. ConnectionRequestCallback से यह आईडी मिलता है. payload, कनेक्शन के जवाब के साथ मैसेज भेजने के लिए उसे होल्ड कर सकता है. listener उस लिसनर के बारे में बताता है जिसे इस कनेक्शन के इवेंट की सूचना दी जाएगी.

AcceptConnectionRequest

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

कनेक्ट करने का अनुरोध स्वीकार करता है.

यह फ़ंक्शन सिर्फ़ AcceptConnectionRequest से अलग है, क्योंकि यह IMessageListener के बजाय MessageListenerHelper का इस्तेमाल करता है.

डिसकनेक्ट करें

void Disconnect(
  const std::string & remote_endpoint_id
)

बताए गए आईडी के ज़रिए रिमोट एंडपॉइंट से डिसकनेक्ट होता है.

NearbyConnections

 NearbyConnections()

RejectConnectionRequest

void RejectConnectionRequest(
  const std::string & remote_endpoint_id
)

किसी कनेक्शन के अनुरोध को अस्वीकार करता है.

remote_endpoint_id का आईडी, उस रिमोट एंडपॉइंट के आईडी से मेल खाना चाहिए जिससे कनेक्शन का अनुरोध किया गया है. ConnectionRequestCallback से यह आईडी मिलता है.

SendConnectionRequest

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

रिमोट एंडपॉइंट की मदद से कनेक्शन बनाने का अनुरोध करता है.

name एक ऐसा नाम है जिसे ऐप्लिकेशन, इस एंडपॉइंट की पहचान करने के लिए दूसरे डिवाइस पर उपयोगकर्ताओं को दिखा सकता है. अगर खाली स्ट्रिंग डाली जाती है, तो डिवाइस के नाम का इस्तेमाल किया जाता है. remote_endpoint_id, उस रिमोट एंडपॉइंट का आईडी है जिससे यह ऐप्लिकेशन कनेक्ट करने का अनुरोध भेज रहा है. payload, कनेक्शन के अनुरोध के साथ भेजने के लिए, पसंद के मुताबिक बनाया गया मैसेज होल्ड कर सकता है. इसके अलावा, आपका ऐप्लिकेशन किसी पेलोड के बजाय खाली बाइट वेक्टर को पास कर सकता है. यह फ़ंक्शन, अनुरोध के जवाब में बताए गए कॉलबैक को शुरू करता है. कार्रवाई पूरी होने पर, "कनेक्शन स्वीकार किया गया" दिखता है या "कनेक्शन अस्वीकार किया गया" जवाब. ऐसा न होने पर, गड़बड़ी का मैसेज जनरेट होता है. कनेक्शन स्वीकार होने पर, ऐप्लिकेशन रिमोट एंडपॉइंट पर मैसेज भेज सकता है. साथ ही, मैसेज मिलने या रिमोट एंडपॉइंट से डिसकनेक्ट होने पर, ऐप्लिकेशन बताए गए लिसनर को शुरू करता है.

SendConnectionRequest

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

रिमोट एंडपॉइंट से कनेक्शन का अनुरोध करता है.

सिर्फ़ SendConnectionRequest से इस तरह अलग है, क्योंकि यह IMessageListener के बजाय MessageListenerHelper का इस्तेमाल करता है.

SendReliableMessage

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

दिए गए आईडी के साथ रिमोट एंडपॉइंट पर एक भरोसेमंद मैसेज भेजता है.

SendReliableMessage

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

तय किए गए आईडी वाले रिमोट एंडपॉइंट को भरोसेमंद मैसेज भेजता है.

SendUnreliableMessage

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

तय किए गए आईडी वाले रिमोट एंडपॉइंट पर गैर-भरोसेमंद मैसेज भेजता है.

SendUnreliableMessage

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

बताए गए आईडी वाले रिमोट एंडपॉइंट को गैर-भरोसेमंद मैसेज भेजता है.

StartAdvertising

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

लोकल ऐप्लिकेशन के लिए, एंडपॉइंट का विज्ञापन दिखाना शुरू करता है.

name एक ऐसा नाम हो सकता है जिसे ऐप्लिकेशन, एंडपॉइंट की पहचान करने के लिए उपयोगकर्ताओं को दिखाता है. अगर खाली स्ट्रिंग डाली जाती है, तो डिवाइस के नाम का इस्तेमाल किया जाता है. अगर बताया गया हो, तो app_identifiers इस ऐप्लिकेशन को अलग-अलग प्लैटफ़ॉर्म पर इंस्टॉल या लॉन्च करने का तरीका बताता है. duration से पता चलता है कि विज्ञापन कितनी देर तक चलेगा (मिलीसेकंड में). अगर ऐप्लिकेशन, अवधि खत्म होने से पहले StopAdvertising() या Stop() को शुरू नहीं करता है. अगर duration की वैल्यू gpg::Duration::zero() के बराबर है, तो विज्ञापन तब तक दिखते रहेंगे, जब तक ऐप्लिकेशन StopAdvertising() को कॉल नहीं करता. यह फ़ंक्शन, विज्ञापन के शुरू होने या न होने पर start_advertising_callback को शुरू करता है; इस कॉलबैक को प्रोसेस पूरी होने पर एंडपॉइंट की जानकारी या फ़ेल होने पर गड़बड़ी का कोड मिलता है. जब कोई रिमोट एंडपॉइंट, ऐप्लिकेशन के एंडपॉइंट से कनेक्शन का अनुरोध करता है, तब यह फ़ंक्शन request_callback को शुरू करता है. यह फ़ंक्शन इस एंडपॉइंट के मौजूद रहने का विज्ञापन तब तक दिखाता है, जब तक ऐप्लिकेशन StopAdvertising को कॉल नहीं करता या सदस्यता की अवधि खत्म नहीं हो जाती. अगर पहले से ही किसी एंडपॉइंट का विज्ञापन दिया जा रहा है, तो यह कॉल फ़ेल हो जाता है.

StartDiscovery

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

दिए गए सर्विस आईडी के साथ रिमोट एंडपॉइंट ढूंढता है. साथ ही, लिसनर को बार-बार कॉल करता है, क्योंकि ऐप्लिकेशन, एंडपॉइंट को ढूंढता है और उन्हें खो देता है.

ऐसा तब तक जारी रखता है, जब तक ऐप्लिकेशन बताए गए सेवा आईडी के साथ StopDiscovery शुरू नहीं करता. service_id, StartAdvertising से विज्ञापन दिखाते समय ऐप्लिकेशन की वैल्यू से मेल खाना चाहिए. duration, ज़्यादा से ज़्यादा समय (मिलीसेकंड में) के बारे में बताता है, ताकि ऐप्लिकेशन खोजा जा सके. अगर ऐप्लिकेशन StopDiscovery() को शुरू करता है, तो हो सकता है कि यह समय जल्दी बंद हो जाए. अगर Duration की वैल्यू gpg::Duration::zero() के बराबर है, तो डिस्कवरी की प्रोसेस तब तक जारी रहेगी, जब तक ऐप्लिकेशन StopDiscovery() या Stop() को कॉल नहीं करता. अगर किसी दिए गए सर्विस आईडी के लिए एंडपॉइंट ढूंढने के लिए, पहले से कोई लिसनर रजिस्टर है, तो यह कॉल नहीं हो पाता.

StartDiscovery

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

दिए गए सेवा आईडी वाले रिमोट एंडपॉइंट ढूंढता है.

यह फ़ंक्शन सिर्फ़ StartDiscovery से अलग है, क्योंकि यह IEndpointDiscoveryListener के बजाय EndpointDiscoveryListenerHelper का इस्तेमाल करता है.

रोकें

void Stop()

सभी रिमोट एंडपॉइंट से डिसकनेक्ट होता है; होने वाले किसी भी विज्ञापन या सुझाव पर रोक लगाती है.

अंदरूनी स्थिति को साफ़ करता है.

StopAdvertising

void StopAdvertising()

लोकल एंडपॉइंट का विज्ञापन बंद कर देता है.

ऐसा करने से मौजूदा कनेक्शन टूट नहीं जाते.

StopDiscovery

void StopDiscovery(
  const std::string & service_id
)

पहले से तय किए गए सेवा आईडी के लिए, रिमोट एंडपॉइंट ढूंढना बंद करता है.

~NearbyConnections

 ~NearbyConnections()