コード例 #1
0
        public override void OnMediaDownloaded(object sender, DownloadMediaEventArgs e)
        {
            if (e.DownloadGuid != MediaGuid)
            {
                return;
            }

            var eventArgs = e as DownloadTextureEventArgs;

            Texture = eventArgs.ImageTexture;
            base.OnMediaDownloaded(sender, e);
        }
コード例 #2
0
        public override void OnMediaDownloaded(object sender, DownloadMediaEventArgs e)
        {
            if (e.DownloadGuid != MediaGuid)
            {
                return;
            }

            var eventArgs = e as DownloadAudioClipEventArgs;

            Audio = eventArgs.Clip;
            SocketEventManager.OnQueryRecieved(this);
        }
コード例 #3
0
        //public IEnumerator RequestImage(DownloadMediaEventArgs media)
        //{
        //    Debug.Log("Requesting Image");

        //    if (media.fileName.Length <= 0 || media.fileName == null)
        //        yield break;
        //    var www =
        //        UnityWebRequestTexture.GetTexture(
        //            ServerURL.DownloadMediaUrl(media.fileName));
        //    yield return www.SendWebRequest();

        //    if (www.isNetworkError || www.isHttpError)
        //    {
        //        Debug.Log(www.error);
        //        yield break;
        //    }

        //    Debug.Log("Image Download Successful.");

        //    var query = (VisualDetectionQuery)media.query;

        //    System.Diagnostics.Debug.Assert(query != null, "query != null");

        //    var texture =
        //        ((DownloadHandlerTexture)www.downloadHandler).texture;

        //    if (texture != null)
        //    {
        //        query.Texture = ((DownloadHandlerTexture)www.downloadHandler)
        //            .texture;
        //        EventManager.OnImageDownloaded(query);
        //    }
        //    else
        //    {
        //        Debug.Log("Could not download Media");
        //    }
        //}
        public IEnumerator LoadQueryImageEnumerator(string questionId)
        {
            var form = new WWWForm();

            form.AddField("question_id", questionId);

            using (var www = UnityWebRequest.Post(ServerURL.RETRIEVE_IMAGE,
                                                  form))
            {
                yield return(www.SendWebRequest());

                if (www.isNetworkError || www.isHttpError)
                {
                    Debug.Log(www.error);
                }

                else
                {
                    var response = www.downloadHandler.text;
                    var result   = JObject.Parse(response);
                    Debug.Log(result);
                    var filePath = result["data"][0]["file_path"];
                    var type     = result["data"][0]["type"].ToString();
                    var guid     = Guid.NewGuid();

                    Debug.Log(filePath + " is image path");
                    Debug.Log(guid + " is guid");
                    var media = new DownloadMediaEventArgs();
                    media.FileName = filePath.ToString();

                    if (type == VisualDetectionQuery.QueryType)
                    {
                        media.MediaType = MediaDownloader.ImageType;
                    }
                    else if (type == AudioDetectionQuery.QueryType)
                    {
                        media.MediaType = MediaDownloader.AudioClipType;
                    }

                    media.DownloadGuid = guid;
                    MediaDownload.EventManager.OnDownloadMedia(media);
                }
            }
        }
コード例 #4
0
 public override void OnMediaDownloaded(object sender, DownloadMediaEventArgs e)
 {
     SocketEventManager.OnQueryRecieved(this);
 }