Forum Topic - FRCAPI Score_2016 availability date?: (19 Items)
   
FRCAPI Score_2016 availability date?  
When will the contents of the 2016 score details end point be known/documented?  In working on scouting stuff with my 
team, we'll want to know what information is available far enough ahead of week 1 to be able to make appropriate plans 
for event scouting!
Re: FRCAPI Score_2016 availability date?  
Any updates at all for a preliminary date to expect information...  We plan on publishing our apps on the 9th in order 
to meet the review deadlines for week 0.
Re: FRCAPI Score_2016 availability date?  
Hi all,
We know this is something people are interested in. I'll try to plug in the info I have by the end of the weekend- we 
want/wanted to make sure what we post is what we actually intend to use, so that there are no last minute changes if we 
can avoid them.
Thanks
Re: FRCAPI Score_2016 availability date?  
Will the information from the Defense Coordinator specifying defense selections and locations on the field be available?
 It occurs to me that despite the DC putting info into a computer and printing out configurations that might not 
actually be connected to the FMS.

I'm expecting that the information from the ref panel will be position based, simply indicating that a robot reached or 
crossed a defense at position 1-5.

Being able to determine which specific defense was crossed would be very helpful.
Re: FRCAPI Score_2016 availability date?  
Hi all,

The initial structure for Score_2016 has been posted. You can check it out in Apiary. Note that defense selections 
cannot be viewed until after the match has been played (through ScoreDetails).

Thanks
Re: FRCAPI Score_2016 availability date?  
Hi, if 2016 data is available, can you tell us when event is populated?  I'd like to test retrieving Hybrid Schedules.  
Thanks
Re: FRCAPI Score_2016 availability date?  
Hi,
The Hybrid Schedule endpoint does not depend on the season. You can use the 2015 events and data to test with, if you 
wish. The return data is the same format.
Thanks
Re: FRCAPI Score_2016 availability date?  
Thanks that worked fine.
Next I'd like to test Rankings, Score, etc.
Is there a 2016 event that has this data?
Re: FRCAPI Score_2016 availability date?  
There aren't any events that currently have this. We expect our system to be online though (pending an internet 
connection at the school) during Week 0, which will provide test data.
Re: FRCAPI Score_2016 availability date?  
OK Thanks.  I assume Week0 is the Palmetto event?  Let me know if I can help.
I just tried event code 'WEEK0' and got a 404 error.  Guess its not week 0 yet.
Re: FRCAPI Score_2016 availability date?  
No, Week 0 for us is this weekend, a test event in Manchester. Week 0.5 is Palmetto. The event code will begin working 
at a later time, but is "WEEK0"
Re: FRCAPI Score_2016 availability date?  
Hi Alex,  
The API returned schedules for WEEK0 Qualification, but not for Playoffs.  What happened?  Did I miss them?
Will the API be available for Palmetto?
Regards
--raj
Re: FRCAPI Score_2016 availability date?  
There were no playoffs at the week 0 event and I'm guessing that the schedule was simply never generated. It would be 
nice if there were one, but the qualification match data meets most of my needs.

The weird thing I've run into is that the list of teams for Week 0 seems to have shrunk since yesterday. I'm only 
getting five teams this afternoon.
Re: FRCAPI Score_2016 availability date?  
The API worked well during Palmetto.  I have a few saved XML results for Schedule & Rankings if anyone wants it. There 
was a long scary delay after Quals 10.   Perhaps there should be one more API for Status Information, like: "Match delay
 caused by animal on field." 
Re: FRCAPI Score_2016 availability date?  
Saved XML/JSON is pointless.  I need the data during the matches in as close to real time as possible.

I also need it to be correct.

For instance.  Right now I sent in:

https://frc-api.firstinspires.org/v2.0/2016/schedule/SCMB?tournamentLevel=playoff

Which should give me the playoff schedule.

and got back:

{"Schedule":[{"description":"Tiebreaker 1 (C)","field":"Primary","tournamentLevel":"Playoff","startTime":null,"
matchNumber":9,"Teams":[{"teamNumber":4451,"station":"Red1","surrogate":false},{"teamNumber":179,"station":"Red2","
surrogate":false},{"teamNumber":1369,"station":"Red3","surrogate":false},{"teamNumber":3490,"station":"Blue1","surrogate
":false},{"teamNumber":2393,"station":"Blue2","surrogate":false},{"teamNumber":283,"station":"Blue3","surrogate":
false}]},{"description":"Tiebreaker 2 (C)","field":"Primary","tournamentLevel":"Playoff","startTime":null,"matchNumber":
10,"Teams":[{"teamNumber":2252,"station":"Red1","surrogate":false},{"teamNumber":2172,"station":"Red2","surrogate":
false},{"teamNumber":237,"station":"Red3","surrogate":false},{"teamNumber":120,"station":"Blue1","surrogate":false},{"
teamNumber":2200,"station":"Blue2","surrogate":false},{"teamNumber":2386,"station":"Blue3","surrogate":false}]},{"
description":"Tiebreaker 3 (C)","field":"Primary","tournamentLevel":"Playoff","startTime":null,"matchNumber":11,"Teams":
[{"teamNumber":3824,"station":"Red1","surrogate":false},{"teamNumber":1296,"station":"Red2","surrogate":false},{"
teamNumber":4533,"station":"Red3","surrogate":false},{"teamNumber":1102,"station":"Blue1","surrogate":false},{"
teamNumber":4823,"station":"Blue2","surrogate":false},{"teamNumber":2187,"station":"Blue3","surrogate":false}]},{"
description":"Tiebreaker 1 (D)","field":"Primary","tournamentLevel":"Playoff","startTime":null,"matchNumber":17,"Teams":
[{"teamNumber":4451,"station":"Red1","surrogate":false},{"teamNumber":179,"station":"Red2","surrogate":false},{"
teamNumber":1369,"station":"Red3","surrogate":false},{"teamNumber":120,"station":"Blue1","surrogate":false},{"teamNumber
":2200,"station":"Blue2","surrogate":false},{"teamNumber":2386,"station":"Blue3","surrogate":false}]},{"description":"
Tiebreaker 2 (D)","field":"Primary","tournamentLevel":"Playoff","startTime":null,"matchNumber":18,"Teams":[{"teamNumber"
:3824,"station":"Red1","surrogate":false},{"teamNumber":1296,"station":"Red2","surrogate":false},{"teamNumber":4533,"
station":"Red3","surrogate":false},{"teamNumber":343,"station":"Blue1","surrogate":false},{"teamNumber":4547,"station":"
Blue2","surrogate":false},{"teamNumber":2614,"station":"Blue3","surrogate":false}]}]}

Which appears to be only the playoff games that were never played. I can't think of a more useless response that doesn't
 actually include malware.

Yes, I sound frustrated, I am.  There are people who this Thursday are going to be relying on information I'm pulling 
from the API to make decisions.
Re: FRCAPI Score_2016 availability date?  
I just hit that same endpoint (using curl with no headers other than my auth token) and I received all 21 playoff 
matches as expected. How are you accessing the API - could there be caching issues client side or something else 
affecting the response?
Re: FRCAPI Score_2016 availability date?  
There is not client side caching (there is, but it's currently set to time out at 10 seconds and isn't being used).

There is no intermediate web proxy caching. 

I'm literally in the Visual Studio debugger executing a line of code that looks like. 

HttpResponseMessage response = await firstWeb.GetAsync(new Uri("https://frc-api.firstinspires.org/v2.0/" + callString));


The content is as above.

Content headers are:

-		Headers	{{
  Content-Length: 2296
  Last-Modified: Sat, 27 Feb 2016 16:14:05 GMT
  Content-Type: application/json; charset=utf-8
  Expires: Mon, 29 Feb 2016 16:27:58 GMT
}}	

Re: FRCAPI Score_2016 availability date?  
OK, I've now run this query on 4 different machines.

Windows 10 64 bit, returned truncated list. build 10586.104
Windows 10 64 bit, returned full list.   build 10586.104
Windows 10 32 bit, returned full list.
Windows 8.1 ARM, returned full list.

Same query from same app all stepped into with the debugger.

Then after a reboot on the machine that failed it got the full list.

Here's the code that creates the client.

 public FirstWebAPI(string Username, string Password)
        {
            username = Username;
            password = Password;
            BuildAuthToken();

            //Disable caching.
            HttpBaseProtocolFilter Filter = new HttpBaseProtocolFilter();
            Filter.CacheControl.ReadBehavior = Windows.Web.Http.Filters.HttpCacheReadBehavior.MostRecent;
            Filter.CacheControl.WriteBehavior = Windows.Web.Http.Filters.HttpCacheWriteBehavior.NoCache;

            firstWeb = new HttpClient();
            firstWeb.DefaultRequestHeaders.Add("Accept", "application/json");
            firstWeb.DefaultRequestHeaders.Authorization = new Windows.Web.Http.Headers.HttpCredentialsHeaderValue("
Basic", authToken);
        }

Caching is disabled because the app does intelligent caching based on what is being requested. For instance Events and 
Teams have a 24 hour timeout as does match data from last season. The current event match data is cached for 1 minute 
which goes to an hour after the event ends, just me trying to be nice to the API. But as I said earlier, the app's 
caching is disabled right now.

A reboot mostly seems to fix the issue. That's what I'll advise the folks using it on Thursday so I can move on.
Re: FRCAPI Score_2016 availability date?  
There were a few anomalies, like 0,0 scores.  I also thought I saw out of sequence scores and match completions that 
appeared in bursts (delays followed by a bunch of completions), however I wasn't watching closely.