
Aplikasi komunikasi jaringan mesh sederhana yang ditenagai oleh tumpukan jaringan retikulum.

Anda dapat mengunduh versi terbaru untuk Windows, Mac dan Linux dari halaman rilis.
Atau, Anda dapat mengunduh sumber dan menjalankannya secara manual dari baris perintah.
Lihat "Bagaimana cara menggunakannya?" Bagian di bawah tentang cara melakukan ini.
Setelah Anda mengunduh, menginstal dan meluncurkan Retikulum Meshchat, ada beberapa hal yang perlu Anda lakukan untuk mulai berkomunikasi dengan orang lain di jaringan.
Buat identitas
Di jaringan retikulum, siapa pun dapat memiliki sejumlah identitas. Anda dapat memilih untuk menggunakan nama asli Anda, atau Anda dapat memutuskan untuk sepenuhnya anonim. Pilihannya adalah milik Anda.
Identitas retikulum adalah pasangan kunci publik/swasta. Anda mengontrol kunci pribadi yang digunakan untuk menghasilkan alamat tujuan, mengenkripsi konten, dan membuktikan penerimaan data dengan pengakuan pengiriman yang tak terlupakan.
Kunci publik Anda dibagikan dengan jaringan saat Anda mengirim pengumuman, dan memungkinkan orang lain di jaringan untuk secara otomatis menemukan rute ke tujuan yang Anda kendalikan.
Pada saat ini, Retikulum Meshchat menghasilkan identitas baru saat pertama kali Anda meluncurkannya. Pembaruan di masa depan akan memungkinkan Anda untuk membuat dan mengelola banyak identitas.
Untuk saat ini, jika Anda ingin mengubah, atau mengatur ulang identitas Anda, Anda dapat mengakses file identitas di ~/.reticulum-meshchat/identity .
Konfigurasikan Nama Tampilan Anda
Hal berikutnya yang harus Anda lakukan, adalah mengatur nama tampilan. Nama tampilan Anda adalah apa yang akan dilihat orang lain di jaringan saat mencari seseorang untuk berkomunikasi dari daftar rekan.
Anda dapat melakukan ini di bagian My Identity di sudut kiri bawah. Masukkan nama tampilan baru, lalu tekan Save .
Kirim pengumuman
Saat menggunakan jaringan retikulum, agar dapat dihubungi, Anda perlu mengirim Announce . Anda dapat mengirim pengumuman sesering, atau jarang yang Anda suka.
Mengirim pengumuman memungkinkan rekan-rekan lain di jaringan untuk menemukan next-hop di seluruh jaringan yang harus diambil paket mereka untuk tiba di tujuan yang dikendalikan oleh identitas Anda.
Jika Anda tidak pernah mengirim pengumuman, Anda akan tidak terlihat dan tidak ada yang akan dapat mengirim apa pun kepada Anda.
Saat Anda bergerak melintasi jaringan, dan mengubah titik masuk, seperti pindah dari jaringan wifi rumah Anda, untuk memasang ke port Ethernet di perpustakaan lokal atau bahkan memanjat gunung dan menggunakan RNode melalui radio Lora, rekan -rekan lain di jaringan hanya akan mengetahui jalur sebelumnya ke tujuan Anda.
Untuk memungkinkan mereka menemukan jalur baru yang harus diambil oleh paket mereka untuk menghubungi Anda, Anda harus mengirim pengumuman.
Temukan rekan dan mulailah mengirim pesan
Di jaringan retikulum, Anda dapat mengontrol sejumlah alamat tujuan yang tidak terbatas. Salah satunya dapat berupa alamat pengiriman LXMF.
Identitas retikulum Anda memungkinkan Anda memiliki alamat LXMF. Pikirkan alamat LXMF sebagai alamat email Anda, aman, terenkripsi, tidak dapat disampaikan, tidak tersedian, dialihkan melalui jaringan mesh.
Ketika orang lain di jaringan mengumumkan diri mereka sendiri (lebih khusus lagi, alamat LXMF mereka), mereka akan muncul di tab Peers.
Anda dapat mengklik semua rekan yang ditemukan ini untuk membuka antarmuka pesan. Dari sini, Anda dapat mengirim pesan teks, file, dan gambar inline. Jika mereka merespons, pesan mereka akan muncul di sana juga.
Selain dapat mengumumkan alamat LXMF Anda dan menemukan yang lain, Retikulum Meshchat juga dapat menemukan nomad node node yang di -host oleh pengguna lain. Dari tab node, Anda bebas menjelajahi halaman dan mengunduh file yang mungkin mereka bagikan secara publik di jaringan.
Pembaruan di masa mendatang direncanakan untuk memungkinkan Anda meng -host simpul Anda sendiri dan berbagi halaman dan file dengan rekan -rekan lain di jaringan. Untuk saat ini, Anda dapat menggunakan klien jaringan nomad resmi untuk melakukan ini.
Ingat, untuk terhubung dengan rekan atau node lain, mereka harus mengumumkan di jaringan. Jadi jangan lupa untuk mengumumkan jika Anda ingin ditemukan!
Mengkonfigurasi Antarmuka Jaringan Tambahan
TODO: Bagian ini belum ditulis. Untuk saat ini, Anda dapat memeriksa dokumentasi resmi untuk mengonfigurasi antarmuka dalam file konfigurasi reticulum. File ini terletak di
~/.reticulum/config
Dianjurkan agar Anda mengunduh aplikasi mandiri.
Jika Anda tidak mau, atau rilis tidak tersedia untuk perangkat Anda, Anda perlu;
meshchat.py . # clone repo
git clone https://github.com/liamcottle/reticulum-meshchat
cd reticulum-meshchat
# install nodejs deps
# if you want to build electron binaries, remove "--omit=dev"
# if you're using termux, add "--ignore-scripts" to fix error with esbuild
npm install --omit=dev
# build frontend vue components
npm run build-frontend
# install python deps
pip install -r requirements.txt
# run meshchat
python meshchat.py
Catatan: Anda sekarang harus dapat mengakses antarmuka web di http: // localhost: 8000
Untuk daftar lengkap opsi baris perintah, Anda dapat menjalankan;
python meshchat.py --help
usage: meshchat.py [-h] [--host [HOST]] [--port [PORT]] [--headless] [--identity-file IDENTITY_FILE] [--identity-base64 IDENTITY_BASE64] [--generate-identity-file GENERATE_IDENTITY_FILE] [--generate-identity-base64]
[--reticulum-config-dir RETICULUM_CONFIG_DIR] [--storage-dir STORAGE_DIR]
ReticulumMeshChat
options:
-h, --help show this help message and exit
--host [HOST] The address the web server should listen on.
--port [PORT] The port the web server should listen on.
--headless Web browser will not automatically launch when this flag is passed.
--identity-file IDENTITY_FILE
Path to a Reticulum Identity file to use as your LXMF address.
--identity-base64 IDENTITY_BASE64
A base64 encoded Reticulum Identity to use as your LXMF address.
--generate-identity-file GENERATE_IDENTITY_FILE
Generates and saves a new Reticulum Identity to the provided file path and then exits.
--generate-identity-base64
Outputs a randomly generated Reticulum Identity as base64 and then exits.
--reticulum-config-dir RETICULUM_CONFIG_DIR
Path to a Reticulum config directory for the RNS stack to use (e.g: ~/.reticulum)
--storage-dir STORAGE_DIR
Path to a directory for storing databases and config files (default: ./storage)
Dimungkinkan untuk menjalankan Android dari sumber, menggunakan Termux. Anda perlu menginstal beberapa dependensi tambahan dan membuat perubahan ke requirements.txt .
pkg upgrade
pkg install git
pkg install nodejs-lts
pkg install python-pip
pkg install rust
pkg install binutils
pkg install build-essential
Anda sekarang harus dapat mengikuti instruksi cara menggunakannya di atas.
Sebelum menjalankan pip install -r requirements.txt , Anda harus mengomentari ketergantungan cx_freeze . Gagal membangun di atas tablet Android saya, dan sebenarnya tidak diperlukan untuk berjalan dari sumber.
nano requirements.txt
Pastikan garis cx_freeze diperbarui ke #cx_freeze
CATATAN: Bangunan roda untuk kriptografi mungkin memakan waktu cukup lama di Android.
Setelah MeshChat berjalan melalui Termux, buka browser web Android favorit Anda, dan arahkan ke http: // localhost: 8000
Catatan:
AutoInterfacedefault mungkin tidak berfungsi pada perangkat Android Anda. Anda perlu mengonfigurasi antarmuka lain sepertiTCPClientInterface.
Pertama kali Anda menjalankan aplikasi ini, identitas retikulum baru dihasilkan dan disimpan untuk storage/identity .
Jika Anda ingin menggunakan identitas yang ada;
storage/identity dengan file identitas lain. Untuk menggunakan file identitas khusus, berikan argumen --identity-file diikuti oleh jalur ke file identitas khusus Anda.
python meshchat.py --identity-file ./custom_identity_file
Jika Anda ingin menghasilkan identitas baru, Anda dapat menggunakan utilitas RNID yang disediakan oleh Retikulum.
rnid --generate ./new_identity_file
Jika Anda tidak memiliki akses ke perintah rnid , Anda dapat menggunakan yang berikut:
python meshchat.py --generate-identity-file ./new_identity_file
Atau, Anda dapat memberikan kunci pribadi yang dikodekan basis64, seperti itu;
python meshchat.py --identity-base64 "GCN6mMhVemdNIK/fw97C1zvU17qjQPFTXRBotVckeGmoOwQIF8VOjXwNNem3CUOJZCQQpJuc/4U94VSsC39Phw=="
Catatan: Ini adalah identitas yang dihasilkan secara acak misalnya tujuan. Jangan gunakan itu, sudah bocor!
Gambar Docker secara otomatis dibangun oleh tindakan GitHub, dan dapat diunduh dari Github Container Registry.
docker pull ghcr.io/liamcottle/reticulum-meshchat:master
Selain itu, contoh Docker-Compose.yml tersedia.
Contoh secara otomatis menghasilkan file konfigurasi reticulum baru dalam volume meshchat-config . Database MeshChat juga disimpan dalam buku ini.
Retikulum meshchat dapat dijalankan dari sumber melalui baris perintah, seperti yang dijelaskan di atas, atau sebagai aplikasi mandiri.
Untuk menjalankan sebagai aplikasi mandiri, kita perlu menyusun skrip Python dan dependensi ke yang dapat dieksekusi dengan CXFreeze dan kemudian membangun aplikasi elektron yang mencakup browser yang dibundel yang dapat berinteraksi dengan Python yang dapat dikompilasi dieksekusi.
Ini memungkinkan seluruh aplikasi dijalankan dengan mengklik dua kali file tunggal tanpa perlu pengguna untuk secara manual menginstal Python, atau menjalankan perintah apa pun dalam aplikasi baris perintah.
Untuk membangun .exe saat berjalan di Windows atau .dmg saat menjalankan Mac, jalankan yang berikut;
pip install -r requirements.txt
npm install
npm run dist
Catatan: CXFreeze hanya mendukung membangun yang dapat dieksekusi untuk platform saat ini. Anda akan memerlukan Mac untuk dibangun untuk Mac, dan PC Windows untuk dibangun untuk Windows.
Setelah selesai, Anda harus memiliki .exe atau .dmg di folder dist .
Saya biasanya menjalankan perintah berikut untuk mengerjakan proyek secara lokal.
Instal dependensi
pip install -r requirements.txt
npm install
Bangun dan Jalankan Aplikasi Elektron
npm run electron
atau; Bangun dan jalankan server meshchat
npm run build-frontend
python3 meshchat.py --headless
Saya membangun aplikasi vite setiap kali tanpa hot reload, karena Meshchat mengharapkan semuanya di atas portnya sendiri, bukan port server vite. Saya akan mencoba memperbaikinya di masa depan.
Router LXMF
Mit