{"id":42861464,"url":"https://github.com/mbridak/fdserver","last_synced_at":"2026-01-30T12:37:59.792Z","repository":{"id":65637238,"uuid":"596275264","full_name":"mbridak/fdserver","owner":"mbridak","description":"Field Day multicast log aggregator for fdlogger.","archived":false,"fork":false,"pushed_at":"2025-07-12T20:28:35.000Z","size":177,"stargazers_count":3,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-23T15:59:45.903Z","etag":null,"topics":["amateur-radio","contesting","field-day","ham-radio","hamradio","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mbridak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2023-02-01T20:46:21.000Z","updated_at":"2025-07-12T20:28:38.000Z","dependencies_parsed_at":"2023-02-19T12:01:22.770Z","dependency_job_id":null,"html_url":"https://github.com/mbridak/fdserver","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mbridak/fdserver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbridak%2Ffdserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbridak%2Ffdserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbridak%2Ffdserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbridak%2Ffdserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mbridak","download_url":"https://codeload.github.com/mbridak/fdserver/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbridak%2Ffdserver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28912913,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-30T12:13:43.263Z","status":"ssl_error","status_checked_at":"2026-01-30T12:13:22.389Z","response_time":66,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["amateur-radio","contesting","field-day","ham-radio","hamradio","python"],"created_at":"2026-01-30T12:37:59.727Z","updated_at":"2026-01-30T12:37:59.781Z","avatar_url":"https://github.com/mbridak.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Field Day log aggregating server\n\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n[![Python: 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg?logo=python)](https://www.python.org/downloads/)\n![Made With: Ancient Technology](https://img.shields.io/badge/Made%20with-Ancient%20technology-red)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/fdserver?label=PYPI-Downloads\u0026logo=pypi)\n\n![logo](https://github.com/mbridak/fdserver/raw/master/fdserver/data/k6gte-fdserver-128.png)\n\n## TOC\n\n- [Field Day log aggregating server](#field-day-log-aggregating-server)\n  - [TOC](#toc)\n  - [What is it](#what-is-it)\n  - [No really what is it](#no-really-what-is-it)\n  - [Screenshot](#screenshot)\n  - [Installation](#installation)\n  - [Recent Changes](#recent-changes)\n  - [Configuration and first run](#configuration-and-first-run)\n\n## What is it\n\n[ARRL Field Day](http://field-day.arrl.org/) is a once a year 24hr emergency\npreparidness event for radio amateurs (Hams). During the event, we try and\nmake as many radio contacts with other Hams in a 24 hour period. You can find\nout more about amateur radio by visiting the [ARRL](https://www.arrl.org/).\n\n## No really what is it\n\nThis server listens to multicast logging packets generated by multiple [fdlogger](https://github.com/mbridak/FieldDayLogger)\nclients. So a group or club can submit a group cabrillo log.\n\n## Screenshot\n\n![main display](https://github.com/mbridak/fdserver/raw/master/pics/server_pic.png)\n\n## Installation\n\n```bash\n# install\npip install fdserver\n\n# update\npip install -U fdserver\n\n# remove\npip uninstall fdserver\n```\n\n```text\nusage: fdserver [-h] [-l]\n\nField Day aggregation server.\n\noptions:\n  -h, --help  show this help message and exit\n  -l, --log   Generate log\n```\n\n## Recent Changes\n\n- [24.2.19] Removed datetime.utcnow() and pkgutil.get_loader() deprecations.\n- [23.6.12] Merged PR from @wvolz to handle MacOS port reuse.\n\n## Configuration and first run\n\nWhen executed for the first time, the server will not find a configuration file.\nWhen this happens, the server will place a fresh copy in the local directory.\nPress CTRL-C to end the program then edit the configuration file now found at\n`./server_preferences.json`. Unless you have good reason to, don't change the\nmulticast settings.\n\n```json\n{\n    \"ourcall\": \"W1AW\",\n    \"ourclass\": \"3A\",\n    \"oursection\": \"ORG\",\n    \"bonus\": {\n        \"emergency_power\": {\n            \"bool\": 0,\n            \"station_count\": 0\n        },\n        \"media_publicity\": 0,\n        \"public_location\": 0,\n        \"public_info_table\": 0,\n        \"message_to_section_manager\": 0,\n        \"message_handling\": {\n            \"bool\": 0,\n            \"message_count\": 0\n        },\n        \"satellite_qso\": 0,\n        \"w1aw_bulletin\": 0,\n        \"educational_activity\": 0,\n        \"elected_official_visit\": 0,\n        \"agency_representative_visit\": 0,\n        \"gota\": 0,\n        \"web_submission\": 0,\n        \"youth_participation\": {\n            \"bool\": 0,\n            \"youth_count\": 0\n        },\n        \"social_media\": 0,\n        \"safety_officer\": 0\n    },\n    \"batterypower\": 0,\n    \"name\": \"Hiram Maxim\",\n    \"address\": \"225 Main Street\",\n    \"city\": \"Newington\",\n    \"state\": \"CT\",\n    \"postalcode\": \"06111\",\n    \"country\": \"USA\",\n    \"email\": \"Hiram.Maxim@arrl.net\",\n    \"mullticast_group\": \"239.1.1.1\",\n    \"multicast_port\": 2239,\n    \"interface_ip\": \"0.0.0.0\",\n    \"node_red_server_ip\": \"127.0.0.1\",\n    \"node_red_server_port\": 12062\n}\n```\n\nUnder the bonus section, if your group qualifies for a bonus, put `true` or `1` next\nto the type of bonus.\n\nSave the file and relaunch the fdserver application.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbridak%2Ffdserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmbridak%2Ffdserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbridak%2Ffdserver/lists"}