Advertisement
Guest User

Untitled

a guest
Sep 24th, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. #!/usr/bin/perl -w
  2.  
  3. use strict;
  4. use IO::Socket;
  5. use Net::XMPP;
  6. use utf8;
  7.  
  8.  
  9. my $port = 4550;
  10. my $hostName = 'jabber.alpari.org';
  11. my $portNumber = 5222;
  12. my $componentName = '';
  13. my $userName = 'unixbot';
  14. my $passWord = 'unix123bot';
  15. my $resource = 'work';
  16. my $tls = 1;
  17. my $connectionType = 'tcpip';
  18. my $conferenceName = 'unix@conference.jabber.alpari.org';
  19. my $debugLevel = 1;
  20. my $bot = new Net::XMPP::Client(
  21. debuglevel => $debugLevel
  22. );
  23.  
  24. # Создаем сокет
  25. socket(SOCK, # Указатель сокета
  26. PF_INET, # коммуникационный домен
  27. SOCK_STREAM, # тип сокета
  28. getprotobyname('tcp') # протокол
  29. ) or die ("Не могу создать сокет!");
  30. setsockopt(SOCK, SOL_SOCKET, SO_REUSEADDR, 1);
  31.  
  32. # Связываем сокет с портом
  33. my $paddr = sockaddr_in($port, INADDR_ANY);
  34. bind(SOCK, $paddr) or die("Не могу привязать порт!");
  35.  
  36. # Ждем подключений клиентов
  37. print "Ожидаем подключения...\n";
  38. listen(SOCK, SOMAXCONN);
  39.  
  40. while (my $client_addr = accept(CLIENT, SOCK)){
  41. # Получаем адрес клиента
  42. my ($client_port, $client_ip) = sockaddr_in($client_addr);
  43. my $client_ipnum = inet_ntoa($client_ip);
  44. my $client_host = gethostbyaddr($client_ip, AF_INET);
  45. # Принимаем данные от клиента
  46. my $data;
  47. my $count = sysread(CLIENT, $data, 1024);
  48. chomp($data);
  49. print "$data\n";
  50.  
  51. # Отправляем данные клиенту
  52. print CLIENT "Hello, world\n";
  53.  
  54. # Закрываем соединение
  55. close(CLIENT);
  56.  
  57.  
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement