Giter Club home page Giter Club logo

dmrhub's Introduction

USA-RedDragon Trophies

About me

I'm a DevOps Engineer and amateur radio operator. I'm a polyglot programmer with Go being my primary language, and I run my own Kubernetes cluster at home.

Fast facts

  • 🔭 I am an amateur astrophotographer, see my work at https://astro.garden
  • 📘 I have a portfolio site at https://jacob.mcswain.dev
  • 📱 I used to be an Android ROM and kernel developer. At separate points I worked on Invictrix, Desolation, Bliss, Fusion, and Carbon.
  • 📘 Looking for an old project of mine? I mirror my GitHub and all previously-archived projects to a Gitea instance at https://git.mcswain.dev/USA-RedDragon

Major Projects

  • 🎙️ DMRHub - Run a DMR network server with a frontend, authentication, private and group calls and a parrot all in a single binary
  • 🎮 Jaxex Launcher Linux Flatpak - The Jagex Launcher for Linux in Flatpak form.
  • 📡 AREDN Cloud Tunnel - Run an AREDN tunnel server or Supernode in a Docker container without any RF capabilities.
  • 🎮 GBA Emulator - A toy GBA emulator written in Go to help me learn the inner workings of an ARM7TDMI CPU

Minor Projects

Stats

USA-RedDragon's GitHub stats USA-RedDragon's GitHub languages

dmrhub's People

Contributors

dependabot[bot] avatar renovate[bot] avatar usa-reddragon avatar usa-reddragon-renovate-ce[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

fossabot

dmrhub's Issues

Error on docker run "exec /DMRHub: exec format error"

On some of the new docker image versions including the latest 1.0.18 there seems to be a problem with the docker entrypoint. On startup only this error appears in the log and then the container shuts down immediately:
exec /DMRHub: exec format error

Question

This looks very interesting. I was going to try and run on a pi4

My question is will this function as a repeater without network? Meaning off grid can I get the functions you list of TGID

Unclear will this TS1-TS2 cross repeater single frequency .. (or duplex) -- or do i need qtyX master and slaves.

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Location: .github/renovate.json
Error type: Invalid JSON (parsing failed)
Message: Syntax error: expecting end of expression or separator near = \\"(?<cu

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Awaiting Schedule

These updates are awaiting their schedule. Click on a checkbox to get an update now.

  • chore(deps): lock file maintenance

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

docker-compose
docker-compose.yml
  • redis 7-alpine
  • postgres 16-alpine
dockerfile
Dockerfile
github-actions
.github/workflows/build.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • ubuntu 22.04
  • ubuntu 22.04
.github/workflows/go-static-checks.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • golangci/golangci-lint-action v6
  • ubuntu 22.04
  • ubuntu 22.04
.github/workflows/notify.yaml
  • USA-RedDragon/telegram-notification v1.0.0
  • ubuntu 22.04
.github/workflows/per-arch-test.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • ubuntu 22.04
  • ubuntu 22.04
.github/workflows/radioid.net.yaml
  • actions/checkout v4
  • crazy-max/ghaction-import-gpg v6
  • peter-evans/create-pull-request v6
  • ubuntu 22.04
.github/workflows/release.yaml
  • USA-RedDragon/reusable-actions v1.0.22
.github/workflows/test.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/setup-node v4
  • actions/upload-artifact v4
  • mikepenz/action-junit-report v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/setup-node v4
  • actions/upload-artifact v4
  • mikepenz/action-junit-report v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • mikepenz/action-junit-report v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • codecov/codecov-action v4
  • actions/upload-artifact v4
  • ubuntu 22.04
  • ubuntu 22.04
  • ubuntu 22.04
  • ubuntu 22.04
  • ubuntu 22.04
  • ubuntu 22.04
  • ubuntu 22.04
  • ubuntu 22.04
gomod
go.mod
  • go 1.22.3
  • github.com/JGLTechnologies/gin-rate-limit v1.5.4
  • github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43@e73c9f7bad43
  • github.com/emersion/go-smtp v0.21.2
  • github.com/gin-contrib/cors v1.7.2
  • github.com/gin-contrib/pprof v1.5.0
  • github.com/gin-contrib/sessions v1.0.1
  • github.com/gin-gonic/gin v1.10.0
  • github.com/glebarez/sqlite v1.11.0
  • github.com/go-co-op/gocron/v2 v2.5.0
  • github.com/go-gormigrate/gormigrate/v2 v2.1.2
  • github.com/google/go-cmp v0.6.0
  • github.com/gorilla/securecookie v1.1.2
  • github.com/gorilla/sessions v1.2.2
  • github.com/gorilla/websocket v1.5.1
  • github.com/kachit/gorm-seeder v0.0.3
  • github.com/mavjs/goPwned v0.0.2
  • github.com/mitchellh/hashstructure/v2 v2.0.2
  • github.com/ory/dockertest/v3 v3.10.0
  • github.com/prometheus/client_golang v1.19.1
  • github.com/puzpuzpuz/xsync/v3 v3.1.0
  • github.com/redis/go-redis/extra/redisotel/v9 v9.0.5
  • github.com/redis/go-redis/v9 v9.5.1
  • github.com/stretchr/testify v1.9.0
  • github.com/tinylib/msgp v1.1.9
  • github.com/ulikunitz/xz v0.5.12
  • github.com/uptrace/opentelemetry-go-extra/otelgorm v0.2.4
  • github.com/ztrue/shutdown v0.1.1
  • go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin v0.51.0
  • go.opentelemetry.io/otel v1.26.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.26.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.26.0
  • go.opentelemetry.io/otel/sdk v1.26.0
  • go.opentelemetry.io/otel/trace v1.26.0
  • go.uber.org/automaxprocs v1.5.3
  • golang.org/x/crypto v0.23.0
  • golang.org/x/sync v0.7.0
  • gorm.io/driver/postgres v1.5.7
  • gorm.io/gorm v1.25.10
nodenv
.node-version
  • node 21.7.3
npm
internal/http/frontend/package.json
  • @vuelidate/core ^2.0.3
  • @vuelidate/validators ^2.0.4
  • moment ^2.30.1
  • pinia ^2.1.7
  • primeflex ^3.3.1
  • primeicons ^7.0.0
  • primevue ^3.52.0
  • vue ^3.4.27
  • vue-router ^4.3.2
  • @rushstack/eslint-patch ^1.10.2
  • @unhead/vue ^1.9.10
  • @vitejs/plugin-vue ^5.0.4
  • @vitest/ui ^1.6.0
  • @vue/eslint-config-prettier ^9.0.0
  • axios ^1.6.8
  • cypress ^13.9.0
  • cypress-mochawesome-reporter ^3.8.2
  • cypress-multi-reporters ^1.6.4
  • cypress-wait-for-stable-dom ^0.1.0
  • eslint ^8.57.0
  • eslint-config-google ^0.14.0
  • eslint-plugin-cypress ^3.2.0
  • eslint-plugin-vue ^9.26.0
  • mocha-junit-reporter ^2.2.1
  • mochawesome ^7.1.3
  • mochawesome-merge ^4.3.0
  • mochawesome-report-generator ^6.2.0
  • path-parser ^6.1.0
  • prettier ^3.2.5
  • sass ^1.77.1
  • sitemap ^7.1.1
  • start-server-and-test ^2.0.3
  • vite ^5.2.11
  • vitest ^1.6.0
regex
internal/testutils/consts.go
  • redis 7-alpine

  • Check this box to trigger a request for Renovate to run again on this repository

Webui is spamming server with thousands of websocket requests

Hi,
I have installed the newst Version of DMRHub with docker and had a problem when websocket request are spammed to the server which caused also chrome to freeze after some time. I solved it by configuring the CORS_HOSTS correctly.
But I would appreaciate it, when the retrying of establishing a websocket connection will be paused after some amount of errors or the number of requests will be reduced. After a few seconds I had in my google chrome log several ten of thousands error entries.

Talkgroup plugin architecture

Create a plugin architecture that essentially forwards all talkgroup traffic on a specific talkgroup ID or range of IDs to a first or third party plugin that has the ability to route traffic outbound and inbound back to the server to be routed to users via a queue.

Plugins should NOT be able to route to other talkgroups and can only facilitate public and private calls where the packet source is the talkgroup ID. Talkgroups with a range of IDs allocated may route to/from these talkgroups freely. In the future, there will be talkgroup sharing permissions architecture to allow plugins to work cooperatively. This needs to be restrictive in order to prevent it from being used as a covert side channel.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

This repository currently has no open or pending branches.

Detected dependencies

docker-compose
docker-compose.yml
  • redis 7-alpine
  • postgres 16-alpine
dockerfile
Dockerfile
github-actions
.github/workflows/build.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
.github/workflows/go-static-checks.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • golangci/golangci-lint-action v3
.github/workflows/notify.yaml
  • USA-RedDragon/telegram-notification v1.0.0
  • ubuntu 22.04
.github/workflows/per-arch-test.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
.github/workflows/radioid.net.yaml
  • actions/checkout v4
  • crazy-max/ghaction-import-gpg v6
  • peter-evans/create-pull-request v5
.github/workflows/release.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • docker/login-action v3
  • docker/login-action v3
  • docker/setup-buildx-action v3
  • docker/setup-qemu-action v3
  • actions/download-artifact v4
  • goreleaser/goreleaser-action v5
  • creekorful/goreportcard-action v1.0
.github/workflows/test.yaml
  • actions/checkout v4
  • actions/setup-node v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/setup-node v4
  • ataylorme/eslint-annotate-action v2
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/setup-node v4
  • actions/upload-artifact v4
  • mikepenz/action-junit-report v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/setup-node v4
  • actions/upload-artifact v4
  • mikepenz/action-junit-report v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • mikepenz/action-junit-report v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
  • actions/checkout v4
  • actions/setup-go v5
  • actions/download-artifact v4
  • codecov/codecov-action v3
  • actions/upload-artifact v4
gomod
go.mod
  • go 1.21.6
  • github.com/JGLTechnologies/gin-rate-limit v1.5.4
  • github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43@e73c9f7bad43
  • github.com/emersion/go-smtp v0.20.1
  • github.com/gin-contrib/cors v1.5.0
  • github.com/gin-contrib/pprof v1.4.0
  • github.com/gin-contrib/sessions v0.0.5
  • github.com/gin-gonic/gin v1.9.1
  • github.com/glebarez/sqlite v1.10.0
  • github.com/go-co-op/gocron/v2 v2.1.2
  • github.com/go-gormigrate/gormigrate/v2 v2.1.1
  • github.com/google/go-cmp v0.6.0
  • github.com/gorilla/securecookie v1.1.2
  • github.com/gorilla/sessions v1.2.2
  • github.com/gorilla/websocket v1.5.1
  • github.com/kachit/gorm-seeder v0.0.3
  • github.com/mavjs/goPwned v0.0.2
  • github.com/mitchellh/hashstructure/v2 v2.0.2
  • github.com/ory/dockertest/v3 v3.10.0
  • github.com/prometheus/client_golang v1.18.0
  • github.com/puzpuzpuz/xsync/v3 v3.0.2
  • github.com/redis/go-redis/extra/redisotel/v9 v9.0.5
  • github.com/redis/go-redis/v9 v9.4.0
  • github.com/stretchr/testify v1.8.4
  • github.com/tinylib/msgp v1.1.9
  • github.com/ulikunitz/xz v0.5.11
  • github.com/uptrace/opentelemetry-go-extra/otelgorm v0.2.3
  • github.com/ztrue/shutdown v0.1.1
  • go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin v0.46.1
  • go.opentelemetry.io/otel v1.21.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.21.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.21.0
  • go.opentelemetry.io/otel/sdk v1.21.0
  • go.opentelemetry.io/otel/trace v1.21.0
  • go.uber.org/automaxprocs v1.5.3
  • golang.org/x/crypto v0.18.0
  • golang.org/x/sync v0.6.0
  • gorm.io/driver/postgres v1.5.4
  • gorm.io/gorm v1.25.5
npm
internal/http/frontend/package.json
  • @vuelidate/core ^2.0.3
  • @vuelidate/validators ^2.0.4
  • moment ^2.30.1
  • pinia ^2.1.7
  • primeflex ^3.3.1
  • primeicons ^6.0.1
  • primevue ^3.46.0
  • vue ^3.4.13
  • vue-router ^4.2.5
  • @rushstack/eslint-patch ^1.6.1
  • @unhead/vue ^1.8.9
  • @vitejs/plugin-vue ^5.0.3
  • @vitest/ui ^1.2.0
  • @vue/eslint-config-prettier ^9.0.0
  • axios ^1.6.5
  • cypress ^13.6.2
  • cypress-mochawesome-reporter ^3.8.0
  • cypress-multi-reporters ^1.6.4
  • cypress-wait-for-stable-dom ^0.1.0
  • eslint ^8.56.0
  • eslint-config-google ^0.14.0
  • eslint-plugin-cypress ^2.15.1
  • eslint-plugin-vue ^9.20.1
  • mocha-junit-reporter ^2.2.1
  • mochawesome ^7.1.3
  • mochawesome-merge ^4.3.0
  • mochawesome-report-generator ^6.2.0
  • path-parser ^6.1.0
  • prettier ^3.2.2
  • sass ^1.69.7
  • sitemap ^7.1.1
  • start-server-and-test ^2.0.3
  • vite ^5.0.11
  • vitest ^1.2.0
regex
.github/workflows/build.yaml
  • node 21.5
.github/workflows/go-static-checks.yaml
  • node 21.5
.github/workflows/per-arch-test.yaml
  • node 21.5
.github/workflows/release.yaml
  • node 21.5
.github/workflows/test.yaml
  • node 21.5
  • node 21.5
  • node 21.5
  • node 21.5
internal/testutils/consts.go
  • redis 7-alpine

  • Check this box to trigger a request for Renovate to run again on this repository

errors when run

This project is great, but when I ran it I got some errors
When I access it with ip address 127.0.0.1:3005,no errors
But when I access it with ip address 192.168.0.20:3005 or my domain name for example www.xxxx.com:3005,it shows errors in the terminal:
ws.go:85 Failed to set websocket upgrade: webcocket: request origin not allowed by upgrader.checkorigin

Even so, I can register and login normally, and add repeaters normally,test with Google Chrome。

Enroll New peer -INOP failed unless modify from “peers#” to “peers/new"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.