рдпрд╛рд░ред рдПрд╕рдПрдордПрд╕ рд╕реВрдЪрдирд╛рдПрдВ рднреЗрдЬрдирд╛

рдореИрдВ рдирд┐рдЧрд░рд╛рдиреА рдкреНрд░рдгрд╛рд▓реА рдорд┐рдХрд░реЛрдЯрд┐рдХ рдж рдбреНрдпреВрдб рдХреЗ рдереЛрдбрд╝рд╛ рд╢реЛрдзрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА gsandul рдФрд░ cedr рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЬрд┐рд╕ рд╕рдВрд╢реЛрдзрди рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреА, рдореИрдВрдиреЗ рдПрдХ рдмрд╛рд░ рдЕрдкрдиреЗ рдмреНрд▓реЙрдЧ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЕрдзрд┐рдХ рд▓реЛрдЧ рдЗрд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рддреЛ, рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ: рдпрд╛рд░ рдПрдХ рдХрд╛рдлреА рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдФрд░ рд▓рдЪреАрд▓рд╛ рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡рд╛рдЗрд╕ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рд╣реИ рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреА рд╕реЗрд╡рд╛ рдЙрдкрд▓рдмреНрдзрддрд╛ рдЬрд╛рдВрдЪреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрд╕рдПрдирдПрдордкреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ рдкреВрдЫрддрд╛рдЫ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдмрд╛рд╣рд░реА рджреБрдирд┐рдпрд╛ рдХреЛ рдИрд╡реЗрдВрдЯ рдФрд░ рдИ-рдореЗрд▓: рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдИрд╡реЗрдВрдЯ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

рдХрд┐рд╕реА рднреА рдЕрд▓рд░реНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрд╕рдПрдордПрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдкрд╛рд░рдВрдкрд░рд┐рдХ рддрд░реАрдХреЗ рд╕реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ - рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдИрдореЗрд▓-рдПрд╕рдПрдордПрд╕ рдЧреЗрдЯрд╡реЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рдореМрдХрд╛ рд╣реИ рдХрд┐ рдЬрдм рдЕрдкрд▓рд┐рдВрдХ рдЧрд┐рд░рддрд╛ рд╣реИ рддреЛ рд╕рд┐рд╕реНрдЯрдо рдЧреЗрдЯрд╡реЗ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪреЗрдЧрд╛ рдФрд░ рд╕рдВрджреЗрд╢ рдирд╣реАрдВ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ред рджреВрд╕рд░реА рдУрд░, рдореЗрд░реЗ рдкрд╛рд╕ рд▓рд╛рд▓-рдФрд░-рд╕рдлреЗрдж рдСрдкрд░реЗрдЯрд░ рдХреЗ рдмрд╛рд╣рд░ рдХрд╣реАрдВ рд╕реЗ Huawei E220 рдореЙрдбреЗрдо рдерд╛, рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рдЕрд╕реАрдорд┐рдд рдПрд╕рдПрдордПрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╕рд┐рдо рдХрд╛рд░реНрдб рдФрд░ рдЦреБрдж рдорд╢реАрди, рдЬрд┐рд╕ рдкрд░ рдбреНрдпреВрдб рдЦрдбрд╝рд╛ рдерд╛, рдЙрд╕рдиреЗ рдЙрдмрдВрдЯреВ рдХреЗ рддрд╣рдд рд╢рд░рд╛рдм рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ред

рддреЛ, рд╣рдо рдореЙрдбреЗрдо рдХреЛ рдЙрд╕реА рдорд╢реАрди рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдЬрд┐рд╕ рдкрд░ рдбреНрдпреВрдб рд╢рд░рд╛рдм рд╕реЗ рдЪрд▓рддрд╛ рд╣реИред рдЙрдмрдВрдЯреВ рдиреЗ рдЗрд╕реЗ рдЦреБрд╢реА рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛:

Bus 003 Device 002: ID 12d1:1003 Huawei Technologies Co., Ltd. E220 HSDPA Modem / E270 HSDPA/HSUPA Modem 


рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рд┐рд╕реНрдЯрдо рдореЙрдбреЗрдо рдХреЛ USB CD-ROM рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реИред рдпрд╣ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдореЛрдб рдореЗрдВ рдлрд╛рдпрд░рд╡реБрдб рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рд╕реЗ рдЗрд╕рдХреЗ рддрд╣рдд рдПрдХ рдирд┐рдпрдВрддреНрд░рдг рдХрд╛рд░реНрдпрдХреНрд░рдо рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдореЙрдбреЗрдо рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕реЗ рдореЙрдбреЗрдо рдореЛрдб рдореЗрдВ рдбрд╛рд▓рддрд╛ рд╣реИред рдпрд╣рд╛рдБ usb-modwitch рдкреИрдХреЗрдЬ рд╣рдорд╛рд░реА рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдЖрдПрдЧрд╛ред рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:

 echo 'SUBSYSTEM==┬╗usb┬╗, SYSFS{idProduct}==┬╗1003тА│, SYSFS{idVendor}==┬╗12d1тА│, RUN+=┬╗/lib/udev/modem-modeswitch тАУvendor 0x12d1 тАУproduct 0├Ч1003 тАУtype option-zerocd┬╗' | sudo tee /etc/udev/rules.d/45-huawei220.rules 


рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдореЙрдбреЗрдо рдХреЛ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдФрд░ рдкреБрди: рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдЬрд╛рдБрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдЙрд╕рдиреЗ рд╡рд╛рдВрдЫрд┐рдд рдореЛрдб рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рд╣реИ:

  ~# ls -l /dev | grep ttyUSB lrwxrwxrwx 1 root root 7 2011-12-30 15:00 gsmmodem -> ttyUSB0 crw-rwтАФ- 1 root dialout 188, 0 2011-12-31 15:09 ttyUSB0 crw-rwтАФ- 1 root dialout 188, 1 2011-12-30 15:00 ttyUSB1 


рдпрджрд┐ ttyUSB рдкреЛрд░реНрдЯ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  ~# modprobe usbserial vendor=0x12d1 product=0├Ч1003 


рдЕрдм рд╕рдм рдХреБрдЫ рдХреНрд░рдо рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо gnokii рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ:

  [global] port = /dev/ttyUSB0 model = AT initlength = default connection = serial use_locking = yes serial_baudrate = 115200 


рд╕рд┐рдо рдХрд╛рд░реНрдб рд╕реЗ рдкрд┐рди рдЕрдиреБрд░реЛрдз рдХреЛ рдирд┐рдХрд╛рд▓рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВред рд╣рдо рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╣реИрдВ:

  ~# gnokii --identify GNOKII Version 0.6.29 IMEI : *************** Manufacturer : huawei Model : E220 Product name : E220 Revision : 11.117.10.00.184 ~# gnokii --getnetworkinfo GNOKII Version 0.6.29 Network : MTS ( ) Network code : 250 01 LAC : 0000 (0) Cell id : 00000000 (0) 


рддреЛ gnokii рдореЙрдбреЗрдо рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИред рдПрд╕рдПрдордПрд╕ рднреЗрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢:

 ~# echo test | gnokii --sendsms +7********** GNOKII Version 0.6.29 Send succeeded with reference 40! 


рдпрджрд┐ рдПрд╕рдПрдордПрд╕ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИ, рддреЛ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЪрд▓реЛ рдпрд╛рд░ рдХреЗ рд╕рд╛рде gnokii рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣рд╛ рдерд╛, рдИрд╡реЗрдВрдЯ рдХреЛ рджреЛ рддрд░рд╣ рд╕реЗ рдИ-рдореЗрд▓ рд╕реЗ рдпрд╛ рд╕рд┐рд╕рд▓реЙрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╕ рджреВрд╕рд░реЗ рддрд░реАрдХреЗ рд╕реЗ рд╣рдо рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рдмрд╛рд╣рд░реА рдЖрдИрдкреА рдФрд░ рдХрд┐рд╕реА рднреА рдкреЛрд░реНрдЯ рдХреЛ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдпреВрдбреАрдкреА рдкрд░ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ рд╕реВрдЪрдирд╛рдПрдВ рднреЗрдЬреА рдЬрд╛рдПрдВрдЧреАред рд╣рдорд╛рд░рд╛ рдХрд╛рдо рдЙрд╕ рдкреЛрд░реНрдЯ рдХреЛ рд╕реБрдирдирд╛ рд╣реИ рдЬрд╣рд╛рдВ рдбреНрдпреВрдб рдЙрдиреНрд╣реЗрдВ рднреЗрдЬреЗрдЧрд╛, рдФрд░ рдЗрди рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ gnokii рдкрд░ рднреЗрдЬреЗрдЧрд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдкрд░реНрд▓ рдореЗрдВ рдПрдХ рдЫреЛрдЯреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреА:

  #!/usr/bin/perl -w use strict; use IO::Socket; my($server, $newmsg, $max_len, $server_port); $max_len = 160; $server_port = 12345; $server = IO::Socket::INET->new(LocalPort=>$server_port, Broadcast=>0, Proto=>"udp") or die "Error starting UDP Server on port $server_port: $@\n"; print "UDP Server started on port $server_port\n"; $newmsg = ""; while($server->recv($newmsg,$max_len)){ if($newmsg){ #my($port, $ipaddr) = sockaddr_in($server->peername); print "Received: $newmsg \n"; open(GNOKII, "| gnokii --sendsms +7**********┬╗) || die "Starting gnokii failed: $!\n"; print GNOKII $newmsg; close(GNOKII); } } die "recv: $!"; 


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХреЛрдб рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ 12345 рдкреЛрд░реНрдЯ рдкрд░ рд╕реБрдирддреА рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ 160 рдЕрдХреНрд╖рд░реЛрдВ (рдЕрдзрд┐рдХрддрдо рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ рдХреА рд▓рдВрдмрд╛рдИ) рд╕реЗ gnokii рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрд╛рддреА рд╣реИ, рдореЛрдмрд╛рдЗрд▓ рдирдВрдмрд░ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреА рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХрд╣рд╛рдВ рднреЗрдЬрд╛ рдЬрд╛рдирд╛ рд╣реИред

рджреЛрд╕реНрдд рдореЗрдВ, рдПрдХ рдирдпрд╛ syslog рдЯрд╛рдЗрдк рдЕрд▓рд░реНрдЯ рдмрдирд╛рдПрдВ, рдЙрд╕ рдорд╢реАрди рдХрд╛ рдЖрдИрдкреА рдкрддрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдореЙрдбреЗрдо рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдИрдкреА рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓ рд░рд╣реА рд╣реИ (рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рдПрдХ рд╣реА рд╕рд░реНрд╡рд░ рд╣реИ), рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреЛрд░реНрдЯ рдХреЗ рд╕рдорд╛рди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

рдЫрд╡рд┐

рдЕрдм тАЬTestтАЭ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдпрджрд┐ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдж рдбреНрдпреВрдб рд╕реЗ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╕рдВрджреЗрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЗрдВрдЧрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЫрд╡рд┐

рдЕрджреНрдпрддрдиред рдпрджрд┐ рд╕рд╛рдордЧреНрд░реА рд░реБрдЪрд┐ рдХреА рд╣реИ, рддреЛ рдореИрдВ рдЙрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдПрдХ рд╕рдВрд╢реЛрдзрди рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдБрдЧрд╛ рдЬреЛ рдЖрдкрдХреЛ Asterisk рд╕реЗ рдЬреБрдбрд╝реЗ рдХрд┐рд╕реА рднреА 3G рдореЙрдбреЗрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ chan_dongle рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрд╕рдПрдордПрд╕ рд╕реВрдЪрдирд╛рдПрдВ рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

Source: https://habr.com/ru/post/In154065/


All Articles