markqvist / LXMF

A universal, distributed and secure messaging protocol for Reticulum
MIT License
241 stars 16 forks source link

LXMF cannot be initialized without a storage path #1

Closed HarlekinSimplex closed 2 years ago

HarlekinSimplex commented 2 years ago

Hi Mark,

I tried to send a message using LXMF. I wrote the following python script using two of my many test peers in out test net:

# Sowassi Sixtus [DA:02]  <0d89bdafd4d3a4703158>
# Harlekin Simplex [DA:01] <c0562a3f00fbc11efcc0>
import LXMF
lxm_router = LXMF.LXMRouter()
message = LXMF.LXMessage("0d89bdafd4d3a4703158", "c0562a3f00fbc11efcc0", "Hello World!")
lxm_router.handle_outbound(message)

Tried to run it with:

python lxmf-test.py

and got the following error message:

Traceback (most recent call last):
  File "/home/pi/LXMF/lxmf-test.py", line 6, in <module>
    lxm_router = LXMF.LXMRouter()
  File "/home/pi/.local/lib/python3.9/site-packages/LXMF/LXMF.py", line 841, in __init__
    raise ValueError("LXMF cannot be initialised without a storage path")
ValueError: LXMF cannot be initialised without a storage path

Nomandnet is running fine on that node. So reticulum schould be not the problem. Since I found no docs regarding LXMF so far, I tried to find a solution by peeking into the code. It seems that LXMF shall create or use some folders here. However I did not found out what I am missing here.

pls adv Cheers Stephan

markqvist commented 2 years ago

As the error says, LXMF cannot be initilised without a storage path. LXMF needs a place to persistently store a hashlist of what messages have already locally been delivered to be able to sync with the propagation node network.

You just need to provide such a path for your application.

Until I publish the complete documentation and tutorials for LXMF, the best place to look for info on how to use LXMF in your own apps is the LXMF source code and nomadnet source code. It should be pretty clear how to use it from those places.

Closing this since it is not an issue or bug repor, but a suppor request. Please keep support and help requests to the Discussion pages located here: https://github.com/markqvist/Reticulum/discussions. That way it will be easier for others to find solutions to similar question in the future.