// // Copyright (C) 2014 Google Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // namespace GooglePlayGames.BasicApi.Nearby { using System; using System.Collections.Generic; // move this inside IMessageListener and IDiscoveryListener are always declared. #if UNITY_ANDROID public interface INearbyConnectionClient { int MaxUnreliableMessagePayloadLength(); int MaxReliableMessagePayloadLength(); void SendReliable(List recipientEndpointIds, byte[] payload); void SendUnreliable(List recipientEndpointIds, byte[] payload); void StartAdvertising(string name, List appIdentifiers, TimeSpan? advertisingDuration, Action resultCallback, Action connectionRequestCallback); void StopAdvertising(); void SendConnectionRequest(string name, string remoteEndpointId, byte[] payload, Action responseCallback, IMessageListener listener); void AcceptConnectionRequest(string remoteEndpointId, byte[] payload, IMessageListener listener); void StartDiscovery(string serviceId, TimeSpan? advertisingTimeout, IDiscoveryListener listener); void StopDiscovery(string serviceId); void RejectConnectionRequest(string requestingEndpointId); void DisconnectFromEndpoint(string remoteEndpointId); void StopAllConnections(); string GetAppBundleId(); string GetServiceId(); } #endif public interface IMessageListener { void OnMessageReceived(string remoteEndpointId, byte[] data, bool isReliableMessage); void OnRemoteEndpointDisconnected(string remoteEndpointId); } public interface IDiscoveryListener { void OnEndpointFound(EndpointDetails discoveredEndpoint); void OnEndpointLost(string lostEndpointId); } }