FIBA LiveStats TV Feed How to start guidelines for developers 1. Download FIBA LiveStats application. Application can be downloaded from here: http://www.fibaorganizer.com/ 2. Install application and launch it. 3. For the first time application will require entering license activation key. Use the license key, which was provided along with this documentation. Note: Statisticians must contact to assigned support consultant in order to get separate license keys for each computer. 4. For the first time application will check for updates. Please allow for application to download and install updates (if there is). After updates are installed, application will ask for restart. Please restart application. 5. Create new game by entering all details manually. If you ll have any questions creating new game manually, please check FIBA LiveStats manual (It should be sent to you along with this document). 1
6. Open game for scouting and start scouting by entering some game actions (substitutions, shots, assists and so on ). If you ll have any questions on how to enter any game action, please check FIBA LiveStats manual. 7. Enable game for TV feed. Choose menu FILE -> TV FEED When TV FEED is activated, TCP server is created on port 7676 on statistician s computer. At the same time in FIBA LiveStats interface connection status TV FEED becomes green, which indicates that server is ready for connecting TCP clients. 8. Next you have to start FIBA LiveStats TV Feed adapter application Please, follow the instructions below how to start TV Feed adapter application. 9. Download FIBA LiveStats TV Feed adapter application. Application can be downloaded from here: 2
http://public.mbt.lt/fiba_livestats/tv_feed/adapter/ PC requirement: Windows 7, 8, 8.1, 10; Installed.NET framework 4.5.2; User must have administrator permissions on computer; 10. Installation and start of FIBA LiveStats TV Feed adapter Application is not needed to install. Simply just extract zipped archive on TV graphics computer. Inside extracted folder FIBA LiveStats TV feed adapter vx.x.x.x you should find file named FIBA LiveStats TV feed.exe, which starts the application. Since application creates additional services, which is needed for creating local web server for serving game data, it is needed to run application As administrator. To start application as administrator, please right click on FIBA LiveStats TV feed.exe file and choose option Run as administrator (see screenshot below). 11. Working with FIBA LiveStats TV Feed adapter 11.1. Connecting to TCP server Application works as a client with TCP server, which is created by FIBA LiveStats on statistician s computer, and always is listening for game data packets received during the game. In order to connect to TCP server, enter statistician s computer IP address and port on which TCP server is running (TCP server default port is 7676), and click Connect. If connection is successful, you should see Status value Connected. Note: Please make sure that statistician s computer in accessible, otherwise you ll not be able to connect to TCP server. 3
11.2. Creating host web server For serving game box-score data in XML format, you have to create local web server. Web server will be created in your computer, which runs FIBA LiveStats TV Feed adapter application. To start web server, enter port on which server should be working and click button Start. If everything works fine, you should see status changed to On. In order to get game box-score data in XML, open browser on your computer ant try load your computer IP address with the port you have entered. For example: http://192.168.1.6:8080/ Important thing, which needs to be mentioned, that XML is refreshed automatically after statistician enters any game action. The delay in most cases is up to 1 second (depends on computer/network performance). Next, the data in XML can be used for TV graphics purposes. Leaving the right for TV graphics developers have themselves to decide how to process data further. 11.3. XML fields explanations An example of XML, which is generated by FIBA LiveStats TV Feed adapter application, is provided along with this document. Bellow you can find XML fields explanations. <FullGame> <periods per="4" curr="4" /> <fouls p="5" t="4" /> <touts h1="2" h2="3" ot="1" /> <courtimg x="260" y="156" /> <clock time="00:00" /> per number of periods in a game, curr number of current period; p max fouls per player, t max team fouls per period; h1, h2, ot max timeouts in 1 st half, 2 nd half and overtimes; time current period game time; <gameinfo> <game no="123456789" /> <group name="" /> <comp id="" name="test competition name" /> <sched date="09/03/2016" time="12:08" /> <venue name="test Venue" court="test Court" /> no game number (ID); name group name; id competition ID, name competition name; date game date, time game time; name venue name, court court name; 4
<spectators>15000</spectators> spectators number of spectators in a venue; <officials> <ref no="1" name="referee1 Referee1" country="ltl" /> no referee number/position; <ref no="2" name="referee2 Referee2" country="ltl" /> name referee first name and last name; <ref no="3" name="referee3 Referee3" country="ltl" /> country referee nationality (short country code); <commish name="commissioner1 Commissioner1" country="ltl" /> commish game commissioner; </officials> <team tno="1" name="team A name" short="team A" tcode="taa" coach="coacha1 CoachA1" asst1="coacha2 CoachA2" asst2="coacha3 CoachA3"> <players> <player pno="1" fibaid="p_1" sno="1" fname="player1" sname="player1" hgt="200" pos="fwd" age="30" /> <seasonstats fgp="38" stl="2" games="6" ftm="7" p3a="19" pts="33" p3m="8" fgm="9" rbo="3" fta="9" ass="3" eff="26.00" mins="63:23" ftp="78" p2p="20" pm="20.00" p2a="5" tno team number (1 home team, 2 away team); name team full name; oid team online ID; short - team short name; tcode team short code (3 letters); coach team head coach; asst1 first assistant coach; asst2 second assistant coach; pno - the player number of the player involved; oid player online ID; fibaid player FIBA ID; sno player t-shirt number; fname first name; sname last name; hgt player height; pos player position; age player age (can be 0 (zero) if not available); seasonstats this node might be empty; fgp player season field goals percentage; stl player season steals made; games player season games; ftm player season free throw shots made; p3a player season 3 points shots attempted; pts player season points; p3m - player season 3 points shots made; fgm player season field goals made; rbo player season rebounds offensive; fta player season free throw shots attempts; ass player season assists; eff player season efficiency; mins player season time played; ftp player season free throw shots percentage; p2p player season 2 points shots percentage; pm player season plus/minus statistics; p2a player season 2 points shots attempts; 5
p3p="42" p2m="1" reb="9" foo="8" pfo="8" blo="1" tov="3" fga="24" blk="0" rbd="6" /> </player> p3p player season 3 points shots percentage; p2m player season 2 points shots made; reb player season rebounds total; foo player season fouls on; pfo player season fouls, personal and technical; blo player season blocks on; tov player season turnovers; fga player season field goals attempts; blk player season blocks; rbd player season rebounds defensive; <starters> <team tno="1"> <player1 sno="1" /> tno team number (1 home team, 2 away team); sno - player t-shirt number; oid player online ID; <boxscore> <team tno="1" tov="2" fou="2"> <reb off="1" def="1" tot="2" /> <player pno="1" mins="40:00" ass="0" tov="1" stl="1" pts="8"> <fg m="3" a="6" pc="50.0" /> <fg2 m="2" a="3" pc="66.7" /> <fg3 m="1" a="3" pc="33.3" /> <ft m="1" a="2" pc="50.0" /> <reb off="1" def="1" tot="2" /> <blk bl="1" bo="2" /> <fou pf="1" fo="1" /> </player> <totals mins="200:00" ass="3" tov="1" stl="1" pts="8"> <fg m="3" a="7" pc="42.9" /> <fg2 m="2" a="3" pc="66.7" /> tno - team number (1 home team, 2 away team); tov - team turnovers made; fou team fouls; off team rebounds offensive; def team rebounds defensive; tot team rebounds total; pno - the player number of the player involved; oid player online ID; mins player total minutes played; ass player total assists made; tov player total turnovers made; stl player total steals made; pts player total points scored; fg field goal shots made, attempted and percentage; fg2 2 points shots made, attempted and percentage; fg3 3 points shots made, attempted and percentage; ft free throw shots made, attempted and percentage; reb rebounds offensive, defensive and total; bl blocks, bo blocks on; pf - fouls, personal and technical, fo fouls on; mins all players total minutes played; ass total assists; tov total turnovers; stl total steals; pts total points; fg total field goal shots made, attempted and percentage; fg2 total 2 points shots made, attempted and percentage; 6
<fg3 m="1" a="4" pc="25.0" /> <ft m="1" a="2" pc="50.0" /> <reb off="1" def="1" tot="2" /> <blk bl="1" bo="2" /> <fou pf="1" fo="1" /> </totals> fg3 total 3 points shots made, attempted and percentage; ft total free throw shots made, attempted and percentage; reb total rebounds offensive, defensive and total; bl total blocks, bo total blocks on; pf total fouls, personal and technical, fo total fouls on; <scoreboard> <team tno="1" score="8" touts="0" fouls="1" benchpts="0"> <period per="1" score="6" benchpts="0" fouls="0" touts="0" /> tno - team number (1 home team, 2 away team); score team score; touts team timeouts; fouls total fouls; benchpts points made by bench players (not starting five); per period number; score team score in period; benchpts points made by bench player in period (not starting five); fouls fouls made in period; touts team timeouts taken in period; <scorechart> <team tno="1"> <shot no="19" per="1" gt="09:53" pno="1" pts="2" typ="jump" rslt="1" x="489" y="48" itp="n" end="r" /> tno - team number (1 home team, 2 away team); no action number; per period number; gt time of shot; pno player number; oid player online ID; pts - points associated with shot; typ - type of shot; rslt - result of shot 0=missed, 1=made, 2=blocked; x x co-ordinate on court; y y co-ordinate on court; itp in the paint N=No, Y=Yes; end court end for shot, R=Right, L=Left; 11.4. Logging There is available application log, which is created automatically inside application folder (folder name logs ) right after application is started. The log data is collated by date (each file for each date) inside of TXT file. 7