v1.0 - The first production version of meshchat is finished. Details can be found here:
http://www.trevorsbench.com/meshchat-messaging-for-mesh-networks/
Thanks to everyone who helped test and played with it!
v1.0 - The first production version of meshchat is finished. Details can be found here:
http://www.trevorsbench.com/meshchat-messaging-for-mesh-networks/
Thanks to everyone who helped test and played with it!
Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer
My RPI has a hostname (ab4yy-rpi2) that I did not want to change and I did not want to advertise across the mesh. So when I reserved a dhcp ip address for it in the node, I gave it a descriptive name for the mesh (ab4yy-Webpage). I have a web page running on the RPI and folks get to that fine as well as MeshChat for chatting.
The problem is when I upload a file to the RPI MeshChat, the link for the file shows up as:
http://ab4yy-rpi2/cgi-bin/meshchat?action=file_download&file=....
instead of:
http://ab4yy-Webpage/cgi-bin/meshchat?action=file_download&file=....
The real hostname of the RPI is not known and therefore the file cannot be accessed by anyone on MeshChat.
I don't know if this is a MeshChat issue or not. Also if I need to make a change, I'd prefer to fix this someway without having to change the actual RPI hostname. Also if this is the wrong place for this post, please let me know.
Any ideas? Thanks, Mike ab4yy
#1 is already in place:
http://localnode.local.mesh:8080/cgi-bin/sysinfo.json
see the node element...
it's the nodename (which, on a node, should always be the same as the hostname)
Option #2 looks like the only one in my control. If anyone can give me a clue as to what to look for and where, I can edit to add the correct hostname, otherwise I may just wait until the issue is fixed.
Also I thought it is interesting regarding the sysinfo.json query:
I know this is probably 'old hat' (obvious; not interesting?) for folks who totally understand all of this. :)
- Mike ab4yy
looks like possibly a cut-paste error that has added extra chars to the link...
"/cgi-bin/sysinfo.json%C2%A0%C2%A0 was not found on this server."
try typing in manually. http://localhost:8080/cgi-bin/sysinfo.json
EDIT: I think I have corrected the link.
The sysinfo.json query is working now. I don't know what my problem was with it...no matter...
Thanks!
I meant #3 in my earlier reply when I mistakenly said #2. I'll look into what Trevor suggests below.
Why don't I change the RPI hostname? No big reason....except for this MC file download 'issue', I had no reason to change it. Also, things here are somewhat dynamic and ever-changing and that RPI could be changed or function put onto another existing platform. It was handy that I did not (until now) have to change the hostname.
Also on a slight tangent but part of the answer to your question is that it seems in general all advertised services should have a unique identifier (e.g. callsign) as part of that advertised service. If a node uses just "Camera" then the advertised service go out as (for example) "rtsp://Camera.local.mesh:554/Live0.264". So in that example, that one node has hogged up a common name "Camera" and nobody else on that network can have that service name. So I try to preface my services with my callsign. The "ab4yy-Webpage" is kind of a silly hostname for the actual RPI but in the list of advertised services, it makes more sense and stands out from the two ip cameras are are also advertised services.
I set my Hosafe camera service name as: ab4yy-hosafe-cam
The link URL is: rtsp://ab4yy-hosafe-cam.local.mesh:554/Live0.264
- Mike ab4yy
sub node_name {
if ( $platform eq 'node' ) {
return lc( nvram_get("node") );
}
elsif ( $platform eq 'pi' ) {
open( HST, "/etc/hostname" );
my $hostname = <HST>;
close(HST);
chomp($hostname);
if ( $hostname eq '' ) {
$hostname = `hostname`;
chomp($hostname);
}
return lc($hostname);
}
}
Okay, I made the edit and that seems to make it work fine.
Thanks.
- Mike ab4yy
1. Since the messages go to everyone in the zone or channel, might this better be called mesh broadcast, or mesh chat room?
2. How many channels can there be? Could we make the chat more private by having a separate channel for each callsign?
Bob W8ERD
re: #2...
I submitted a feature suggestion to Trevor a while ago to have a pre-defined list of rooms that are only visible to a known set/group of callsigns.
"LEADERS" = callsigns C,D,E,F
etc...
Thanks
Rich W6ABJ
No limit on the number of channels. The dropdown is dynamically generated by the channels on the message db. No privacy is available. Not sure if doing that would violate part 97 and it was not really my intention for meshchat.
On my RPI with MeshChat, I see each uploaded file twice.
If I upload a file, it shows up as two identical lines of entries. The only difference is one of them (the top file) has the DELETE button next to it.
Right now, I have two files uploaded and it shows up as 4 files with one DELETE per file pair (total of 2 delete buttons).
When I log onto a regular node-MeshChat, I see the correct number of files (2).
Something doesn't seem right.
- Mike ab4yy
1.0 is working fine on my Pi running Raspbian Jesse with the meshchat-api package installed on my NSM2. No duplicate uploads.
AB4YY, grasping at straws here, but is it possible you installed the full meshchat rather than the meshchat-api package on the node?
'Problem' gone...
I've made several changes here including swapping out main node device. Maybe I was more careful at setting things back up but whatever, the dual file-listing in MeshChat is no longer there. It very likely was just 'operator error'. All is well now. Thanks for the suggestion ab8xa. BTW, I have both MeshChat -and- the MeshChat-API loaded on the node.
- Mike ab4yy
I thought the problem went away but no. It is still there.
When I log onto my MC that is on my RPI, I see double entries for each file ("Files Available"), But if I log onto another user's MC, I only see one copy of the files. (The files are all on my RPI.)
I uninstalled the full MC package and even rebooted RPI and node and it makes no difference. I can try: uninstall MC-API also; reboot node and RPI; verify MC here is not in the picture; then reinstall MC-API...and retest. I guess I'll try that next.
For MC-RPI, the associated node only needs the MC-API and not the regular MC install?
- Mike ab4yy
I tried all the above: uninstalled MC as well as MC-API on the node. Rebooted both node and RPI. Installed only MC-API on the node and all works except when on my MC-RPI, double entries are still seen for files.
On thing that may be a clue: On my MC-RPI, in Status I see it syncs with the remote node but ALSO with itself, the MC in RPI. The other guy's node never shows him syncing with himself.
I am wondering if maybe it is related to the advertised service oddness thatI have here and described earlier. I guess I can go ahead and make changes so the advertised service for the RPI and the actual RPI hostname match.
- Mike ab4yy
I changed the RPI hostname to match the advertised service and that fixed the doubleness...
Case closed.
- Mike ab4yy
Thanks,
Jason ~ KM4ACK
rm -rf /var/www/html/meshchat/files
ln -s /path/to/usb /var/www/html/meshchat/files
I wonder if anyone has got this (meshchat files on USB drive) working?
I tried replacing the paths in the meshchatconfig.pm file with equivalent paths on my attached USB drive.
I got the message database on the USB drive but not the files. And meshchatting itself is not working right.
Anyone?
The first issue I ran into was... AREDN wouldn't allow me to have two services listed on it with the same Service Name. Yet with the Service Name now integral to how MeshChat 1.0 works, they have to be. So... unless I'm misunderstanding something... I can't have MeshChat installed on my node if I may be connecting an RPI with Meshchat to that node. At least not if it is advertised. Which takes us a step away from the ease of rapidly deploying mesh nodes and related IT devices, sometimes by people with minimal IT savvy.
The other issue... IF I understand correctly... is it appears that there MUST be a node with Meshchat-API installed on it. Atleast if there may be a RPI version present. And presumably no more than one on that network. Which seems like a single-point-of-failure. And again, if one is rapidly deploying, things are a little less flexible about the use of nodes.
One of the nice things about MeshChat 0.6 was you could put a copy of it on lots of nodes and since they were all replicating, there weren't any single points of failure. Having an RPI based MeshChat was nice because of the increased file storage and data retention between power cycles, but you could have a pretty useful system even without it. And no harm done if you installed two on the network.
None of which is to say I don't really appreciate the time and effort that goes into producing MeshChat. It is a valuable addition to the toolkit. But unless I'm missing something, I don't see how the newer architecture is an improvement over the previous way of doing things.
Dave
Many people run it on their node just fine, just get more storage etc with a pi attached.
I am looking for a little more detailed set of install instructions for Raspberry Pi. I tried the install last night but do not seem to be getting the link between the API on he node, an AR, and the pi. Interesting that the /usr/lib/cgi-bin/meshchatconfig.pm file did not exist on the pi for editing. Any ideas?
Thanks
Problem solved.
Thanks,
Keith - AI6BX
This is the only meshchat installation on this mesh.
Should I be seeing the local node on the "Node Sync Status" screen or should it be blank until another mesh chat station is online?
Nice work, by the way.
I nominate you to revamp the AREDN web UI if and when that comes up.
Is is possible to run Meshchat direct Pi to Pi without the additional API on the mesh node? I have OLSR running on the two Pi which I'd love to use if possible but even manually putting in the node name would work. It looks like it should be possible looking at the config and code but I haven't been successful.
The Pi in question is actually part of the mesh using this method to make it a node: https://github.com/urlgrey/hsmm-pi
I recently tried to uninstall meshchat on from my 2.4 gig airgrid. All seem to go well, after waiting about five minutes rebooted the node the service was still listed and when I tried to click on it the listed service the screen showed two folder listings. I ended up deleting deleting the service and all seems ok. I just wonder if there some part of the installation still located on the airdrid...
Thanks
Dale - N7QJK
Hello, I've installed MeshChat on two nodes. I followed the instructions listed on Trevor's website up to the point where it says:
"Now you need to edit the service name that was created on installation to match the zone you want this installation to sync with."
When I go to Setup -> Port Forwarding, DHCP, and Services. Under "Advertised Services" all I see is "none" How do I edit the service name?
When I log into either of my nodes that it's installed on they both show MeshChat services listed on the Mesh Status screen and it appears to work but on separate zones.
**EDIT**
I figured out my problem. No advertised services will show up until a DMZ or port forwarding rule is applied. I set up an arbitrary forwarding rule and then reinstalled MeshChat. It now shows up and allows me to change the service name.
Seems ok on Firefox 61.0.1 on OSX 10.13.6
The problem we had is someone posted a horrendously long node name in the Channel field... look for "laguna hills" or something like that in past messages. We didn't see that until we linked with N2MH.
The channel field wraps it, shoving the Send button down almost out of sight.
Our solution for the Miami Valley Mesh Alliance was to start a new zone with a name other than MeshChat.
I'm running a nightly build on my MikroTik with MeshChat and Tunnel installed. The tunnel must be installed at the same time as the Nightly Build or you'll have a version mismatch but I've had no conflicts. Installing Mesh Chat is far easier. I downloaded a copy of the latest v1.02 from Trevor's site which I keep on my laptop. I then use the Browse/Upload (from laptop) option - works great.
Just know that it will automatically setup the service with a spun-name (which will immediately propagate out to whatever mesh you're connected to). If you want to change the name of your Chat instance, be sure to power that node down for approx 15 minutes after renaming it to allow that originally spun name to retire and not remain as a ghost). Best choice of an individual service name for MeshChat instance IMO is "CALLSIGN-chat".
HTH,
- Don - AA7AU
THEN, install MeshChat on a RaspberryPi attached to the mesh.
AREDN DISCOURAGES people from installing the full MeshChat package directly on a node.
Pages