Код: Выделить всё
root@Laptop:~# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready ( MySERVER project ).
user root
+OK
pass password
+OK Logged in.
list
+OK 3 messages:
1 1568
2 1569
3 1564
Код: Выделить всё
root@Laptop:~# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready ( MySERVER project ).
user root
+OK
pass password
+OK Logged in.
list
+OK 3 messages:
1 1568
2 1569
3 1564
Код: Выделить всё
root@Laptop:~/Desktop# cu -l /dev/ttyACM0 -s 115200<enter>
Connected.
ATZ<enter>
OK
AT<enter>
OK
~.<enter>
Disconnected.
root@Laptop:~/Desktop#
Код: Выделить всё
<?php
$n_dev = "/dev/ttyACM0";
$d_dev = fopen ($n_dev, "w+");
fwrite ($d_dev, "ATZ\r\n");
for ( $i=0; $i<1000000; $i++){
};
fwrite ($d_dev, "AT\r\n");
for ( $i=0; $i<1000000; $i++){
};
fwrite ($d_dev, "ATD *111#\r\n");
fclose ($d_dev);
?>
Код: Выделить всё
#!/bin/bash
f_modem="/dev/ttyACM0";
sub="\x0D0A";
echo -e "ATZ$sub" > $f_modem;
sleep 0.1s;
echo -e "AT$sub" > $f_modem;
sleep 0.1s;
echo -e "ATD *111#$sub" > $f_modem;
Код: Выделить всё
#include <iostream.h>
#include <cstring>
#include <string>
using namespace std;
const char *st = "/dev/ttyACM0";
//Объявление переменных
char *line = new char[100];
char *line_s = new char[100];
FILE * d_dev;
char *s_dat = new char[100];
string *s_array = new string[10];
char *dat = new char[100];
//Функция работы с выводом модема
string* scan_data(FILE * d_dev){
int n_s = 0;
while (!feof(d_dev)){
s_dat = fgets(line_s, 100, d_dev);
s_array[n_s] = s_dat;
cout << n_s;
cout << s_dat;
n_s = n_s + 1;
};
cout << "ok";
return s_array;
};
//Основная программа
int main(void){
cout << "Modem Control running...\n";
d_dev = fopen(st, "w+");
fprintf(d_dev, "AT\r");
sleep(0.3);
scan_data(d_dev);
fclose(d_dev);
cout << "program ended\n";
};
Код: Выделить всё
for ( $i=0; $i<1000000; $i++){
};
Код: Выделить всё
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <termios.h>
#include <unistd.h>
#include <termios.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream.h>
int main(){
int fd;
fd = open("/dev/ttyUSB0", O_RDWR | O_NOCTTY | O_NDELAY);
fcntl(fd, F_SETFL, 0);
struct termios options;
tcgetattr(fd, &options);
cfsetispeed(&options, B115200);
cfsetospeed(&options, B115200);
cfmakeraw( &options );
options.c_cflag &= ~PARENB;
options.c_cflag &= ~CSTOPB;
options.c_cflag &= ~CSIZE;
options.c_cflag |= CS8;
tcflush(fd, TCIFLUSH);
tcsetattr(fd, TCSANOW, &options);
cout << write(fd, "AT\r", 3);
usleep(100000);;
char *line = new char[20];
cout << "\n\r";
cout << read(fd, line, 20);
cout << "\n";
cout << line;
close(fd);
};
Код: Выделить всё
#include <driver.h> //Заголовочный файл модуля
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream.h>
#include <termios.h>
#include <fcntl.h>
using namespace std;
struct termios options;
static int fd;
static const char* dev_file(string dev){ //Генерация файла устройства
string dev_dir = "/dev/";
dev_dir = dev_dir + dev;
return dev_dir.c_str();
};
static speed_t table_speed(int speed_int){ //Таблица констант скоростей
speed_t speed_port;
if ( speed_int == 0 ){ speed_port = B0; };
if ( speed_int == 1 ){ speed_port = B50; };
if ( speed_int == 2 ){ speed_port = B75; };
if ( speed_int == 3 ){ speed_port = B110; };
if ( speed_int == 4 ){ speed_port = B134; };
if ( speed_int == 5 ){ speed_port = B150; };
if ( speed_int == 6 ){ speed_port = B200; };
if ( speed_int == 7 ){ speed_port = B300; };
if ( speed_int == 8 ){ speed_port = B600; };
if ( speed_int == 9 ){ speed_port = B1200; };
if ( speed_int == 10 ){ speed_port = B1800; };
if ( speed_int == 11 ){ speed_port = B2400; };
if ( speed_int == 12 ){ speed_port = B4800; };
if ( speed_int == 13 ){ speed_port = B9600; };
if ( speed_int == 14 ){ speed_port = B19200; };
if ( speed_int == 15 ){ speed_port = B38400; };
if ( speed_int == 16 ){ speed_port = B57600; };
if ( speed_int == 17 ){ speed_port = B115200; };
if ( speed_int == 18 ){ speed_port = B230400; };
return speed_port;
};
//Функция драйвера
extern string driver(string device, int speed, string line, int com){
string out;
out = "";
if ( com == 0 ){ //Открытие устройства и настройка порта
fd = open(dev_file(device), O_RDWR | O_NOCTTY | O_NDELAY);
fcntl(fd, F_SETFL, 0);
tcgetattr(fd, &options);
cfsetispeed(&options, table_speed(speed));
cfsetospeed(&options, table_speed(speed));
cfmakeraw( &options );
options.c_cflag &= ~PARENB;
options.c_cflag |= ~CSTOPB;
options.c_cflag &= ~CSIZE;
options.c_cflag |= CS8;
tcflush(fd, TCIFLUSH);
tcsetattr(fd, TCSANOW, &options);
};
if ( com == 1 ){ //Работа с устройством
write(fd, line.c_str(), line.length());
usleep(100000);
char *buff = new char[384];
char *buff_stat = new char[10];
char *cache = new char[1];
bool t_break = false;
bool t_clean = false;
const string c_ok = "OK"; //Устройство сообщает, что все выполнено успешно
const string c_error = "ERROR"; //Устройство сообщает, что произошла ошибка
const string c_sub = ">"; //Устройство ожидает данные ( это последный байт )
for ( int i=0; i<384; i++ ){
read(fd, cache, 1);
usleep(10000);
buff[i] = cache[0];
for ( int s=0; s<2; s++ ){
buff_stat[s] = buff[i-(2-s)];
if ( ( char *) buff_stat == c_ok ){
t_break = true;
break;
};
};
for ( int s=0; s<10; s++ ){
buff_stat[s] = 0;
};
for ( int s=0; s<5; s++ ){
buff_stat[s] = buff[i-(5-s)];
if ( ( char *) buff_stat == c_error ){
t_break = true;
break;
};
};
for ( int s=0; s<10; s++ ){
buff_stat[s] = 0;
};
if ( cache == c_sub ){
t_break = true;
t_clean = true;
};
if ( t_break == true ){
break;
};
};
out = ( char* ) buff;
if ( t_clean == false ){ //Забор с устройства оставшихся символов
read(fd, buff, 100);
};
};
if ( com == 2 ){ //Закрытие устройства
close(fd);
};
return out;
};
Код: Выделить всё
root@Laptop:~# telnet localhost 12000
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
sms_send
send_sms_mode
OK
num +38097******
num
OK
mess My SERVER bot => diagnostic system
mess_send
OK
Код: Выделить всё
[dobs@wifi ~]$ traceroute my-server.km.ua
traceroute to my-server.km.ua (94.153.185.142), 30 hops max, 60 byte packets
1 1gb-gateway (192.168.1.1) 0.264 ms 0.368 ms 0.238 ms
2 gw4.lancom.kiev.ua (195.66.137.65) 1.020 ms 1.526 ms 4.949 ms
3 195.66.137.137 (195.66.137.137) 1.114 ms 1.491 ms 5.024 ms
4 194.9.36.129 (194.9.36.129) 2.007 ms 5.194 ms 1.780 ms
5 dtel-ix.kyivstar.net (193.25.180.88) 6.519 ms 5.367 ms 5.282 ms
6 81-23-23-25.ip.kyivstar.net (81.23.23.25) 3.896 ms 3.980 ms 3.523 ms
7 94-153-185-142-gprs.kyivstar.net (94.153.185.142) 456.120 ms 475.514 ms 489.903 ms