aboutsummaryrefslogtreecommitdiffstats
path: root/src/fuvst/fuvst.h
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2020-02-23 15:14:16 +0100
committerAndreas Eversberg <jolly@eversberg.eu>2020-12-21 08:38:44 +0100
commit59119f380f3129c4113c9d4bb8de3a64db42620f (patch)
tree732b2eb65ef7fd08878b63399e68cdfba9429358 /src/fuvst/fuvst.h
parentb5016d52baffc3a18af503e5a12bc17ee78b3dd5 (diff)
C-Netz: Implementation of a Funkvermittlungsstelle (FuVSt)
Useful to connect with a Funkfeststation (FuFSt).
Diffstat (limited to 'src/fuvst/fuvst.h')
-rwxr-xr-xsrc/fuvst/fuvst.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/fuvst/fuvst.h b/src/fuvst/fuvst.h
new file mode 100755
index 0000000..33ef3ae
--- /dev/null
+++ b/src/fuvst/fuvst.h
@@ -0,0 +1,30 @@
+#include "../libmobile/sender.h"
+#include "../libscrambler/scrambler.h"
+#include "../libv27/modem.h"
+#include "../libmtp/mtp.h"
+#include "mup.h"
+
+enum fuvst_chan_type {
+ CHAN_TYPE_ZZK, /* SS7 signalling channel */
+ CHAN_TYPE_SPK, /* pure traffic channel */
+};
+
+/* instance of fuvst sender */
+typedef struct fuvst {
+ sender_t sender;
+ v27modem_t modem;
+ mtp_t mtp;
+
+ int chan_num; /* number of SPK or ZZK */
+ enum fuvst_chan_type chan_type; /* ZZK or SPK */
+ int callref;
+ int link; /* MTP l2 link up */
+ struct SysMeld SM; /* collects alarm messages */
+} fuvst_t;
+
+int fuvst_create(const char *kanal, enum fuvst_chan_type chan_type, const char *audiodev, int samplerate, double rx_gain, double tx_gain, const char *write_rx_wave, const char *write_tx_wave, const char *read_rx_wave, const char *read_tx_wave, int loopback, int ignore_link_failure, uint8_t sio, uint16_t local_pc, uint16_t remove_pc);
+void fuvst_destroy(sender_t *sender);
+void add_emergency(const char *number);
+void config_init(void);
+int config_file(const char *filename);
+