Skip to content

Optional mesh chat for Meschy / Meshtastic / Meschy ile isteğe bağlı mesh sohbet - #9

Open
volthdl wants to merge 3 commits into
schematrix:mainfrom
volthdl:meshchat
Open

volthdl wants to merge 3 commits into
schematrix:mainfrom
volthdl:meshchat

Conversation

@volthdl

@volthdl volthdl commented Nov 1, 2026

Copy link
Copy Markdown

Türkçe

Pi'ye USB ile bağlı bir Meschy (ya da herhangi bir Meshtastic cihazı) ile hotspot'a bağlanan herkes, Meshtastic uygulaması olmadan tarayıcıdan LoRa mesh ağına mesaj gönderip okuyabilir: http://box.lan/mesh/. İnternet ve şebeke olmadan haberleşme için.

Eklenenler

  • mesh/meshchat.py: seri bağlantı (USB çıkarılıp takılınca kendiliğinden yeniden bağlanır), mesajlar SSD'de SQLite'a kaydedilir, küçük bir JSON API.
  • Mesh'i korumak için: aynı telefondan iki mesaj arası 5 sn, mesaj başına en fazla 200 bayt (UTF-8). Her mesajın başına gönderenin adı eklenir.
  • Teslim durumu: başka bir düğüm aktardıysa "Ağda duyuldu", aktarmadıysa "Kimse duymadı".
  • Ana sayfayla aynı görünümde, telefona uygun sohbet sayfası ve ağdaki düğümler listesi.
  • systemd birimi (sıkılaştırılmış, ayrı kullanıcı), IIAB için nginx /mesh/ ayarı, /etc/default/has-meshchat ayar dosyası.
  • scripts/install-meshchat.sh: tek komutla kurulum.
  • Ana sayfaya "Haberleşme › Mesh Sohbet" satırı (radyo durumu canlı); README'ye TR/EN bölüm.

Test edilenler

Test edilmeyenler: Gerçek bir Pi 5 + Meschy + IIAB nginx üzerinde henüz denenmedi. Donanımı olan biri deneyebilirse çok sevinirim.

Bilinmesi gerekenler: Sayfadaki herkes aynı radyoyu kullandığı için Pi'nin düğümüne gelen özel mesajlar da sayfadaki herkese görünür. Mesajlar birincil kanala gider.

English

Plug a Meschy (or any Meshtastic node) into the Pi and everyone on the hotspot can read and send LoRa mesh messages from a browser at http://box.lan/mesh/, no Meshtastic app needed.

Plug a Meschy (or any Meshtastic node) into the Pi and everyone on the
hotspot can read and send LoRa mesh messages at http://box.lan/mesh/
without the Meshtastic app. Messages are stored in SQLite on the SSD.

- mesh/meshchat.py: serial connection with auto-reconnect, SQLite log,
  small JSON API, per-client cooldown, UTF-8 byte limit, delivery status
  from implicit ACKs (relayed / unheard)
- mesh/static/index.html: mobile chat page in the homepage style
- systemd unit, nginx location snippet for IIAB, defaults file
- scripts/install-meshchat.sh: one-shot installer
- homepage: "Haberleşme > Mesh Sohbet" entry with live radio status
- README: EN/TR setup section

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TDZYMBtWvwsxGrYQDjMMjs
@schematrix

Copy link
Copy Markdown
Owner

Çok tatlı bir geliştirme, yakın zamanda donanımda deneyeceğim. Emeğine sağlık. Bug çıkmazsa merge pull yapacağım, bug çıkarsa ticket açarım ya da bugfix release'i kendim yayınlarım. Tekrardan çaban için teşekkürler 🫡

@schematrix

Copy link
Copy Markdown
Owner

Bir de iki küçük ricam var: PR başlığı biraz karışmış gibi, düzeltebilir misin? Bir de meshtastic paketini belli bir sürüme sabitlersen ileride sürpriz bir güncellemeyle bozulmaz. Meschy ile denedikten sonra dönüş yaparım.

Two small requests: the PR title looks a bit garbled, could you fix it? And pinning meshtastic to a specific version would keep a surprise update from breaking it later. I'll get back to you after testing with Meschy.

@volthdl volthdl changed the title Add optional mesh chOptional mesh chat with Meschy / Meshtastic / İsteğe bağlı Meschy mesh sohbetat bridge for Meschy / Meshtastic Optional mesh chat for Meschy / Meshtastic / Meschy ile isteğe bağlı mesh sohbet Nov 2, 2026
@volthdl

volthdl commented Nov 2, 2026

Copy link
Copy Markdown
Author

Teşekkürler. İkisini de yaptım.

  • Başlığı düzelttim.
  • mesh/requirements.txt içinde meshtastic==2.7.11 ve pypubsub==4.0.7 olarak sabitledim (test ettiğim sürümler; kod pubsub'ı doğrudan kullandığı için onu da sabitledim).

Meschy ile denemenizi merakla bekliyorum; sorun çıkarsa journalctl -u has-meshchat çıktısını paylaşırsanız hemen bakarım.

Thanks! Fixed the title and pinned meshtastic==2.7.11 and pypubsub==4.0.7 (the tested versions; the code uses pubsub directly). Looking forward to your Meschy test; if anything breaks, the journalctl -u has-meshchat output would help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants