News & Updates ============== 02.08.2019 : Rostoics 1.0.0-5 released (AppStore) code : Manage tab Start date / End date order algorithm changed. code : Manage tab rostoics (DH) server basename format including version & build. (e.g. 1564685846623_iOS-0-0.4-4.pdf) code : TLCs tab TLC background download (if required) and local storage. code : TLCs tab TLC view reloaded if changing connectivity from offline to online. real-time update if data becomes available. 29.07.2019 : Rostoics 0.0.3-3 released (beta testers only) fix : Manage tab 'Generate calendar events' button bug w/ partial import. fix : Settings tab > Misc section > About text ident formatting corrected. change : Settings tab > Privacy section > 'Show own details in TLC list' radio button removed. add : Manage tab 'Download today's roster' button added. 24.07.2019 : Rostoics 0.0.2-2 released (beta testers only) fix : Manage tab 'Generate calendar events' code now shows proper SVProgressHUDs. add : statusOnline code implemented using delegates. add : TLCs tab enable/disable implemented as per statusOnline. add : Info tab 'User authenticated' implemented. code : skipped TLCs implemented. 02.07.2019 : Rostoics 0.0.1-1 released (beta testers only) first release.
Collection of personal information
We receive and store any information you knowingly provide to us when you fill any online forms in the Mobile Application. You can choose not to provide us with certain information, but then you may not be able to take advantage of some of the Mobile Application's features. Users who are uncertain about what information is mandatory are welcome to contact us.
Collection of non-personal information
When you open the Mobile Application our servers automatically record information that your device sends. This data may include information such as your device's IP address and location, device name and version, operating system type and version, language preferences, information you search for in our Mobile Application, access times and dates, and other statistics.
Use and processing of collected information
Any of the information we collect from you may be used to personalize your experience; improve our Mobile Application; improve customer service and respond to queries and emails of our customers; run and operate our Mobile Application and Services. Non-Personal Information collected is used only to identify potential cases of abuse and establish statistical information regarding Mobile Application traffic and usage. This statistical information is not otherwise aggregated in such a way that would identify any particular user of the system.
We may process Personal Information related to you if one of the following applies: (i) You have given your consent for one or more specific purposes. Note that under some legislations we may be allowed to process information until you object to such processing (by opting out), without having to rely on consent or any other of the following legal bases below. This, however, does not apply, whenever the processing of Personal Information is subject to European data protection law; (ii) Provision of information is necessary for the performance of an agreement with you and/or for any pre-contractual obligations thereof; (ii) Processing is necessary for compliance with a legal obligation to which you are subject; (iv) Processing is related to a task that is carried out in the public interest or in the exercise of official authority vested in us; (v) Processing is necessary for the purposes of the legitimate interests pursued by us or by a third party. In any case, we will be happy to clarify the specific legal basis that applies to the processing, and in particular whether the provision of Personal Data is a statutory or contractual requirement, or a requirement necessary to enter into a contract.
Information transfer and storage
Depending on your location, data transfers may involve transferring and storing your information in a country other than your own. You are entitled to learn about the legal basis of information transfers to a country outside the European Union or to any international organization governed by public international law or set up by two or more countries, such as the UN, and about the security measures taken by us to safeguard your information. If any such transfer takes place, you can find out more by checking the relevant sections of this document or inquire with us using the information provided in the contact section.
The rights of users
You may exercise certain rights regarding your information processed by us. In particular, you have the right to do the following: (i) you have the right to withdraw consent where you have previously given your consent to the processing of your information; (ii) you have the right to object to the processing of your information if the processing is carried out on a legal basis other than consent; (iii) you have the right to learn if information is being processed by us, obtain disclosure regarding certain aspects of the processing and obtain a copy of the information undergoing processing; (iv) you have the right to verify the accuracy of your information and ask for it to be updated or corrected; (v) you have the right, under certain circumstances, to restrict the processing of your information, in which case, we will not process your information for any purpose other than storing it; (vi) you have the right, under certain circumstances, to obtain the erasure of your Personal Information from us; (vii) you have the right to receive your information in a structured, commonly used and machine readable format and, if technically feasible, to have it transmitted to another controller without any hindrance. This provision is applicable provided that your information is processed by automated means and that the processing is based on your consent, on a contract which you are part of or on pre-contractual obligations thereof.
The right to object to processing
Where Personal Information is processed for the public interest, in the exercise of an official authority vested in us or for the purposes of the legitimate interests pursued by us, you may object to such processing by providing a ground related to your particular situation to justify the objection. You must know that, however, should your Personal Information be processed for direct marketing purposes, you can object to that processing at any time without providing any justification. To learn, whether we are processing Personal Information for direct marketing purposes, you may refer to the relevant sections of this document.
How to exercise these rights
Any requests to exercise User rights can be directed to the Owner through the contact details provided in this document. These requests can be exercised free of charge and will be addressed by the Owner as early as possible and always within one month.
Privacy of children
We do not knowingly collect any Personal Information from children under the age of 13. If you are under the age of 13, please do not submit any Personal Information through our Mobile Application or Service. We encourage parents and legal guardians to monitor their children's Internet usage and to help enforce this Policy by instructing their children never to provide Personal Information through our Mobile Application or Service without their permission. If you have reason to believe that a child under the age of 13 has provided Personal Information to us through our Mobile Application or Service, please contact us. You must also be at least 16 years of age to consent to the processing of your personal data in your country (in some countries we may allow your parent or guardian to do so on your behalf).
Links to other mobile applications
Our Mobile Application contains links to other mobile applications that are not owned or controlled by us. Please be aware that we are not responsible for the privacy practices of such other mobile applications or third-parties. We encourage you to be aware when you leave our Mobile Application and to read the privacy statements of each and every mobile application that may collect Personal Information.
We secure information you provide on computer servers in a controlled, secure environment, protected from unauthorized access, use, or disclosure. We maintain reasonable administrative, technical, and physical safeguards in an effort to protect against unauthorized access, use, modification, and disclosure of Personal Information in its control and custody. However, no data transmission over the Internet or wireless network can be guaranteed. Therefore, while we strive to protect your Personal Information, you acknowledge that (i) there are security and privacy limitations of the Internet which are beyond our control; (ii) the security, integrity, and privacy of any and all information and data exchanged between you and our Mobile Application cannot be guaranteed; and (iii) any such information and data may be viewed or tampered with in transit by a third-party, despite best efforts.
In the event we become aware that the security of the Mobile Application has been compromised or users Personal Information has been disclosed to unrelated third parties as a result of external activity, including, but not limited to, security attacks or fraud, we reserve the right to take reasonably appropriate measures, including, but not limited to, investigation and reporting, as well as notification to and cooperation with law enforcement authorities. In the event of a data breach, we will make reasonable efforts to notify affected individuals if we believe that there is a reasonable risk of harm to the user as a result of the breach or if notice is otherwise required by law. When we do, we will post a notice in the Mobile Application.
Changes and amendments
We reserve the right to modify this Policy relating to the Mobile Application or Services at any time, effective upon posting of an updated version of this Policy in the Mobile Application. When we do we will post a notification in our Mobile Application. Continued use of the Mobile Application after any such changes shall constitute your consent to such changes. Policy was created with WebsitePolicies.
Acceptance of this policy
You acknowledge that you have read this Policy and agree to all its terms and conditions. By using the Mobile Application or its Services you agree to be bound by this Policy. If you do not agree to abide by the terms of this Policy, you are not authorized to use or access the Mobile Application and its Services.
If you have any questions about this Policy, please contact us.
This document was last updated on July 2, 2019
CHECK ALL EVENTS FOR CORRECTNESS !!!
Please read these Instructions carefully prior using this tool !!!
1a. Download your roster using your company's web interface (NetLine/Crew CrewLink).
1b. Download your roster using the CrewLink App.
2. Save the roster locally as .pdf file.
3. Go to Convert .pdf to .ics.
4. Press Browse... button and select the just downloaded .pdf file.
5. Press Upload roster (.pdf file). Roster is then processed by rostoics tool.
6. Press Download roster (.ics file) and save that file locally.
7. Import the .ics file into your calendar using your preferred gateway.
This tutorial describes how to do scripted passwordless encrypted automatic rsync backups from an Ubuntu server to a Synology NAS. It is supposed to be a general guide, which can be used with other Linux variants as well. Only minor changes should be required.
I did this first of all in order to help other Synology NAS users perform efficient and secure backups to their NAS, but also to get get my scratch pad like personal installation notes in a more reasonable shape, so I can recall later on myself what I did, how, and why.
I used DSM 6.1.3 out of the box, running in a Virtual machine (using Virtual Machine Manager) on DS1817+ hardware.
The following setup describes a postix setup to send e-mails using an existing SMTP server. It is not designed to receive e-mails. My provider is DreamHost, but setup should be very similar with other hosters. I used a VM with the Ubuntu Server 16.04.1 out of the box installtion (ubuntu-16.04.1-server-amd64). This VM has no real FQDN, hence an imaginary needs to be configured in order to make the SMPT server accept sent e-mails.
rostoics is a tool which converts NetLine/Crew CrewLink roster .pdf files into .ics calendar files. The .ics files are used to create calendar events on iPhone, iPad, Samsung, ... basically any device able to deal with .ics files. Google Calendar also supports .ics file import.
Who should use it ...
All those who make extensive use of online as well as local calendar entries, being it for private or professional purpose. Basically all those who have a highly charged daily schedule requiring organization to some extent. Online integration adds sharing features to friends an family members. Tedious and error prone manual event entries can be avoided.
Who should disregard it ...
When hardcopies of Crew roster, downloaded PDF documents or CrewLink App roster consultations are sufficient for planning purpose, calendar setup isn't really necessary.
- event : Any calendar entry e.g. flight, ground duty, standby, free day, ...
- .pdf file : The format of the roster file downloaded from NetLine/Crew CrewLink.
- .ics file : Standardized calendar file format, generated by subject rostoics tool.
1. Only plain rosters are accepted. No notifications (schedule changes).
2. Only Luxair rosters are accepted for the time being.
3. Event spawning across more than one month is not allowed. - REMOVED (BETA)
I try to lift restrictions gradually.
Be aware that apparently parsed events might be incorrect or incomplete. Always check every event after import !!!
Debug messages on Convert .pdf to .ics page (bottom) shows events not parsed properly. Manual modification is required. E.g. ...
debug : unparsed event!
 Tue29 DH/LG 8361 /30 LUX 0540 0645 GVA [FT 00:00]
Please report (using Comment feature at the bottom of this page) any non parsed or badly parsed events.
Bug fixes could possibly introduce new bugs. Of course I try to avoid by all means, nevertheless there is a potential risk this might occur.
Any suggestions regarding formatting of event, additional information, this web interface, mistakes, ... just anything ... are welcomed!
Firefox 47.0.1 on Windows 7
Safari on iOS 10.1.1 (iPhone 6s)
Safari on iOS 9.3.5 (iPad [3rd generation])
Please report any browser related compatilities and incompatilities.
The biggest challenge is probably the roster file handling on different devices, id est downloading .pdf roster file from NetLine/Crew CrewLink, converting the .pdf file to an .ics file and importing this one into the personal calendar.
There are way too many possibilities and individual configurations, so that a general guideline is somewhat hard to give.
1. Download .pdf roster file from NetLine/Crew CrewLink
This is probably the most easiest step. Just visit the Airline's NetLine/Crew CrewLink page and download the desired roster, download and save the file to your favorite location - straight forward. This can be achieved either via PC/Mac or mobile (iPhone/Android). No big deal, but with iPhones, the .pdf file must be stored somewhere (iCloud Drive, Dropbox, Google Drive, ownCloud, ...). Other third-party Apps might work as well.
2. Convert the .pdf file to an .ics file
2.1 Website method
Visit the Convert the .pdf to .ics page and follow the post.
2.2 email method
Just send the .pdf file as email attachment to email@example.com. The body text of the email is ignored. You'll get the .ics file back to within less than a minute. Be aware that the returned email contains a summary of the parsed events, and that the .ics file can be found at the very bottom of the email.
None of both methods is better than the other. I's just what suits you best.
3. Import .ics roster file into the personal calendar
As calendar, you can use a local iPhone, Samsung, ... or the online version like Google Calendar or Yahoo Calendar. How to import .ics files into these calendars goes beyond the scope of this post, since it greatly varies depending on hardware, OS and Apps installed. Some "experimental" manipulations might be required.
Many devices try to be intelligent in terms of recognizing .ics files automatically and offering import. This works quite well, even if multiple calendars are used.
Below a guideline how to import the .ics file for Google Calendar using a browser:
1. Login your Google account
2. Select "Settings" from the "Settings" gear icon (top right corner)
3. Click on "Calendars" link from (top left corner)
4. Click on "Import calendar" link (bottom page)
5. Browse for your .ics roster file and select desired calendar (if more than one)
6. Press "Import"
Apple devices notes
- Chrome browser seems to handle file action easier than Safari. You might give it a try.
- Since end of 2016, Apple removed the "Add All" feature in the email client. In Safari, it still works. This is kind of a step back in evolution since it requires the user to manually add every individual event. This is everything other than comfortable. Details can be found here: Importing .ics calendar events from emails
What I do ... I download my .pdf roster file from NetLine/Crew CrewLink using my Windows 7 PC, save it locally on my Desktop, convert it into .ics roster using website method, import it into Google Calendar and that's it. All this takes less than a minutes.
Basically ... everybody can do all this with any device and any software. There are many ways to do it ... it's just a matter to find YOUR best way. This might take some time to discover. Once done, it's a piece of cake.
I don't have all these different devices and therefore, I can hardly simulate the entire range of possible hardware/software combinations. Hence I rely on user's feedback. Just post below ...
News & Updates ============== 22.03.2020 : rostoics 1.0.32 released fixed bug(s): - '-' in LOCATION: tag in case of 'DH/' added event type(s) FREE: COSO, DISP, FCT, QUART added event type(s) STBY: NATHLA, OBS, PERF, SERV, TTTI added new emojis to accommodate for new event types 02.08.2019 : rostoics 1.0.31 released added event type(s) FREE: V32 added event type(s) STBY: PREP 03.06.2019 : rostoics 1.0.30 released added event type(s) STBY: PBN minor bugs fixed 16.04.2019 : rostoics 1.0.29 released added event type(s) STBY: CPT, RNP fixed bug(s): - removed trailing dash in LOCATION tag after Cockpit Crew if Cabin Crew doesn't exist. 13.03.2019 : rostoics 1.0.28 released added event type(s) STBY: CONF, CWOI, HGS, PLRI added event type(s) FREE: FSP added new emoji EMOJI_DESKTOP_COMPUTER (for event type STBY: HGS) 08.02.2019 : rostoics 1.0.27 released added event types STBY: CPTI, DTCH, IUPAX, TECI 16.01.2019 : rostoics 1.0.26 released added event types STBY: GFT, OMA, OMB, OMC, CRS added event types FREE: FLT corrected some emoji code 14.11.2018 : rostoics 1.0.25 released added event types STBY: OTH_SBY RESERVE PLR 20.10.2018 : PHP Code: Added UID (timestamp in ms) to server filename in order to get unique filenames. This avoids crossed file access by users uploading rosters simultaniously using identical filenames. 18.10.2018 : rostoics 1.0.24 released added event types STBY: AGD ISIM-Q4 15.09.2018 : rostoics 1.0.23 released added event types STBY: ISIM-737 SIM-UPRT fixed bug(s): - malformed parsing of roster due lack of new line between last TLC of month and following "Recurrent Training / Checks" 17.08.2018 : rostoics 1.0.22 released changed emoji for event type FLIGHT: TAX and TAXI added event types STBY: ADM/OPS APBADGE LPC-737 LPC_Q4 SEL TECR added emojis: EMOJI_V_TRAFFIC_LIGHT EMOJI_RADIOACTIVE EMOJI_LINKED_PAPERCLIPS fixed bug(s): - event type STBY end date next day not correct end date was not increased by 1 if event ending next day e.g. simulator spawing across 00:00 07.06.2018 : rostoics 1.0.21-PL1 released major bug in event type STBY code fixed (segmentation fault) 23.05.2018 : rostoics 1.0.21 released added event detail line as LOCATION tag for all event types added emojis for all event types added event type STBY : PFC 18.05.2018 : rostoics 1.0.20-PL1 released minor bug w/ event type STBY logging fixed 18.05.2018 : rostoics 1.0.20 released added emojis for event type STBY minor bugs fixed 28.04.2018 : rostoics 1.0.19-PL1 released MySQL/rostoics UTF-8 (special characters) problem fixed 18.04.2018 : Web hoster changed some global PHP configuration which created "Error 404" for some users. Error occurred or not according local device settings. PHP code modified to cope with new configuration! 17.04.2018 : rostoics 1.0.19 released Emojis introduced (experimental - F and flight events only) TLC database updated improved logging (content and presentation) minor bugs fixed 16.03.2018 : rostoics 1.0.18-PL2 released fixed (nasty) bugs w/: - complete failure to import any event - "Notes" of all events not shown 15.03.2018 rostoics 1.0.18-PL1 released minor bug fixed added event : SICK added "roster printed" info 06.03.2018 rostoics 1.0.18 released added events : RSEN, NC, RFC TLC database updated improved presentation of modified "unparsed event" improved logging (content and presentation) code optimization fixed bugs w/: - support for 2nd suffix line (added in 1.0.17) corrupted formatting of misc data in event w/ 2nd suffix line - event end date next day not correct (e.g. night duty) end date was not increased by 1 if event ending next day - wrong formatting of .sum file with event type FLIGHT event type FLIGHT w/ 3 chars (e.g. "CAR") misaligned .sum file - missing mcm in events type FREE and STANDBY mcm missing under certain circumstances mcm retained for next event under certain circumstamces - TLCs previous flight shown when no Crew on roster (e.g. "CAR") only for event type FLIGHT w/o aircraft 3 letter IATA aircraft code - incorrect parsing of hotel details if more than 1 hotel on roster event details for hotel were badly parsed 27.06.2017 rostoics 1.0.17 released added support for 2nd suffix line added support for cockpit/cabin crew change during same rotation added processed hotel counter minor bugs fixed 18.03.2017 rostoics 1.0.16-PL1 released minor bug fixed 15.03.2017 rostoics 1.0.16 released added events : FF, VSP reported bugs fixed 15.02.2017 firstname.lastname@example.org rostoics interface online Export/Import of roster files post rewritten 23.01.2017 rostoics 1.0.15 released added events : X, FP reported bugs fixed 12.01.2017 rostoics 1.0.14 released added MySQL database support for TLC (3-letter-code) name resolution reported bugs fixed 21.12.2016 rostoics 1.0.13 released "To c/m:" (message to crew member) support added 20.12.2016 rostoics 1.0.12 released added events : RC, IRC 19.12.2016 rostoics 1.0.11 released added event : REV .pdf file names including spaces and special characters are accepted now .pdf files other than NetLink/Crew CrewLink roster are rejected 18.12.2016 rostoics 1.0.10 released (first stable version) added events : H?, H1, ... (Hotels) reported bugs fixed code optimization
April 2020 M T W T F S S « Aug 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30