
แอพการสื่อสารเครือข่ายตาข่ายอย่างง่ายที่ขับเคลื่อนโดยสแต็กเครือข่าย reticulum

คุณสามารถดาวน์โหลดเวอร์ชันล่าสุดสำหรับ Windows, Mac และ Linux ได้จากหน้าเผยแพร่
หรือคุณสามารถดาวน์โหลดแหล่งที่มาและเรียกใช้ด้วยตนเองจากบรรทัดคำสั่ง
ดู "วิธีการใช้งาน?" ส่วนด้านล่างเกี่ยวกับวิธีการทำเช่นนี้
เมื่อคุณดาวน์โหลดติดตั้งและเปิดตัว reticulum meshchat มีบางสิ่งที่คุณต้องทำเพื่อเริ่มสื่อสารกับผู้อื่นในเครือข่าย
สร้างตัวตน
ในเครือข่าย reticulum ทุกคนสามารถมีตัวตนได้จำนวนมาก คุณอาจเลือกที่จะใช้ชื่อจริงของคุณหรือคุณอาจตัดสินใจที่จะไม่ระบุชื่ออย่างสมบูรณ์ ทางเลือกเป็นของคุณ
ตัวตน reticulum เป็นคู่กุญแจสาธารณะ/ส่วนตัว คุณควบคุมคีย์ส่วนตัวที่ใช้ในการสร้างที่อยู่ปลายทางเข้ารหัสเนื้อหาและพิสูจน์การรับข้อมูลด้วยการตอบรับการจัดส่งที่ไม่สามารถคาดการณ์ได้
คีย์สาธารณะของคุณถูกแชร์กับเครือข่ายเมื่อคุณส่งประกาศและอนุญาตให้ผู้อื่นในเครือข่ายค้นพบเส้นทางไปยังปลายทางที่คุณควบคุมโดยอัตโนมัติ
ในเวลานี้ reticulum meshchat สร้างตัวตนใหม่ในครั้งแรกที่คุณเปิดตัว การอัปเดตในอนาคตจะช่วยให้คุณสร้างและจัดการข้อมูลหลาย ๆ อย่าง
สำหรับตอนนี้หากคุณต้องการเปลี่ยนหรือรีเซ็ตตัวตนของคุณคุณสามารถเข้าถึงไฟล์ตัวตนได้ที่ ~/.reticulum-meshchat/identity
กำหนดค่าชื่อที่แสดงของคุณ
สิ่งต่อไปที่คุณควรทำคือตั้งชื่อการแสดงผล ชื่อที่แสดงของคุณคือสิ่งที่คนอื่น ๆ ในเครือข่ายจะเห็นเมื่อมองหาใครสักคนที่จะสื่อสารจากรายชื่อเพื่อน
คุณสามารถทำได้ในส่วน My Identity ที่มุมล่างซ้าย ป้อนชื่อจอแสดงผลใหม่จากนั้นกด Save
ส่งประกาศ
เมื่อใช้เครือข่าย reticulum เพื่อให้สามารถติดต่อได้คุณจะต้องส่ง Announce คุณสามารถส่งประกาศบ่อยครั้งหรือไม่บ่อยเท่าที่คุณต้องการ
การส่งประกาศอนุญาตให้เพื่อนคนอื่น ๆ ในเครือข่ายค้นพบ Next-Hop ในเครือข่ายแพ็คเก็ตของพวกเขาควรใช้เพื่อไปยังปลายทางที่ตัวควบคุมตัวตนของคุณ
หากคุณไม่เคยส่งประกาศคุณจะมองไม่เห็นและจะไม่มีใครสามารถส่งอะไรมาให้คุณได้
เมื่อคุณย้ายข้ามเครือข่ายและเปลี่ยนจุดเข้าใช้เช่นย้ายจากเครือข่าย WiFi ที่บ้านของคุณไปยังเสียบเข้ากับพอร์ตอีเธอร์เน็ตในห้องสมุดท้องถิ่นหรือแม้กระทั่งการปีนภูเขาและใช้ Rnode ผ่านวิทยุ Lora คนอื่น ๆ ในเครือข่ายจะรู้เส้นทางก่อนหน้านี้ไปยังจุดหมายปลายทางของคุณ
เพื่อให้พวกเขาค้นพบเส้นทางใหม่ของแพ็คเก็ตของพวกเขาควรใช้เพื่อติดต่อคุณคุณควรส่งประกาศ
ค้นพบเพื่อนและเริ่มส่งข้อความ
ในเครือข่าย reticulum คุณสามารถควบคุมที่อยู่ปลายทางได้ไม่ จำกัด จำนวน หนึ่งในนั้นอาจเป็นที่อยู่การจัดส่ง LXMF
ตัวตน reticulum ของคุณช่วยให้คุณมีที่อยู่ LXMF คิดว่าที่อยู่ LXMF เป็นของคุณเองปลอดภัยและมีการเข้ารหัสแบบครบวงจรที่ผ่านการเข้ารหัสและไม่สามารถคาดการณ์ได้ที่อยู่ผ่านเครือข่ายตาข่าย
เมื่อมีคนอื่นในเครือข่ายประกาศตัวเอง (โดยเฉพาะอย่างยิ่งที่อยู่ LXMF ของพวกเขา) พวกเขาจะปรากฏตัวในแท็บ Peers
คุณสามารถคลิกที่เพื่อนที่ค้นพบเหล่านี้เพื่อเปิดอินเทอร์เฟซการส่งข้อความ จากที่นี่คุณสามารถส่งข้อความไฟล์และภาพอินไลน์ หากพวกเขาตอบกลับข้อความของพวกเขาก็จะปรากฏขึ้นที่นั่นเช่นกัน
เช่นเดียวกับความสามารถในการประกาศที่อยู่ LXMF ของคุณและค้นพบผู้อื่น Reticulum Meshchat ยังสามารถค้นพบโหนดเครือข่าย Nomad ที่โฮสต์โดยผู้ใช้รายอื่น จากแท็บโหนดคุณมีอิสระที่จะสำรวจหน้าและดาวน์โหลดไฟล์ที่พวกเขาอาจแชร์บนเครือข่าย
มีการวางแผนการอัปเดตในอนาคตเพื่อให้คุณโฮสต์โหนดของคุณเองและแชร์หน้าและไฟล์กับเพื่อนคนอื่น ๆ ในเครือข่าย สำหรับตอนนี้คุณสามารถใช้ไคลเอนต์ Nomad Network อย่างเป็นทางการเพื่อทำสิ่งนี้
โปรดจำไว้ว่าเพื่อเชื่อมต่อกับเพื่อนหรือโหนดอื่น ๆ พวกเขาจะต้องประกาศบนเครือข่าย ดังนั้นอย่าลืมประกาศว่าคุณต้องการค้นพบหรือไม่!
การกำหนดค่าอินเทอร์เฟซเครือข่ายเพิ่มเติม
TODO: ส่วนนี้ยังไม่ได้เขียน สำหรับตอนนี้คุณสามารถตรวจสอบเอกสารอย่างเป็นทางการสำหรับการกำหนดค่าอินเทอร์เฟซในไฟล์กำหนดค่า reticulum ไฟล์นี้อยู่ที่
~/.reticulum/config
ขอแนะนำให้คุณดาวน์โหลดแอปพลิเคชันแบบสแตนด์อโลน
หากคุณไม่ต้องการหรือไม่สามารถใช้งานได้สำหรับอุปกรณ์ของคุณคุณจะต้อง;
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
หมายเหตุ: ตอนนี้คุณควรเข้าถึงเว็บอินเตอร์เฟสได้ที่ http: // localhost: 8000
สำหรับรายการตัวเลือกบรรทัดคำสั่งเต็มรูปแบบคุณสามารถรันได้
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)
เป็นไปได้ที่จะทำงานบน Android จากแหล่งที่มาโดยใช้ Termux คุณจะต้องติดตั้งการพึ่งพาพิเศษสองสามครั้งและทำการเปลี่ยนแปลงตาม requirements.txt . txt
pkg upgrade
pkg install git
pkg install nodejs-lts
pkg install python-pip
pkg install rust
pkg install binutils
pkg install build-essential
ตอนนี้คุณควรจะสามารถทำตามวิธีการใช้คำแนะนำด้านบน
ก่อนที่จะเรียกใช้ pip install -r requirements.txt คุณจะต้องแสดงความคิดเห็นเกี่ยวกับการพึ่งพา cx_freeze มันล้มเหลวในการสร้างบนแท็บเล็ต Android ของฉันและไม่จำเป็นสำหรับการรันจากแหล่งที่มา
nano requirements.txt
ตรวจสอบให้แน่ใจว่าสาย cx_freeze ได้รับการอัปเดตเป็น #cx_freeze
หมายเหตุ: การสร้างวงล้อสำหรับการเข้ารหัสอาจใช้เวลาสักครู่บน Android
เมื่อ Meshchat ทำงานผ่าน Termux ให้เปิดเว็บเบราว์เซอร์ Android ที่คุณชื่นชอบและนำทางไปที่ http: // localhost: 8000
หมายเหตุ:
AutoInterfaceเริ่มต้นอาจไม่ทำงานบนอุปกรณ์ Android ของคุณ คุณจะต้องกำหนดค่าอินเทอร์เฟซอื่นเช่นTCPClientInterface
ครั้งแรกที่คุณเรียกใช้แอปพลิเคชันนี้จะมีการสร้างตัวตน reticulum ใหม่และบันทึกไปยัง storage/identity
หากคุณต้องการใช้ตัวตนที่มีอยู่
storage/identity ด้วยไฟล์ข้อมูลประจำตัวอื่น หากต้องการใช้ไฟล์ Identity ที่กำหนดเองให้ระบุอาร์กิวเมนต์ --identity-file ตามด้วยพา ธ ไปยังไฟล์ Identity ที่กำหนดเองของคุณ
python meshchat.py --identity-file ./custom_identity_file
หากคุณต้องการสร้างตัวตนใหม่คุณสามารถใช้ยูทิลิตี้ RNID ที่ได้รับจาก reticulum
rnid --generate ./new_identity_file
หากคุณไม่สามารถเข้าถึงคำสั่ง rnid คุณสามารถใช้สิ่งต่อไปนี้:
python meshchat.py --generate-identity-file ./new_identity_file
หรือคุณสามารถจัดเตรียมคีย์ส่วนตัวที่เข้ารหัส Base64 ได้เช่นนั้น
python meshchat.py --identity-base64 "GCN6mMhVemdNIK/fw97C1zvU17qjQPFTXRBotVckeGmoOwQIF8VOjXwNNem3CUOJZCQQpJuc/4U94VSsC39Phw=="
หมายเหตุ: นี่เป็นตัวตนที่สร้างขึ้นแบบสุ่มเช่นวัตถุประสงค์ อย่าใช้มันรั่วไหลออกมา!
อิมเมจนักเทียบท่าถูกสร้างขึ้นโดยอัตโนมัติโดยการกระทำของ GitHub และสามารถดาวน์โหลดได้จาก GitHub Container Registry
docker pull ghcr.io/liamcottle/reticulum-meshchat:master
นอกจากนี้ยังมีตัวอย่าง Docker-compose.yml
ตัวอย่างจะสร้างไฟล์กำหนดค่า reticulum ใหม่โดยอัตโนมัติในระดับเสียง meshchat-config ฐานข้อมูล Meshchat จะถูกเก็บไว้ในเล่มนี้
reticulum meshchat สามารถเรียกใช้จากแหล่งที่มาผ่านบรรทัดคำสั่งดังที่อธิบายไว้ข้างต้นหรือเป็นแอปพลิเคชันแบบสแตนด์อโลน
ในการเรียกใช้เป็นแอปพลิเคชันแบบสแตนด์อโลนเราจำเป็นต้องรวบรวมสคริปต์ Python และการพึ่งพาการทำงานกับ CXFreeze จากนั้นสร้างแอพอิเล็กตรอนซึ่งรวมถึงเบราว์เซอร์แบบรวมที่สามารถโต้ตอบกับ Python ที่รวบรวมได้
สิ่งนี้ช่วยให้แอปพลิเคชันทั้งหมดทำงานได้โดยการคลิกสองครั้งโดยไม่จำเป็นต้องให้ผู้ใช้ติดตั้ง Python ด้วยตนเองหรือเรียกใช้คำสั่งใด ๆ ในแอปพลิเคชันบรรทัดคำสั่ง
หากต้องการสร้าง .exe เมื่อทำงานบน windows หรือ .dmg เมื่อทำงานบน Mac ให้เรียกใช้สิ่งต่อไปนี้
pip install -r requirements.txt
npm install
npm run dist
หมายเหตุ: CXFreeze รองรับการสร้างการดำเนินการสำหรับแพลตฟอร์มปัจจุบันเท่านั้น คุณจะต้องมี Mac เพื่อสร้างสำหรับ Mac และ Windows PC เพื่อสร้าง Windows
เมื่อเสร็จแล้วคุณควรมี .exe หรือ .dmg ในโฟลเดอร์ dist
ปกติฉันเรียกใช้คำสั่งต่อไปนี้เพื่อทำงานในโครงการในพื้นที่
ติดตั้งการพึ่งพา
pip install -r requirements.txt
npm install
สร้างและเรียกใช้แอพอิเล็กตรอน
npm run electron
หรือ; สร้างและเรียกใช้เซิร์ฟเวอร์ meshchat
npm run build-frontend
python3 meshchat.py --headless
ฉันสร้างแอพ VITE ทุกครั้งโดยไม่ต้องโหลดใหม่เนื่องจาก Meshchat คาดว่าทุกอย่างผ่านพอร์ตของตัวเองไม่ใช่พอร์ต Vite Server ฉันจะพยายามแก้ไขปัญหานี้ในอนาคต
เราเตอร์ LXMF
มิกซ์