/// <summary>
 /// Configures Unity User Reporting.
 /// </summary>
 /// <param name="configuration"></param>
 public static void Configure(UserReportingClientConfiguration configuration)
 {
     UnityUserReporting.Configure("https://userreporting.cloud.unity3d.com", Application.cloudProjectId, UnityUserReporting.GetPlatform(), configuration);
 }
 /// <summary>
 /// Configures Unity User Reporting.
 /// </summary>
 /// <param name="endpoint"></param>
 /// <param name="projectIdentifier"></param>
 /// <param name="configuration"></param>
 public static void Configure(string endpoint, string projectIdentifier, UserReportingClientConfiguration configuration)
 {
     UnityUserReporting.CurrentClient = new UserReportingClient(endpoint, projectIdentifier, UnityUserReporting.GetPlatform(), configuration);
 }
 /// <summary>
 /// Configures Unity User Reporting.
 /// </summary>
 /// <param name="projectIdentifier"></param>
 /// <param name="configuration"></param>
 public static void Configure(string projectIdentifier, UserReportingClientConfiguration configuration)
 {
     UnityUserReporting.Configure("https://userreporting.cloud.unity3d.com", projectIdentifier, UnityUserReporting.GetPlatform(), configuration);
 }
Beispiel #4
0
    // Start is called before the first frame update
    void Start()
    {
        UserReportingClientConfiguration config = new UserReportingClientConfiguration(500, 300, 60, 10);

        UnityUserReporting.Configure(config);

        rightHandAnchor = GameObject.Find("RightHandAnchor");
        leftHandAnchor  = GameObject.Find("LeftHandAnchor");

        rightHandGrabber = rightHandAnchor.GetComponent <SimpleGrabber>();

        var mainDeck = GameObject.Find("MainDeck");

        deckController = mainDeck.GetComponent <DeckController>();
        deckCollider   = mainDeck.GetComponent <Collider>();

        cardHandController = leftHandAnchor.GetComponent <CardHandController>();

        Core.AsyncInitialize(appID.ToString()).OnComplete((Message <Oculus.Platform.Models.PlatformInitialize> init_message) =>
        {
            if (init_message.IsError)
            {
                Debug.LogError("Failed to initialize - " + init_message);
            }
            else
            {
                Entitlements.IsUserEntitledToApplication().OnComplete((entitlemnets_message) =>
                {
                    if (entitlemnets_message.IsError)
                    {
                        Debug.LogError("Entitlements failed - " + entitlemnets_message);
                    }
                    else
                    {
                        Users.GetLoggedInUser().OnComplete((Message <Oculus.Platform.Models.User> logged_in_user_message) =>
                        {
                            if (logged_in_user_message.IsError)
                            {
                                Debug.LogError("Could not retrieve logged in user - " + logged_in_user_message);
                            }
                            else
                            {
                                localUser = logged_in_user_message.GetUser();
                                UnityUserReporting.CurrentClient.LogEvent(UserReportEventLevel.Info, "User logged in");

                                UnityUserReporting.CurrentClient.AddDeviceMetadata("userID", localUser.ID.ToString());
                                UnityUserReporting.CurrentClient.AddDeviceMetadata("username", localUser.OculusID);

                                localAvatar = Instantiate(localAvatarPrefab);
                                localAvatar.CanOwnMicrophone = false;
                                localAvatar.UseSDKPackets    = true;
                                localAvatar.RecordPackets    = true;
                                localAvatar.PacketRecorded  += OnLocalAvatarPacketRecorded;
                                localAvatar.oculusUserID     = localUser.ID.ToString();

                                var trackingSpace = GameObject.Find("TrackingSpace");
                                localAvatar.transform.position = trackingSpace.transform.position;
                                localAvatar.transform.rotation = trackingSpace.transform.rotation;
                                localAvatar.transform.parent   = trackingSpace.transform;

                                Rooms.SetUpdateNotificationCallback(OnRoomUpdateCallback);
                                Net.SetConnectionStateChangedCallback(OnConnectionStateChangedCallback);
                                Net.SetPeerConnectRequestCallback(OnConnectRequestCallback);
                                Net.SetPingResultNotificationCallback(OnPingResultCallback);
                                Voip.SetVoipConnectRequestCallback(OnVoipConnectRequestCallback);
                                Voip.SetVoipStateChangeCallback(OnVoipStateChangedCallback);

                                // NOTE - Setting this before the platform is initialized does NOT WORK!!
                                Voip.SetMicrophoneFilterCallback(MicrophoneFilterCallback);

                                Rooms.Join(roomID, true).OnComplete(OnRoomUpdateCallback);

#if PLATFORM_ANDROID
                                if (!Permission.HasUserAuthorizedPermission(Permission.Microphone))
                                {
                                    Permission.RequestUserPermission(Permission.Microphone);
                                }

                                UnityUserReporting.CurrentClient.AddDeviceMetadata("Microphone Enabled",
                                                                                   Permission.HasUserAuthorizedPermission(Permission.Microphone).ToString());
#endif
                            }
                        });
                    }
                });
            }
        });
    }