다음을 통해 공유


SendDataMessage

SendDataMessage(buffer, recipients, deliveryOption);

지정된 플레이어에게 데이터 메시지를 보냅니다. 데이터 메시지를 보내기 위한 고급 오버로드이며, 개발자가 메시지를 보내는 방법을 세부적으로 제어할 수 있습니다.

구문

public void PlayFabMultiplayerManager.Get().SendDataMessage(byte[] buffer, IEnumerable<PlayFabPlayer> recipients, DeliveryOption deliveryOption);

매개 변수

매개 변수

buffer IntPtr

보낼 데이터를 포함하는 버퍼에 대한 포인터입니다.

받는 사람 IEnumerable<PlayFabPlayer>

데이터 메시지를 보낼 플레이어입니다. 플레이어 컬렉션이 비어 있으면 데이터 메시지가 모든 플레이어에게 브로드캐스트됩니다.

deliveryOption DeliveryOption

메시지를 배달하는 방법을 지정하는 옵션입니다.

반환 값

없음

SendDataMessage(buffer, bufferSize, recipients, deliveryOption);

지정된 배달 옵션을 사용하여 지정된 플레이어에게 데이터 메시지를 보냅니다. 데이터 메시지를 보내는 가장 고급 메서드이며, 개발자가 메시지를 보내는 방법을 세부적으로 제어할 수 있습니다.

구문

public void PlayFabMultiplayerManager.Get().SendDataMessage(byte[] buffer, IEnumerable<PlayFabPlayer> recipients, DeliveryOption deliveryOption);

매개 변수

buffer IntPtr

보낼 데이터를 포함하는 버퍼에 대한 포인터입니다.

bufferSize uint

버퍼 크기입니다.

받는 사람 IEnumerable<PlayFabPlayer>

데이터 메시지를 보낼 플레이어입니다. 플레이어 컬렉션이 비어 있으면 데이터 메시지가 모든 플레이어에게 브로드캐스트됩니다.

deliveryOption DeliveryOption

메시지를 배달하는 방법을 지정하는 옵션입니다.

샘플

...
byte[] buffer = Encoding.ASCII.GetBytes("Hello");
IntPtr unmanagedPointer = Marshal.AllocHGlobal(buffer.Length);
Marshal.Copy(buffer, 0, unmanagedPointer, buffer.Length);
PlayFabMultiplayerManager.Get().SendDataMessage(unmanagedPointer, (uint)buffer.Length, remotePlayers, DeliveryOption.Guaranteed);
Marshal.FreeHGlobal(unmanagedPointer);
...

반환 값

없음.