mirror of https://github.com/OpenIPC/composer.git
Sync of comgt work
parent
a45a34f8af
commit
4332c7b9e9
|
@ -8,16 +8,16 @@ COMGT_LICENSE = GPL
|
|||
COMGT_LICENSE_FILES = LICENSE
|
||||
|
||||
define COMGT_EXTRACT_CMDS
|
||||
cp ../general/package/demo-openipc/src/* $(@D)/
|
||||
cp -a ../general/package/comgt/* $(@D)/
|
||||
endef
|
||||
|
||||
define COMGT_BUILD_CMDS
|
||||
(cd $(@D); $(TARGET_CC) -s comgt.c -o comgt)
|
||||
$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/src
|
||||
endef
|
||||
|
||||
define COMGT_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -m 755 -d $(TARGET_DIR)/usr/sbin
|
||||
install -m 0755 -D $(@D)/comgt $(TARGET_DIR)/usr/sbin/comgt
|
||||
install -m 0755 -D $(@D)/src/comgt $(TARGET_DIR)/usr/sbin/comgt
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,30 @@
|
|||
# send using this command:
|
||||
# gcom -d /dev/ttyUSB0 -v -e -s sendsms.comgt
|
||||
|
||||
# Ensure you fill in your phone number below or it wont send!
|
||||
|
||||
opengt
|
||||
# set the terminal settings
|
||||
set com 115200n81
|
||||
# echo commands
|
||||
set comecho on
|
||||
# use a tiny delay between each keypress
|
||||
set senddelay 0.02
|
||||
# wait for things to be silent on the serial port
|
||||
waitquiet 1 0.2
|
||||
# reset things a bit
|
||||
flash 0.1
|
||||
# set it to textmode
|
||||
send "AT+CMGF=1^m"
|
||||
# wait for OK
|
||||
waitfor 1 "OK"
|
||||
# tell it we want to send a SMS and to what number
|
||||
send "AT+CMGS=\"003538XXXXXXXX\"^m"
|
||||
# the modem will present a > and wait for you to input your message
|
||||
waitfor 1 ">"
|
||||
send $env("SMS_MSG")
|
||||
# and expect you to end your message with ^Z
|
||||
send "^Z"
|
||||
# wait for it to send
|
||||
waitfor 5 "OK"
|
||||
exit 0
|
|
@ -0,0 +1,25 @@
|
|||
#
|
||||
# Makefile - build and install the comgt package
|
||||
#
|
||||
# Copyright (C) 2005 Martin Gregorie, martin@gregorie.org
|
||||
# Copyright (C) 2006 Paul Hardwick, paul@peck.org.uk
|
||||
# Copyright (C) 2022 Igor Zalatov, flyrouter@gmail.com
|
||||
#
|
||||
|
||||
all: comgt
|
||||
|
||||
install:
|
||||
chmod a+x $(BIN)
|
||||
|
||||
clean:
|
||||
-rm *.o comgt
|
||||
|
||||
comgt: comgt.o
|
||||
cc comgt.o $(LDFLAGS) -o comgt
|
||||
|
||||
comgt.o: comgt.c comgt.h
|
||||
cc comgt.c $(CFLAGS)
|
||||
|
||||
comgt: comgt.c comgt.h
|
||||
$(CC) $(CFLAGS) -o comgt $< $(LDFLAGS)
|
||||
|
|
@ -30,7 +30,7 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <signal.h>
|
||||
#include <termio.h>
|
||||
#include <termios.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
#include <string.h>
|
||||
|
@ -81,7 +81,7 @@ char token[MAXTOKEN]; /* For gettoken() returns */
|
|||
char scriptfile[MAXPATH]; /* Script file name */
|
||||
char scriptfilepath[MAXPATH]; /* temp storage for full path */
|
||||
BOOL verbose=0; /* Log actions */
|
||||
struct termio cons, stbuf, svbuf; /* termios: svbuf=before, stbuf=while */
|
||||
struct termios cons, stbuf, svbuf; /* termios: svbuf=before, stbuf=while */
|
||||
int comfd=0; /* Communication file descriptor. Defaults to stdin. */
|
||||
char msg[STRINGL]; /* Massage messages here */
|
||||
int preturn,returns[MAXGOSUBS];
|
||||
|
@ -91,6 +91,7 @@ unsigned long hstart,hset;
|
|||
char NullString[]={ "" };
|
||||
BOOL lastcharnl=1; /* Indicate that last char printed from getonebyte
|
||||
was a nl, so no new one is needed */
|
||||
BOOL tty=1;
|
||||
|
||||
|
||||
//"open com \"/dev/modem\"\nset com 38400n81\nset senddelay 0.05\nsend \"ATi^m\"\nget 2 \" ^m\" $s\nprint \"Response : \",$s,\"\\n\"\nget 2 \" ^m\" $s\nprint \"Response :\",$s,\"\\n\"\nget 2 \" ^m\" $s\nprint \"Response : \",$s,\"\\n\"\n\n";
|
||||
|
@ -172,7 +173,7 @@ void dotestkey(void) {
|
|||
|
||||
/* Exit after resetting terminal settings */
|
||||
void ext(long xtc) {
|
||||
ioctl(1, TCSETA, &cons);
|
||||
ioctl(1, TCSETS, &cons);
|
||||
exit(xtc);
|
||||
}
|
||||
|
||||
|
@ -920,24 +921,24 @@ BOOL getonoroff(void) {
|
|||
void setcom(void) {
|
||||
stbuf.c_cflag &= ~(CBAUD | CSIZE | CSTOPB | CLOCAL | PARENB);
|
||||
stbuf.c_cflag |= (speed | bits | CREAD | clocal | parity | stopbits );
|
||||
if (ioctl(comfd, TCSETA, &stbuf) < 0) {
|
||||
if (tty && ioctl(comfd, TCSETS, &stbuf) < 0) {
|
||||
serror("Can't ioctl set device",1);
|
||||
}
|
||||
}
|
||||
|
||||
void doset(void) {
|
||||
struct termio console;
|
||||
struct termios console;
|
||||
int a,b;
|
||||
gettoken();
|
||||
if(strcmp(token,"echo")==0) {
|
||||
a=0;
|
||||
if(getonoroff()) a=ECHO|ECHOE;
|
||||
if(ioctl(0, TCGETA, &console)<0) {
|
||||
if(ioctl(0, TCGETS, &console)<0) {
|
||||
serror("Can't ioctl FD zero!\n",2);
|
||||
}
|
||||
console.c_lflag &= ~(ECHO | ECHOE);
|
||||
console.c_lflag |= a;
|
||||
ioctl(0, TCSETA, &console);
|
||||
ioctl(0, TCSETS, &console);
|
||||
}
|
||||
else if(strcmp(token,"senddelay")==0) {
|
||||
senddelay=10000L*getdvalue();
|
||||
|
@ -1224,7 +1225,7 @@ void doclose(void) {
|
|||
if(strcmp(token,"hardcom")==0) {
|
||||
if(comfd== -1) serror("Com device not open",1);
|
||||
vmsg("Closing device");
|
||||
if (ioctl(comfd, TCSETA, &svbuf) < 0) {
|
||||
if (tty && ioctl(comfd, TCSETS, &svbuf) < 0) {
|
||||
sprintf(msg,"Can't ioctl set device %s.\n",device);
|
||||
serror(msg,1);
|
||||
}
|
||||
|
@ -1266,12 +1267,17 @@ void opengt(void) {
|
|||
ext(1);
|
||||
}
|
||||
}
|
||||
if (ioctl (comfd, TCGETA, &svbuf) < 0) {
|
||||
if (isatty (comfd))
|
||||
tty=1;
|
||||
else
|
||||
tty=0;
|
||||
if (tty && ioctl (comfd, TCGETS, &svbuf) < 0) {
|
||||
sprintf(msg,"Can't control %s, please try again.\n",device);
|
||||
serror(msg,1);
|
||||
}
|
||||
setenv("COMGTDEVICE",device,1);
|
||||
ioctl(comfd, TCGETA, &stbuf);
|
||||
if (tty)
|
||||
ioctl(comfd, TCGETS, &stbuf);
|
||||
speed=stbuf.c_cflag & CBAUD;
|
||||
if (high_speed == 0) strcpy(cspeed,"115200");
|
||||
else strcpy(cspeed,"57600");
|
||||
|
@ -1281,7 +1287,7 @@ void opengt(void) {
|
|||
parity=stbuf.c_cflag & (PARENB | PARODD);
|
||||
stbuf.c_iflag &= ~(IGNCR | ICRNL | IUCLC | INPCK | IXON | IXANY | IGNPAR );
|
||||
stbuf.c_oflag &= ~(OPOST | OLCUC | OCRNL | ONLCR | ONLRET);
|
||||
stbuf.c_lflag &= ~(ICANON | XCASE | ECHO | ECHOE | ECHONL);
|
||||
stbuf.c_lflag &= ~(ICANON | ECHO | ECHOE | ECHONL);
|
||||
stbuf.c_lflag &= ~(ECHO | ECHOE);
|
||||
stbuf.c_cc[VMIN] = 1;
|
||||
stbuf.c_cc[VTIME] = 0;
|
||||
|
@ -1302,12 +1308,16 @@ void opendevice(void) {
|
|||
}
|
||||
}
|
||||
else comfd=0;
|
||||
|
||||
if (ioctl (comfd, TCGETA, &svbuf) < 0) {
|
||||
if (isatty (comfd))
|
||||
tty=1;
|
||||
else
|
||||
tty=0;
|
||||
if (tty && ioctl (comfd, TCGETS, &svbuf) < 0) {
|
||||
sprintf(msg,"Can't ioctl get device %s.\n",device);
|
||||
serror(msg,1);
|
||||
}
|
||||
ioctl(comfd, TCGETA, &stbuf);
|
||||
if (tty)
|
||||
ioctl(comfd, TCGETS, &stbuf);
|
||||
speed=stbuf.c_cflag & CBAUD;
|
||||
switch(speed) {
|
||||
case B0: strcpy(cspeed,"0");break;
|
||||
|
@ -1336,7 +1346,7 @@ void opendevice(void) {
|
|||
parity=stbuf.c_cflag & (PARENB | PARODD);
|
||||
stbuf.c_iflag &= ~(IGNCR | ICRNL | IUCLC | INPCK | IXON | IXANY | IGNPAR );
|
||||
stbuf.c_oflag &= ~(OPOST | OLCUC | OCRNL | ONLCR | ONLRET);
|
||||
stbuf.c_lflag &= ~(ICANON | XCASE | ECHO | ECHOE | ECHONL);
|
||||
stbuf.c_lflag &= ~(ICANON | ECHO | ECHOE | ECHONL);
|
||||
stbuf.c_lflag &= ~(ECHO | ECHOE);
|
||||
stbuf.c_cc[VMIN] = 1;
|
||||
stbuf.c_cc[VTIME] = 0;
|
||||
|
@ -1553,7 +1563,7 @@ int main(int argc,char **argv) {
|
|||
skip_default=0;
|
||||
filep=NULL;
|
||||
scriptspace=4096;
|
||||
ioctl(1, TCGETA, &cons);
|
||||
ioctl(1, TCGETS, &cons);
|
||||
if((script=( char *)malloc(scriptspace))==NULL) {
|
||||
serror("Could not malloc()",3);
|
||||
}
|
|
@ -102,12 +102,12 @@ BR2_PACKAGE_WIREGUARD_TOOLS=y
|
|||
BR2_PACKAGE_MOSQUITTO=y
|
||||
BR2_PACKAGE_MOSQUITTO_BROKER=y
|
||||
|
||||
# DEBUG
|
||||
BR2_PACKAGE_HOST_GDB=y
|
||||
BR2_PACKAGE_GDB=y
|
||||
|
||||
# SMARTHOME
|
||||
BR2_PACKAGE_COMGT=y
|
||||
# BR2_PACKAGE_DEMO_OPENIPC is not set
|
||||
# BR2_PACKAGE_DBELL_INA219 is not set
|
||||
|
||||
# DEBUG
|
||||
BR2_PACKAGE_HOST_GDB=y
|
||||
BR2_PACKAGE_GDB=y
|
||||
|
||||
|
|
|
@ -1,79 +0,0 @@
|
|||
#
|
||||
# Makefile - build and install the comgt package
|
||||
# Copyright (C) 2005 Martin Gregorie
|
||||
# Copyright (C) 2006 Paul Hardwick
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# martin@gregorie.org, paul@peck.org.uk
|
||||
#
|
||||
# $Id: Makefile,v 1.4 2006/10/20 14:30:19 pharscape Exp $
|
||||
#
|
||||
#
|
||||
|
||||
LIB = -L/usr/local/lib
|
||||
INC = -I/usr/local/include
|
||||
EXE = /usr/local/bin
|
||||
MAN = /usr/share/man/man1
|
||||
CPROG = comgt
|
||||
SCRIPTPATH = /etc/comgt/
|
||||
SCRIPTSRC = ./scripts/
|
||||
BIN = $(CPROG)
|
||||
MANP = comgt.1 sigmon.1
|
||||
|
||||
CFLAGS = -c
|
||||
LDFLAGS =
|
||||
|
||||
all: $(BIN)
|
||||
|
||||
install:
|
||||
chmod a-w $(BIN)
|
||||
chmod u+rw $(BIN)
|
||||
chmod a+x $(BIN)
|
||||
cp $(BIN) $(EXE)
|
||||
chmod a-wx $(MANP)
|
||||
chmod u+rw $(MANP)
|
||||
chmod a+r $(MANP)
|
||||
cp $(MANP) $(MAN)
|
||||
-mkdir $(SCRIPTPATH)
|
||||
chmod a-w $(SCRIPTPATH)
|
||||
chmod u+rw $(SCRIPTPATH)
|
||||
chmod a+x $(SCRIPTPATH)
|
||||
cp -f $(SCRIPTSRC)* $(SCRIPTPATH)
|
||||
chmod a-w $(SCRIPTPATH)*
|
||||
chmod u+rw $(SCRIPTPATH)*
|
||||
chmod a+x $(SCRIPTPATH)*
|
||||
|
||||
|
||||
|
||||
|
||||
uninstall:
|
||||
cd $(EXE); rm $(BIN)
|
||||
cd $(MAN); rm $(MANP)
|
||||
-rm -r $(SCRIPTPATH)
|
||||
|
||||
clean:
|
||||
-rm *.o
|
||||
-rm $(CPROG)
|
||||
-rm *~
|
||||
-rm $(SCRIPTSRC)*~
|
||||
|
||||
|
||||
comgt: comgt.o
|
||||
cc comgt.o $(LDFLAGS) -o comgt
|
||||
|
||||
comgt.o: comgt.c comgt.h
|
||||
cc comgt.c $(CFLAGS)
|
||||
|
|
@ -4,7 +4,6 @@ source "$BR2_EXTERNAL_INGENIC_PATH/package/ingenic-osdrv-t21/Config.in"
|
|||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ingenic-osdrv-t31/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ingenic_patcher/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/aura-httpd/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ax-agent/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/dropbear-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/baresip-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/fdk-aac-openipc/Config.in"
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
source "$BR2_EXTERNAL_INGENIC_PATH/linux/Config.ext.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ingenic-osdrv-t20/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ingenic-osdrv-t21/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ingenic-osdrv-t31/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ingenic_patcher/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/aura-httpd/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/dropbear-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/baresip-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/comgt/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/dbell-ina219/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/demo-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/fdk-aac-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ffmpeg-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/fwprintenv-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/i2c-telemetry/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/ipctool/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/json-c-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/lame-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/libcurl-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/libevent-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/libhv-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/libogg-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/libre-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/librem-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/libsrt-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/libwebsockets-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/linux-firmware-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/majestic-fonts/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/majestic/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/mbedtls-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/microbe-web/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/microsnander/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/motors/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/node-exporter/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/opus-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/rtl8188fu-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/uacme-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/vtund-openipc/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/xmdp/Config.in"
|
||||
source "$BR2_EXTERNAL_INGENIC_PATH/package/yaml-cli/Config.in"
|
|
@ -114,6 +114,11 @@ BR2_PACKAGE_UHTTPD=y
|
|||
# Optional packages
|
||||
BR2_PACKAGE_PPPD=y
|
||||
|
||||
# SMARTHOME
|
||||
BR2_PACKAGE_COMGT=y
|
||||
BR2_PACKAGE_DEMO_OPENIPC=y
|
||||
BR2_PACKAGE_DBELL_INA219=y
|
||||
|
||||
# DEBUG
|
||||
BR2_PACKAGE_HOST_GDB=y
|
||||
BR2_PACKAGE_GDB=y
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
../../general/package/comgt
|
|
@ -0,0 +1 @@
|
|||
../../general/package/dbell-ina219
|
|
@ -0,0 +1 @@
|
|||
../../general/package/demo-openipc
|
Loading…
Reference in New Issue