All Activity
- Past hour
-
I have prepared the results as follows based on my testing of Vacentral outside of PHPVMS I processed 3802 airports from my flight data table The number of Airport records returned by Vacentral was 3784 which gives a percentage of 99.47% success Type 1 errors where Vacentral did not return any data i.e.. no record on file perhaps ? There were 18 records where Vacentral did not return any data that represents 0.53% of all airports used Type 2 errors where Vacentral returned an ICAO code different to what was called There were 147 records where this happened representing 3.889% of the 3784 records added Type 3 errors where Vacentral did not return a timezone value There were 228 records where this happened representing 6.035 of the 3784 records added CONCLUSIONS ABOUT USING VACENTRAL Many people want to try and build a virtual airline and choose a variety of sources of data to create the flights etc. I found that a large number of internet sites with flight information available are using the local time as most are geared to the travelling public . Most passengers and travel agents will give you the flight departure and arrival times as a local time. of course as pilots flying for a virtual airline the opposite is used where UTC time is the normal way of expressing time. So it is important when creating a Virtual Airline in theory to convert LOCAL TIME to UTC time. There are many programming examples where you can do this by using the Timezone of an Airport as for the conversion to UTC. Thus it is important to have available for the airport where your flight departs from and where it arrives at to have the timezones of these airports. Unfortunately Vacentral will not supply at present the timecode for 228 airports and as such is not ideal for that purpose. Again many travel websites will use the IATA code for an airport when showing flights and of course in Virtual airline Pilot world the ICAO code is used. Again with an airport record holding both an IATA code if available and ICAO code then converting the internet flight details from IATA airport to ICAO airport becomes an easier task by using the Airport data from Vacentral . However since 147 airport records returned by Vacentral appear to have the wrong ICAO airport codes then again unfortunately Vacentral is not suitable to use for this purpose in creating airport records to convert IATA flight codes to ICAO flight codes. I also found that Vacentral was missing 18 records that I needed airport information for. My data comes from FSTRAFFIC in MSFS and as such has valid airport departure and arrival files. Again you may want to build a virtual airline based on certain part of the world and you want the local airport data for your system but if Vacentral does not have that data then it cannot be used for other conversion such as IATA to ICAO and UTC time conversion. I have noted in previous posts about not uploading AIRPORT CSV files but let VAcentral in PHPVMS to create your Airport records , however based on what I have found then just relying on Vacentral is not always going to be enough. Yes there will be those who work in the Aviation industry that work with ICAO and UTC as a normal thing and perhaps they have access to flight data already in ICAO and UTC formats , however many do not work in the aviation industry and rely on the Internet etc for sources of information like I said are more inclined to be IATA and local time based so my positing I believe is a good and valid point for discussion
- Today
-
The conversion routine I believe uses the Timezone of the Airport obviously to work out the offset to UTC to calculate the UTC value or of course to calculate the local time from the UTC value. There is one problem perhaps in this method is that when you upload your flight schedule and the system uses VACentral to create your Airport record for that flight then some airports in the Vacentral database I have found do not have a Timezone information.
-
LesJar started following Using standard PHP Curl for VACENTRAL API Call and Reliability of Data Using VACENTRAL
-
Given that PHPVMS especially now in version 7 uses VaCentral to create Airport records for the virtual airline when loading via CSV file or inputting flight schedule records. Given that in the readme file for the VaCentral Github repository for using the API it states quote 'The interface to vaCentral, used in phpVMS, and can be used in your own custom system.' Thus on the above two statements I wish to question the reliability of the VAcentral data on several errors or omissions that I have discovered. Albeit these errors and omissions may not have any effect on how PHPVMS operates , that question needs clarification from authors of PHPVMS themselves. Using Vacentral data as per the 'The interface to vaCentral, used in phpVMS, and can be used in your own custom system.' my case study or project does just that to get a list of airports that can be used to steer a building process for data. My project to which I now have the energy and time to return to with a different approach is called PHPVMSGEN where a user can select what records they want from a database to build the csv files to import to PHPVMS V7. Obviously I need a database of flights from which the user of PHPVMSGEN can get their results from I chose to use the flight data from FSTRAFFIC as used in Microsoft Flight Simulator and this has over 150,000 flights that if you use MSFS Flight Simulator and FStraffic they would run from the airports in the schedules from FSTRAFFIC. Likewise one could use the data from AIG flight schedules as well or equivalent from some of the X-plane traffic modules , or even capture the data from real time traffic add-ons. Outside of Flight simulator you could get data just as well from Flightradar24 or Flightaware or any other web-service that you can use for getting flight information. Now since FSTRAFFIC has all these airport files with flights in then if your virtual airline wanted to emulate the airlines that use these airports in these flight files then you would need the airport in PHPVMS v7. From my use of VAcentral to create a selection table of Airports based on these flight files in FSTRAFFIC I have come across three distinct error or omission types that could be of concern. [01] You have an Airport ICAO code for example BGAK and the call to Vacentral returns you an ICAO code of GL-QCU . Does it really matter and does PHPVMS V7 actually use the correct ICAO code of BGAK ?. [02] You have an Airport ICAO code for example HKVG and the call to VAcentral returns no data i.e. airport not in the database. Does it matter to PHPVMS V7 if you import a flight using HKVG as a departure airport ?. [03] You have an Airport ICAO code for example ENVR and the call to VaCentral returns no data for the Timezone. Does it matter to PHPVMS V7 if an airport record has no Timezone value ?. Generally speaking most of the data returned by the Vacentral Api seems to be correct and at a rough estimate is perfect for over 90% of all airports I called for the data from VAcentral. I am logging to a text file all the three above cases and when my testing is complete I will replay to this posting with more number such as the number of airports I created from Vacentral Calls and the numbers of each error or Omission Noting that because of flight schedules the same errors can be repeated and as such when the attached log-file in the next posting is made should not be that alarming as you can filter out repeated errors to get a unique list of errors and omissions, Finally I must say that Vacentral Api is a very good thing to have and I appreciate that it takes time and effort to put something like this together, my posting is not to degrade its usefulness in any way as I know to well that updating static data takes time as it is reactive after the real world has gone through the changes. In flight simulator and Virtual airline world we have to wait for real world changes. My report in the next posting will hopefully help the person or persons who maintain the Vacentral database to update with missing airports and correct records where information is missing or incorrect. The second posting will be made this week
- Yesterday
-
The issue is likely in the source data vacentral uses for airport lookup.
-
Turns out to be some server misconfiguration
-
another one for icao DNBA array(10) { ["icao"]=> string(6) "NG-BCU" ["iata"]=> string(0) "" ["name"]=> string(14) "Bauchi Airport" ["city"]=> string(6) "Bauchi" ["country"]=> string(2) "NG" ["region"]=> string(5) "NG-BA" ["tz"]=> string(0) "" ["elevation"]=> int(1998) ["lat"]=> float(10.294402) ["lon"]=> float(9.816672) } and for DNSU array(10) { ["icao"]=> string(6) "NG-QRW" ["iata"]=> string(3) "QRW" ["name"]=> string(13) "Warri Airport" ["city"]=> string(5) "Warri" ["country"]=> string(2) "NG" ["region"]=> string(5) "NG-DE" ["tz"]=> string(0) "" ["elevation"]=> int(242) ["lat"]=> float(5.59611) ["lon"]=> float(5.81778) } and this for DNGO array(10) { ["icao"]=> string(7) "NG-0003" ["iata"]=> string(3) "GMO" ["name"]=> string(35) "Gombe Lawanti International Airport" ["city"]=> string(5) "Gombe" ["country"]=> string(2) "NG" ["region"]=> string(5) "NG-GO" ["tz"]=> string(0) "" ["elevation"]=> int(1590) ["lat"]=> float(10.298889) ["lon"]=> float(10.9) }
-
Also the a similar error for ICAO BGAK ? should the values be corrected but since I call VACENTRAL API with iCAO BGAK anyway then I do not need the contents of that field in theory array(10) { ["icao"]=> string(6) "GL-QCU" ["iata"]=> string(3) "QCU" ["name"]=> string(17) "Akunnaaq Heliport" ["city"]=> string(8) "Akunnaaq" ["country"]=> string(2) "GL" ["region"]=> string(5) "GL-QK" ["tz"]=> string(0) "" ["elevation"]=> int(59) ["lat"]=> float(68.744273) ["lon"]=> float(-52.340369) }
-
Vacentral returned an error for airport AYTU. the returned ICAO should have read AYTU array(10) { ["icao"]=> string(6) "PG-TFI" ["iata"]=> string(3) "TFI" ["name"]=> string(12) "Tufi Airport" ["city"]=> string(4) "Tufi" ["country"]=> string(2) "PG" ["region"]=> string(6) "PG-NPP" ["tz"]=> string(0) "" ["elevation"]=> int(85) ["lat"]=> float(-9.07595443726) ["lon"]=> float(149.319839478) }
-
Same issue when locally storing it Done
-
Nabeel started following vmsACARS not connecting to phpvms (?)
-
It could be onedrive causing the issue with loading. Data gets stored there, too, which the onedrive sync can sometimes conflict with. I'd recommend deleting the profile files or everything in documents/vmsacars and starting fresh But before you do that, if you can send me the profile file over Discord (just DM me), I can also debug to see if I see the same behavior on my end.
- Last week
-
This also happens on my PC, which vmsACARS is stored locally instead of onedrive.
-
ZachP started following vmsACARS not connecting to phpvms (?)
-
So, when I open vmsACARS, it does not show me my pilot information. As well as that, I cannot choose my airline, find my bids/flights, or anything. I am logged in (I think) but that makes no difference. This is what it showed me when I pressed "load in vmsACARS" on the web dashboard. Logs: I:0601 19:00:06 =================================================== I:0601 19:00:06 Version: 2.0.658 I:0601 19:00:06 Release Channel: win-x64-stable I:0601 19:00:06 Windows Version: 10.0.19045 I:0601 19:00:06 Installation Type: installed I:0601 19:00:06 Installation Path: C:\Users\Zach\AppData\Local\vmsacars\current I:0601 19:00:06 Data Path: C:\Users\Zach\AppData\Local\vmsacars\data I:0601 19:00:06 User Path: C:\Users\Zach\OneDrive\Documents\vmsacars I:0601 19:00:06 Settings Path: C:\Users\Zach\OneDrive\Documents\vmsacars\settings.json I:0601 19:00:30 Installed path: C:\Users\Zach\AppData\Local\vmsacars\current D:0601 19:00:30 Registered vmsacars URI for web launcher I:0601 19:00:36 Beta Enabled: false I:0601 19:00:37 Downloaded config scripts I:0601 19:00:37 Loading profile infy.uk D:0601 19:00:37 F: C:\Users\Zach\AppData\Local\vmsacars\current\config\default\package.json; Adding config map path: aircraft D:0601 19:00:37 F: C:\Users\Zach\AppData\Local\vmsacars\current\config\default\package.json; Adding rules path: rules D:0601 19:00:37 F: C:\Users\Zach\AppData\Local\vmsacars\current\config\default\package.json; Adding scripts path: scripts D:0601 19:00:37 F: C:\Users\Zach\AppData\Local\vmsacars\current\config\default\package.json; Adding sounds path: sounds D:0601 19:00:37 Loading logbook: C:\Users\Zach\OneDrive\Documents\vmsacars\data\infy.uk\logbook.db E:0601 19:00:41 Error loading profile Acars.Errors.LoadingError: Object reference not set to an instance of an object. ---> System.NullReferenceException: Object reference not set to an instance of an object. at Acars.Services.ConfigService.LoadAirlineConfig(Profile profile) at Acars.Services.StartupService.LoadAirlineConfig(Profile profile) at Acars.Services.StartupService.LoadApplicationFromProfile(Profile profile, Boolean loadLogos) --- End of inner exception stack trace --- at Acars.Services.StartupService.LoadApplicationFromProfile(Profile profile, Boolean loadLogos) E:0601 19:00:43 Error: Error Loading: Object reference not set to an instance of an object. I:0601 19:00:43 Profile changing to infy.uk I:0601 19:00:43 Profile changed to "infy.uk" I:0601 19:00:43 Loading profile infy.uk I:0601 19:00:43 Profile changing to null I:0601 19:00:43 Profile changed to "null" I:0601 19:00:43 Profile changing to infy.uk I:0601 19:00:43 Profile changed to "infy.uk" E:0601 19:00:43 Error loading profile Acars.Errors.LoadingError: Object reference not set to an instance of an object. ---> System.NullReferenceException: Object reference not set to an instance of an object. at Acars.Services.ConfigService.LoadAirlineConfig(Profile profile) at Acars.Services.StartupService.LoadAirlineConfig(Profile profile) at Acars.Services.StartupService.LoadApplicationFromProfile(Profile profile, Boolean loadLogos) --- End of inner exception stack trace --- at Acars.Services.StartupService.LoadApplicationFromProfile(Profile profile, Boolean loadLogos) D:0601 19:02:08 Saving DiscordStatusUpdate, value=false I:0601 19:04:10 Launching with URI: ["vmsacars:bid/6"] I:0601 19:04:10 Got app arguments: ["vmsacars:bid/6"] I:0601 19:04:10 Got bid id arg 6, loading bid I:0601 19:04:10 Could not find data for bid, id=6 E:0601 19:04:10 Error: Bid not found: Bid 6 could not be found
-
ZachP joined the community
-
Do you really need an API Key or authorization for this ? Below is a plain query result without an API key. { "icao": "EGEW", "iata": "WRY", "name": "Westray Airport", "city": "Westray", "country": "GB", "region": "GB-SCT", "tz": "Europe/London", "elevation": 29, "lat": 59.3502998352, "lon": -2.9500000477 } And it will be better if you just use the "code" feature of the forum with "php" language selected. Your cleaned up, more readable code will look like this if you do so. <?php /** * Class and Function List: * Function list: * Classes list: */ /** \file vacentral.php * \brief Text getting data from Vacentral using Curl * \details This Script is used tinstead of Composer installation * \author Leslie Jarrett * \version 1.0 * \date 2025 * \copyright 2025 Leslie Jarrett */ // // GET AIRPORT INFORMATION FROM VACENTRAL // // The following URl string is required to get Airport Information // https://api.vacentral.net/api/airports/[ICAO]?apiKey=[API_KEY] // Where you replace [ICAO] with the Airport code you want to get data forr // and replace [API_KEY] with your user API Key string // Below is a worked example for the airport EGEW // Using my own API KEY which is then hidden from the code // set up your API KEY $ApiKey = 'zzzzzzzzzzzzzzzzzzzzzzzzzzz'; // set up the Airport ICAO code $AirportIcao = 'EGEW'; // set up the first part of the CURL URl $AirportApiUrl = 'https://api.vacentral.net/api/airports/'; // add in the Airport Icao Code $AirportApiUrl = $AirportApiUrl.$AirportIcao; // add in the API Key $AirportApiUrl = $AirportApiUrl.'?apiKey='.$ApiKey; // now process the call to the API using Curl // set the api curl handle $AirportApiHandle = curl_init(); // Will return the response, if false it prints the response curl_setopt($AirportApiHandle, CURLOPT_RETURNTRANSFER, true); // Set the url curl_setopt($AirportApiHandle, CURLOPT_URL,$AirportApiUrl); // Execute the session and store the contents in $AirporApiRaw $AirporApiRaw =curl_exec($AirportApiHandle,); // Closing the session curl_close($AirportApiHandle); // unpack the Json data to PHP array $AirportData = json_decode($AirporApiRaw, true); // the array $AirportData will have the following fields // array(10) { // ["icao"] => string(4) "EGEW" // ["iata"] => string(3) "WRY" // ["name"] => string(15) "Westray Airport" // ["city"] => string(7) "Westray" // ["country"] => string(2) "GB" // ["region"] => string(6) "GB-SCT" // ["tz"] => string(13) "Europe/London" // ["elevation"] => int(29) // ["lat"]=> float(59.3502998352) // ["lon"]=> float(-2.9500000477) // } ?> Have a nice day.
-
I have worked it out by looking at the code of the VACENTRAL Module without installing it with Composer the code is as follows -: YOU MUST USE A VAILD API KEY and not the 'ZZZZZZZZZZZZZZZ' <?php /** * Class and Function List: * Function list: * Classes list: */ /** \file vacentral.php * \brief Text getting data from Vacentral using Curl * \details This Script is used tinstead of Composer installation * \author Leslie Jarrett * \version 1.0 * \date 2025 * \copyright 2025 Leslie Jarrett */ // // GET AIRPORT INFORMATION FROM VACENTRAL // // The following URl string is required to get Airport Information // // https://api.vacentral.net/api/airports/[ICAO]?apiKey=[API_KEY] // // Where you replace [ICAO] with the Airport code you want to get data forr // // and replace [API_KEY] with your user API Key string // // Below is a worked example for the airport EGEW // Using my own API KEY which is then hidden from the code // // set up your API KEY // $ApiKey = 'zzzzzzzzzzzzzzzzzzzzzzzzzzz'; // // set up the Airport ICAO code // $AirportIcao = 'EGEW'; // // set up the first part of the CURL URl // $AirportApiUrl = 'https://api.vacentral.net/api/airports/'; // // add in the Airport Icao Code // $AirportApiUrl = $AirportApiUrl.$AirportIcao; // // add in the API Key // $AirportApiUrl = $AirportApiUrl.'?apiKey='.$ApiKey; // // now process the call to the API using Curl // // set the api curl handle // $AirportApiHandle = curl_init(); // // Will return the response, if false it prints the response // curl_setopt($AirportApiHandle, CURLOPT_RETURNTRANSFER, true); // // Set the url // curl_setopt($AirportApiHandle, CURLOPT_URL,$AirportApiUrl); // // Execute the session and store the contents in $AirporApiRaw // $AirporApiRaw =curl_exec($AirportApiHandle,); // // Closing the session // curl_close($AirportApiHandle); // // upack the Json data to PHP array // $AirportData = json_decode($AirporApiRaw, true); // // the array $AirportData wwill have the following fields // // array(10) { // ["icao"]=> // string(4) "EGEW" // ["iata"]=> // string(3) "WRY" // ["name"]=> // string(15) "Westray Airport" // ["city"]=> // string(7) "Westray" // ["country"]=> // string(2) "GB" // ["region"]=> // string(6) "GB-SCT" // ["tz"]=> // string(13) "Europe/London" // ["elevation"]=> // int(29) // ["lat"]=> // float(59.3502998352) // ["lon"]=> // float(-2.9500000477) // } ?>
-
I would like to use the VACENTRAL Api call to get some information like Airport data to include in my related project. However I do not want to mess with hosting and c-panel trying to both install Composer and VACENTRAL and woth rather call the API using Curl and pass the appropriate keys as I Have done this before on other API calls. My question is has anyone or Nabeel got some documentation or an example PHP script to call the api in CUFRL and parse the returned data.
-
Raffius joined the community
-
jeckchan joined the community
- Earlier
-
Solicitation for assistance - Website Maintenance and Customization
texxasal replied to texxasal's topic in Paid Services
To the point, if I could have understood how to do what I needed by "read through the docs", I wouldn't have bothered making the post you reference. I'm a pilot, not a web person. I don't have any desire to be a web person. I have more than enough to do to minimally configure my website and operate my organization. I wasn't looking for "how do I do things". I was looking for someone to do what I want done, and am perfectly willing to pay for it. Setting up and running an "additional" test site is absolutely the last thing I'm contemplating doing. While I'm sure those documents make great sense to you guys, who do this for a living, and most probably wrote the documents, they aren't in the least helpful to me. Maybe I'm just too stupid to run PHPVMS/ACARS? Didn't see where there's a minimum level of expertise required to be a customer/user, but maybe I missed that too.? If there's no viable response to my request, why post the availability of the topic? Al Rosenberg San Antonio Texas -
Solicitation for assistance - Website Maintenance and Customization
ProAvia replied to texxasal's topic in Paid Services
Have you read thru the docs? phpVMS - https://docs.phpvms.net vmsacars - https://docs.phpvms.net/acars/overview Best to have a basic understanding of the system. Installing the vmsACARS module is pretty simple. There isn’t much maintenance to be done either. What phpVMS version are you using? 7.0.4 is the current release. Many of us run a test site in parallel with our live production site so we can test things on our test site to be sure they are working correctly before installing them on our live site. This would apply to themes, theme edits and modules. It isn’t good practice to modify any of the core phpVMS files. -
texxasal started following Solicitation for assistance - Website Maintenance and Customization
-
I am looking to obtain assistance with applying maintenance to my PHPVMS website, as well as some customization (install and setup ACARS, etc.). Am not a website "guy", but rather a pilot/operations person. Have now problem in paying somebody a reasonable fee for their services. Please reply to this post, or directly to me at: arosenberg3@satx.rr.com Thanks Al Rosenberg San Antonio Texas
-
Yeah if they release some changes for the API, improvements like defining avoids, either country or FIR based, those can be easily implemented in the form too. But don't expect everything to be done by phpVMS (or theme developers). Generally what phpVMS offers you a fully working API access system which is capable of two way communications with their servers. And phpVMS already passes more than enough data to that form, in which you can develop your own stuff, apply improvements, following API changes etc. easily. As an example, SimBrief API allows you to define 4 alternates with their routes, also ETOPS alternates etc. but these are not present in the form. Any VA owner or developer can enhance the form as they wish if required by following the main form logic and the API docs. This is why I ended my first post with "Good luck and God speed"
-
Thank you for your reply the item that Navigraph mentioned was as follows ' Airspace. Avoid predefined areas: Russian airspace, ETOPS areas, and more can be avoided using the dropdown menu. Any other waypoints, airways, or airspaces can be avoided by manually typing them in.' As a number of aircraft are not ETOPS certified then perhaps Navigraph will release a new version of the api where something like this is available
-
Reference API Docs : https://forum.navigraph.com/t/the-simbrief-api/5298
-
If you are talking about these, my answer will be "No, because I do not see anything there to be API access compatible". These are mostly for their own planning page (or edit flight plan page). Any API (and phpVMS) user can create lots of features internally on their end, as an example one can allow defining FPL Remarks via their code, or aircraft equipment selection (including PBN) etc. If you check the API documents (of SimBrief) and the form utilizing that API (at phpVMS) you will see how it works, and then you can develop anything you wish to have. Good luck and God speed.
-
If the SimBrief API supports these new options, they can be integrated into phpVMS v7. Haven't heard of that being done as of yet, but the new options were just announced this past week. BTW - what's the status of your phpVMSgen offering?
-
LesJar started following New simbrief version and options
-
I have been reading about the new version of simbrief and was wondering if the Phpvms 7 interface will eventually have the new options as well so that you can fully use Simbrief from within PHPVMS
-
SmarticleCo started following [phpVMSv7 / SPTheme] Introducing my phpVMS Theme Package
-
[Recruiting] vHarbour Air – A Seaplane-Focused VA
flyalaska replied to BaseToFinal's topic in Virtual Airlines Discussion
You realize you are recruiting to a forum full of VA owners?- 1 reply
-
- 1
-