Crates.io | directip-client |
lib.rs | directip-client |
version | 0.2.0 |
source | src |
created_at | 2022-08-20 22:31:54.749012 |
updated_at | 2022-11-28 21:38:09.068913 |
description | Iridium SBD Direct-IP communication client |
homepage | |
repository | https://github.com/castelao/DirectIP/tree/main/directip-client |
max_upload_size | |
id | 649504 |
size | 32,043 |
Iridium's Direct-IP protocol of Short Burst Data communication system.
This crate is focused on transmitting Mobile Terminated messages, often used to send commands to a remote station. For instance, it could be used to communicate with an under water glider (a scientific autonomous robot).
curl -o directip -L https://github.com/castelao/DirectIP/releases/latest/download/directip-client-aarch64-apple-darwin
chmod +x directip
curl -o directip -L https://github.com/castelao/DirectIP/releases/latest/download/directip-client-x86_64-apple-darwin
chmod +x directip
curl -o directip -L https://github.com/castelao/DirectIP/releases/latest/download/directip-client-arm-unknown-linux-gnueabihf
chmod +x directip
curl -o directip -L https://github.com/castelao/DirectIP/releases/latest/download/directip-client-x86_64-unknown-linux-musl
chmod +x directip
Invoke-WebRequest -Uri 'https://github.com/castelao/DirectIP/releases/latest/download/directip-client-x86_64-pc-windows-msvc.exe' -OutFile directip
Install the Rust compiler if you don't already have it. Follow the instructions at https://www.rust-lang.org/tools/install
Compile it by running: cargo build --release -p directip-client
dry-run: Create a message and show in the screen without trying to transmit it.
encoding:
from-file: When used, it is expected a path to a file instead of the payload itself.
Note that the examples below expect a server running local. If that's not
your case, you can add --dry-run
to test it.
Giving the payload as an argument:
directip-client --msg-id=987 --server 127.0.0.1:10800 --imei 012345678901234 "Hello World"
or chain it with another command and pass the payload through stdin:
echo "Hello World" | directip-client --msg-id=987 --server 127.0.0.1:10800 --imei 012345678901234
or load it from a file:
echo "Hello world" > ./my_command.txt
directip-client --server 127.0.0.1:10800 \
--msg-id=987 \
--imei 012345678901234 \
--from-file ./my_command.txt
Chain it with another command to pass a binary payload using stdin:
head -c 8 /dev/urandom | directip-client --server 127.0.0.1:10800 --msg-id=987 --imei 012345678901234
or load it from a file:
head -c 8 /dev/urandom > ./my_command.txt
directip-client --server 127.0.0.1:10800 \
--msg-id=987 \
--imei 012345678901234 \
--encoding=binary \
--from-file ./my_command.txt
WIP
Currently the minimum supported Rust version is 1.64.0
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.