How to Get Ft8 to Upload My Contact to Hrd Logging Program

Automatic FT8 Logging for JTAlertX and Ham Radio Deluxe with QSO Relay

Ham Radio Deluxe and WSJT-Ten Modes with JTAlert and QSO Relay

Editorial de Mike, WA9PIE; HRD Software, LLC

We hither at HRD Software would similar to extend a dandy deal of gratitude to Chris Fredericks, VK2BYI. QSO Relay provides functionality at a very important and fast moving fourth dimension in ham radio. QSO Relay enables Ham Radio Palatial users to enjoy the benefits provided by JTAlert and WSJT X for digital modes such equally JT65, JT9, and a manner that has taken the ham radio community past storm - FT8.

Chris worked with us patiently to sort out bug with our API to brand this happen. Chris gave us permission to reproduce his instructions on how to setup QSO Relay with JTAlert and WSJT X to enable Ham Radio Palatial users to enjoy these digital modes and log FT8 QSOs into Ham Radio Deluxe Logbook AUTOMATICALLY. Delight enjoy these instructions.

Visit the VK2BYI webpage at http://world wide web.vk2byi.com.au/

Hams ask me the following question oft, "Does Ham Radio Palatial support FT8?" Through his efforts, Chris has fabricated this possible for Ham Radio Deluxe users. We're very grateful.

Thanks, Chris!


QSO RELAY

Contact Forwarding for JTAlertX and Ham Radio Deluxe Logbook v6.ten

CHRIS FREDERICKS, VK2BYI

Release ane.7

twenty September 2017
Copyright © VK2BYI. All rights reserved. (Used with Permission)

Microsoft, Excel, Give-and-take and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

QSO Relay is a Windows desktop application that runs equally a System Tray application that listens for contacts beingness forwarded from JTAlertX via the User Datagram Protocol (UDP). As datagrams are received, they are logged locally in a SQLite database then relayed via Transmission Control Protocol (TCP) to a Ham Radio Deluxe Logbook v6.10 database.

Features

  • Runs equally a minimised application with an icon in the Organisation Tray.
  • Works with HRD Logbook v6.x with full support for logbooks hosted on the following database platforms: Microsoft Access, Microsoft SQL Server and Oracle MySQL Server.
  • Database synchronisation allows JTAlertX to update its Wanted Alarm requirements.
  • Helps foreclose duplication of contacts in HRD Logbook.

QSO Relay was adult as a proxy application that accepts contacts beingness forwarded by the 'Last QSO API' in JTAlertX, and then relays the contact to the HRD Logbook database. QSO Relay enables Ham Radio Deluxe Logbook v6.x to go on being used with JTAlertX with version 2.9.vii onwards

bg5.png

Fig 1.

As confirmations of contacts are subsequently received from various sources such as LoTW, eQSL.cc and QSL Cards, the corresponding rows in the HRD Logbook database are updated. QSO Relay has a feature whereby contact confirmations in the HRD Logbook database can exist updated in the QSO Relay database equally well. This synchronisation procedure is requested by selecting a QSO Relay bill of fare item.

bg6.png

Fig two.

This in turn should exist followed by a 'Scan Log and Update…' in JTAlertX to update its Wanted Alert requirements.

System Requirements

QSO Relay is a Windows desktop application that has been designed to use the Microsoft .Internet Framework iv.6 which is supported by Microsoft to run on the post-obit workstation and server operating systems:

  • Windows x
  • Windows 8.1
  • Windows 8
  • Windows 7 SP1
  • Windows Vista SP2

Windows x comes with the Microsoft .Internet Framework iv.6 pre-installed. The .Internet Framework 4.6 will demand to exist downloaded and installed for the other operating organisation versions listed above if information technology hasn't already been installed past other .Net applications run on the workstation.

Refer to https://www.microsoft.com/en-au/download/details.a... for farther details on how to install the Microsoft .NET Framework 4.6 using the Microsoft .Net Framework 4.6 (Web Installer) for Windows Vista SP2, Windows 7 SP1, Windows eight, Windows eight.1.

Hardware Requirements

Processor: 1GHz (32-bit or 64-chip)

RAM: 512 MB

Deejay space (minimum)

  • 32-bit: four.5 GB
  • 64-bit: iv.5 GB

(The hardware requirements listed in a higher place are those specified by Microsoft for the .Internet Framework 4.half-dozen itself.)

Installing QSO Relay


You can download the latest release of the QSO Relay installation programme from the VK2BYI website at http://www.vk2byi.com.au/qsorelay.

Once the download is complete, click on the downloaded .MSI file to start the Windows Installer.

bg8a.png

Click the Side by side push button to continue.

bg8b.png

Go out Everybody (all users) selected and click the Adjacent pushbutton to continue.

bg9a.png

Read the license agreement and if y'all concord to the terms and wish to keep installing the software, select I take the terms in the License Agreement and click the Next pushbutton.

bg9b.png

Y'all can read the release notes at present, or subsequently. A copy of the release notes will be installed in the aforementioned binder as the software. Click the Next pushbutton to continue.

bga1.png

Exit the suggested Folder unchanged and click the Next pushbutton to continue.

bga2.png

Click the Install pushbutton when you ready to proceed with the installation.

bgb1.png

It may take several minutes, simply the Status: text, and the progress bar volition update every bit the installation progresses.

bgb2.png

Once the installation complete, you can leave the checkbox ticked to launch QSO Relay and click the Finish button. Start Carte desktop shortcuts will be created, and then you can also use them to start QSO Relay.


Starting QSO Relay

Click on the QSO Relay desktop shortcut to start the QSO Relay application. When the QSO Relay application is running, a redtrayicon.PNGicon will be displayed in the system tray.

The awarding user interface is kept minimal so every bit non to increase desktop clutter on an already busy computer screen as found in most apprentice radio stations. A single left or right-mouse push click on the icon volition open up a carte du jour on which the various functions of the application can be invoked.

bg21a.png

The desktop shortcut created by the QSO Relay installation can be copied into the Windows start-up folder so that the programme is automatically launched each time Windows starts upwards.

Copy the Desktop shortcut into the following binder:

C:\Users\\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

If y'all are upgrading from either version i.1 or 1.2 of QSO Relay, you may receive the post-obit message the start fourth dimension that version ane.iii or after is run:

bgc-warning.png

This is because the method used to capture contacts coming from JTAlertX to be logged has changed with version 1.3 onwards, and it is necessary to modify the default Incoming UDP Port number.


Configure JTAlertX Logging Settings

Starting with version i.three onwards, QSO Relay utilises the 'Standard ADIF File' and 'Last QSO API' logging features in JTAlertX version 2.9.7 onwards, to relay contacts to HRD Logbook. The following steps describe how to configure JTAlertX to work with QSO Relay:

ane. Select Standard ADIF File from the Logging node in JTAlertX settings and tick the Enable Standard ADIF File Logging;

2. Click on the Create New pushbutton in the Log File group of controls and browse to a suitable folder, and create an ADIF that is to be used for logging the contacts. JTAlertX will suggest creating the file in the following folder:

C:\Users\\AppData\Local\HamApps\\logs\JTAlertX\

Still, you may wish to create the file in the same binder as QSO Relay stores its application information, as in the following screen capture:

C:\Users\\AppData\Roaming\VK2BYI\QSORelay\

bgd.png

3. Select Last QSO API from the Logging node in JTAlertX settings, and have note of the value in the UDP Port text box, equally this value must be entered into the Incoming UDP Port: setting in the QSO Relay Options dialog:

bge.png

4. The ADIF File Location setting is set by default and cannot be changed.


Configure QSO Relay Settings

Click on thetrayicon.PNGtray icon and select the Configure QSORelay… detail from the menu:

The Options dialog will be displayed and will be partially populated with default values on initial installation:

bgf1.png

UDP Incoming

The UDP Incoming grouping of controls specify the UDP port that QSO Relay listens on for incoming contacts from JTAlertX. The values of 127.0.0.1 and 2333 are the default values used by the 'Terminal QSO API' in JTAlertX. In most cases values can be left unchanged.

JTAlertX ADIF Log File

The JTAlert ADIF Log File group of controls specify the filename of the ADIF Log File that was created in JTAlertX for Standard ADIF File logging. Refer to the Configure JTAlertX Logging Settings section at the finish of this certificate for farther details on configuring JTAlertX to work with QSO Relay.

To specify the JTAlertX ADIF Log File, click on the Select pushbutton to brandish a file Open dialog that can be used to browse the desired file to be selected:

bg10.png

Select the ADIF Log File you created in JTAlertX, and click on the Open up pushbutton to open the ADIF file.

The full pathname will be displayed in the JTAlert ADIF Log File text box:

bg11.png


Ham Radio Deluxe v6.x Logbook

The IP Address and TCP Port values in the Ham Radio Palatial v6.x Logbook command group, are the default values that HRD Logbook uses for its Logging API. These values can typically exist left unchanged too.

The Logbook Database driblet downwardly listbox volition exist populated with the list of all Logbook Databases defined in HRD Logbook. Select the logbook database to be used for logging new contacts. The combination of IP Address, TCP Port and Logbook Database are used past QSO Relay to log new contacts coming from JTAlertX into HRD Logbook.

To read existing contacts from the logbook database, QSO Relay utilises a universal database provider platform that works with all database technologies that HRD Logbook supports – Microsoft Admission, Microsoft SQL Server and Oracle MySQL. This requires the appropriate connectedness string to exist divers by clicking on the Properties link.

The post-obit sections describe the backdrop to exist specified depending upon the database platform hosting the HRD Logbook.

Microsoft Access

The Microsoft Access data source connection string only requires one value to be entered – the full pathname to the Microsoft Admission (*.mdb) Standard JET Database file used as the HRD Logbook database.

bg12a.png

Click on the ellipsisellipsis.PNG pushbutton to display a file Open dialog that can be used to scan to, and select, the desired Access database file used by the HRD Logbook:

bg12b.png

The typical path to this file will be like the following:

C:\Users\(your username)\AppData\Roaming\HRDLLC\HRD Logbook

Click on the Open pushbutton to close the file open dialog and the full pathname will be displayed in the Information Source text box.

You can click on the Test Connection pushbutton to verify that QSO Relay can create a shared connection to the Access database.

Click on the OK pushbutton to close the Connection Properties dialog and apply the new data source connexion backdrop.

Click on the Cancel pushbutton to close the Connection Properties dialog without applying whatsoever changes to the information source connection string backdrop.

Microsoft SQL Server

The Microsoft SQL Server data provider connexion cord requires Server, Username, Password and Initial Catalog values to be specified.

bg13.png

If the workstation that QSO Relay has been installed on, is also the host for the Microsoft SQL Server, the default localhost value can exist used for the Server: value. This would typically occur when an Limited edition of Microsoft SQL Server is being used. If Microsoft SQL Server is running on another computer, you volition need to enter its IP Address.

Enter the name of the SQL Server Login being used to access the HRD Logbook database on the SQL Server for the Username: value.

Enter the password of the Server Login being used to access the HRD Logbook database on the SQL Server for the Password: value.

In one case the Server, Username and Password have entered, you can click on the Initial Catalogue: drop downwards list box and select the database being used for the HRD Logbook on the SQL Server.

You lot can click on the Test Connectedness pushbutton to verify that QSO Relay tin create a connection to the SQL Server database.

Click on the OK pushbutton to shut the Connection Properties dialog and use the new data source connection properties.

Click on the Cancel pushbutton to close the Connection Properties dialog without applying any changes to the data source connection string properties.

Oracle MySQL

The Oracle MySQL data provider connection cord requires Server, Username, Password, Database and Port values to be specified.

bg14.png

If the workstation that QSO Relay has been installed on, is also the host for the MySQL server, the default localhost value can exist used for the Server: value. This would typically occur when a Customs edition of Oracle MySQL server is existence used. If MySQL server is running on another estimator, you will need to enter its IP Address.

Enter the name of the user being used to access the HRD Logbook database on the MySQL server for the Username: value.

Enter the password of the user being used to admission the HRD Logbook database on the MySQL server for the Countersign: value.

Once the Server, Username and Password take entered, you can click on the Database: drop down listbox and select the database being used for the HRD Logbook on the MySQL server.

The Port: value of 3306 is the default for MySQL. Change the value to the port being used if the default value is not being used.

Yous can click on the Examination Connection pushbutton to verify that QSO Relay can create a connection to the MySQL database.

on the OK pushbutton to close the Connexion Properties dialog and utilise the new information source connection backdrop.

Click on the Cancel pushbutton to close the Connection Properties dialog without applying any changes to the information source connection string properties.

Logbook Excerpt

When a Synchronise Databases performance (described in the adjacent section) is performed, an extract of rows from the HRD Logbook is written every bit an ADIF file that JTAlert can read during a Browse Log and Update to update its Wanted Alert requirements.

The extract can be qualified by selecting from the choices in the Logbook Extract driblet down listbox:

  • All contacts – all rows in HRD Logbook are extracted. This is the default setting.
  • JT Way contacts just – only those rows where the mode is one of the modes supported past WSJT 10 are extracted;
  • Digital mode contacts only – all rows except those where the mode is AM, ATV, CW, DSTAR, FAX, FM, LSB, SSB, SSTV, USB.

Typically, you lot would specify that All contacts are to exist extracted. Even so, if Alert tracking by all modes in JTAlert is not required, the size of the extract can be reduced by selecting the JT Mode contacts only or Digital mode contacts but settings as advisable to your Warning tracking requirements.

QSO Relay SQLite Database

QSO Relay uses a SQLite database file for its contact database. The QSO Relay SQLite Database group of controls are used to specify the filename to use for the QSO Relay SQLite database:

bg16a.png

To create a new SQLite database, click on the Create pushbutton to display a file Save As dialog that can be used to specify the desired filename to be used for the QSO Relay contact database:

bg16b.png

Type in a name for the file in the File name: textbox and click on the Relieve pushbutton to create the SQLite database file. The full pathname will exist displayed in the SQLite Database File: text box.

To open a previously created SQLite database, click on the Select pushbutton to display a file Open up dialog that can be used to browse the desired file to be selected as the QSO Relay contact database:

bg17.png

Select the existing file, or type the filename in the File proper name: textbox, and click on the Open pushbutton to open the SQLite database file.

The full pathname will be displayed in the SQLite Database File: text box:

bg18.png

Session Tracing

A session tracing feature has been implemented, that when enabled, will capture detailed diagnostic data to a session log file for later analysis.

To start session tracing, cheque the Enable tracing checkbox and close the Options dialog. A file will exist created using the following name format:

Session yyyyMMddHHmmss.log

where yyyyMMdd is the current appointment and HHmmss is the current local time.

The session log files are written to the following folder:

C:\Users\\AppData\Roaming\VK2BYI\QSORelay\

To stop session tracing, uncheck the Enable tracing checkbox and close the Options dialog, and the session log file will exist closed.

During the fourth dimension that session tracing is running, diagnostic information volition be appended to the session log regarding contacts being relayed to HRD Logbook, and data being transferred during database synchronisation. This session data, along with any exception logs, can exist useful when trying to isolate the crusade of an issue you might be experiencing and can be forwarded to the QSO Relay authors for further assay.

Note: Yous should non try to open the session log file while tracing is running. Y'all must uncheck the Enable tracing checkbox and close the Options dialog, or close down QSO Relay, so that whatsoever pending information is written, and the log file is closed.

If the Enable tracing checkbox is left checked when QSO Relay is shut down, a new session log will be created when QSO Relay is restarted, and tracing will resume until QSO Relay is shut down once again, or the Enable tracing checkbox is unchecked and the Options dialog is closed. Therefore, yous may wish to uncheck the Enable tracing checkbox before shutting downwards QSO Relay so that it is non forgotten about, and copious amounts of diagnostic data slowly fills upwardly disk infinite.


Synchronise Databases

To initially populate the QSO Relay database, and subsequently to ensure that the QSO Relay database is kept up-to-date with changes made in the HRD Logbook database, e.g. by confirmations received via LoTW, eQSL.cc and QSL Cards, click on the tray icontrayicon.PNGand select the Synchronise Databases… detail from the menu:

bg1a1.png

QSO Relay volition then perform the following steps:

  • Checks the HRD Logbook for indistinguishable contacts, that is, where in that location is more than than one row with identical QSO Date, Time On, Phone call, Ring and Mode values. If duplicates are found, the details will exist written to the report file (see below), and the database synchronisation will cease;
  • Add any QSO Relay contacts that have not already been relayed to HRD Logbook. This could occur where HRD Logbook was not running at the time a JT-Mode contact was forwarded by JTAlertX to QSO Relay;
  • Truncate and reload QSO Relay database rows with the current details of all mode contacts, only JT mode contacts or only digital way contacts as specified in the QSO Relay Options dialog;
  • Write an updated version of the JTAlertX ADIF Log File from the contacts in the HRD Logbook and so that a 'Scan Log and Update…' in JTAlertX tin can be run to update its Wanted Alert requirements.
  • During the synchronisation process a pop-up notification will be displayed above the tray notification area:

    bg1a2.png

    After the database synchronisation has completed, a summary report volition be written to the Documents/QSORelay folder using the following filename format:

    Sync Report yyyyMMddhhMMss.txt

    where yyyyMMdd is the appointment, and ddhhMMss is the local fourth dimension the synchronisation was performed.

    The time taken to synchronise the databases will vary depending upon the software and hardware functioning of the estimator(s) involved, besides as the number of database rows being processed, simply will typically take less than a minute.


    Delete a Contact

    If a JT-manner contact relayed to HRD Logbook from QSO Relay was made by mistake, information technology can be merely deleted from HRD logbook. The next time the databases are synchronised, the same contact will be deleted from the QSO Relay database automatically, or it can be manually deleted. To manually delete the aforementioned contact from the QSO Relay database, click on the tray icon and select the Delete a Contact… item from the carte du jour:

    bg1c1.png

    This will display the Delete Contact dialog in which the row to be deleted is selected by using the upwards and downwards arrow keys, or by clicking in the left most column to highlight the row:

    bg1c2.png

    The text on the caption bar indicates the number of rows in the QSO Relay database which should equal the number of rows in the HRD Logbook after a database synchronisation has been completed, and as contacts are logged in both databases.

    Note: If there are many contacts (10'south of thousands), it may accept some time for the Delete Contact dialog to appear for the outset time while the grid is being populated. Nevertheless, when the Delete Contact dialog is later re-opened, it volition update quicker.

    To assist in locating a row in the grid, a search can be made by selecting either the QsoDate radio button to search for contacts by QSO Date, or by selecting the Call radio button to search for contacts by Telephone call. As characters are typed into the text box, the grid volition begin to filter the rows displayed to those that partially friction match the text beingness entered.

    For example, to locate contacts made in September of 2015, enter 201509. To locate a contact by Telephone call, select the Call radio button and blazon the callsign of the station worked.

    After selecting the row, click on Delete pushbutton and you lot volition be given a hazard to ostend the deletion before proceeding:

    bg1d.png

    Click on the Yeah pushbutton to have the row deleted from the QSO Relay database, or click on the No pushbutton to cancel the deletion.

    Click on the Close button in the Delete Contact dialog to shut the dialog.


    Check for Updates

    To determine if a new release of QSO Relay is available for download, click on the tray icon and select the Check for Updates… item from the menu to launch the QSO Relay Updater as a split application.

    bg1e1.png

    The QSO Relay Updater will determine if a later release version is available, and if so, details like the following will be displayed:

    bg1e2.png

    Click on the No pushbutton to cancel the update. Click on the Yes pushbutton to proceed with the download. A progress bar will display as the installation file is downloaded:

    bg1e3.png

    The QSO Relay awarding needs to be airtight before it can be updated, then after the download completes the post-obit message will be displayed:

    bg1f1.png

    Close the QSO Relay application by clicking on the tray icon and select the Leave… detail from the menu:

    bg1f2.png

    Then click on the Aye pushbutton in the Continue with Update bulletin dialog to proceed with the installation. Refer to the Installing QSO Relay topic for farther details on the installation process.


    Most QSO Relay

    To brandish details of the version of QSO Relay that is currently running, click on the traytrayicon.PNGicon and select the About QSO Relay card item:

    bg20a.png

    The version number is displayed in the About QSO Relay dialog:

    bg20b.png

    Close the About QSO Relay dialog by clicking the OK pushbutton.


    Endmost QSO Relay

    To close the QSO Relay application, click on the tray icon and select the Exit menu particular:

    bg1f2.png

    QSO Relay will then terminate and the traytrayicon.PNG icon will exist removed from the system tray.


    Reporting Issues

    If y'all encounter a problem, before reporting the issue via our support forum, please read the following information. You lot will then be able to provide us with technical information that will help to diagnose and resolve any coding bug more quickly.

    Unless yous already have, you should join the QSO Relay support forum at:

    http://groups.io/thou/vk2byi-qsorelay

    You then tin can search the message topics posted by other forum members, and many times a solution to your problem may be found in that location.

    Otherwise, follow this procedure when reporting an issue:

    • If an application error occurs, an exception log file volition be automatically created using the following name format:
    • Exception yyyy-MM-dd.log
    • where yyyy-MM-dd is the current local date.
    • If you can repeat the process that causes an error, refer to the Session Tracing section earlier in this certificate on how to create a session log file. Then repeat the process with session tracing enabled, and be sure to uncheck the Enable tracing checkbox and click the Close push button in the QSO Relay Options dialog when done. This volition ensure that the full session tracing information is written and the file airtight.
    • The exception and session tracing log files are written to the post-obit folder:

    C:\Users\\AppData\Roaming\VK2BYI\QSORelay\

    • Nada upwardly all log files (*.log) from this binder, and ship an email to chris@vk2byi.com.au explaining the issue you lot are encountering and be sure to attach the log files.
    • If the attachment is too big to exist sent via email, you can postal service it to the files section in our support forum instead.

    Release Notes

    Version i.7.6472.36182 (2017-09-twenty)

    • Stock-still mistake with cached contacts file non being parsed correctly.

    Version 1.half dozen.6396.27909 (2017-09-18)

    • Added FT8 and JT4 to the set of modes that volition exist extracted from HRD Logbook during a synchronise database operation when filtered by the 'JT Style contacts simply' selection in the Logbook Extract drop-down listbox in the Options dialog;
    • Added support for embedded wagon return/line feed characters in the Address field in the UDP datagram sent by JTAlertX.

    Version 1.5.6371.29224 (2017-06-11):

    • Added a new feature whereby the scope of rows to be extracted from HRD Logbook during a synchronise database functioning can be filtered to all manner contacts, simply JT way contacts or only digital style contacts;
    • Corrected the contents of the County field when a new QSO is being added to HRD Logbook, to include the Canton value only, and not the State and County values for The states contacts.

    Version 1.4.6357.26174 (2017-05-28):

    • Handles 'empty' values in the Latitude, Longitude, My Latitude and My Longitude columns during ADIF logging file extract;
    • Rounds non-integer values in RX Power and TX Ability columns during ADIF logging file excerpt;
    • Added RX Power cavalcade to ADIF logging file extract.

    Version 1.iii.6343.31566 (2017-05-16):

    • Modified to work with JTAlertX 2.9.vii onwards using its Standard ADIF File and Last QSO API logging features;
    • Added HRD Logbook indistinguishable checking and reporting during Database Synchronisation;
    • Added more support for globalization of digit group and decimal symbols.

    Version 1.2.6338.24212 (2017-05-12):

    • Improved Database Synchronisation performance;
    • Added Database Synchronisation reports to users "Documents\QSORelay" folder;
    • Added caching of contacts that could not be relayed to HRD Logbook, to allow relay during a subsequent database synchronisation;
    • Improved message description on unique constraint violation exceptions;
    • Floating point values in float columns that should just contain integer values;
    • Added row count to Delete Contact dialog caption bar;
    • Added QsoDate and Call search characteristic to Delete Contact dialog;
    • Added multiple attempts to check contact has been successfully logged in HRD Logbook;
    • Added support for different decimal identify characters for different cultures;
    • Added support to catechumen invalid floating-signal values to integers values;
    • Added diagnostic tracing statements that can be captured to a session log file.

    Version 1.1.6323.38334 (2017-04-24):

    • Fixed contact verification to prevent duplicates;
    • Fixed Access query error;
    • Changed default binder for SQLite files to application data folder.

    Version i.0.0.0 beta (2017-02-05):

    • Initial beta release.

    brownwoorst.blogspot.com

    Source: https://www.hamradiodeluxe.com/blog/QSO-Relay-Contact-Forwarding-for-JTAlertX-and-Ham-Radio-Deluxe-Logbook-v6x-and-FT8-and-JT-modes.html

    0 Response to "How to Get Ft8 to Upload My Contact to Hrd Logging Program"

    Post a Comment

    Iklan Atas Artikel

    Iklan Tengah Artikel 1

    Iklan Tengah Artikel 2

    Iklan Bawah Artikel