Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Помогите дописать флудер телефона на PHP через Skype (https://forum.antichat.xyz/showthread.php?t=116174)

inlanger 16.04.2009 11:17

Помогите дописать флудер телефона на PHP через Skype
 
Нарыл в сети исходник, как позвонить через Skype на php, пытался переделать во флудер - не получилось. Скрипт юзает Skype4COM:
PHP код:

<?php

// Event sink:
class _ISkypeEvents {
  
  function 
AttachmentStatus($status) {
   echo 
">Attachment status $status\n";
  }
  function 
CallStatus($call$status) {
   echo 
">Call $call->id status $status\n";
  }
}

// Create a Skype4COM object:
$skype = new COM("Skype4COM.Skype");

// Create a sink object:
$sink =& new _ISkypeEvents ();
$sink->convert $skype->convert();

// Connect to the sink:
com_event_sink($skype$sink"_ISkypeEvents");

// Create a conversion object:
$convert $skype->convert;
$convert->language "en";

// Start the Skype client, minimized and with no splash screen:
if (!$skype->client()->isRunning()) {
  
$skype->client()->start(truetrue);
}

// If the user status is not "online", change user status to "online":
if ($skype->currentUserStatus() == $convert->textToUserStatus("OFFLINE")) {  
  
$skype->changeUserStatus($convert->textToUserStatus("ONLINE"));
}

// Create a user object
$user $skype->user("echo123");
echo 
"User " $user->handle " online status is " $convert->onlineStatusToText($user->onlineStatus) . "\n";

// Place a call
$call $skype->PlaceCall($user->handle);

// Wait for the call to be "in progress" and report an error if:
while ($call->status <> $convert->textToCallStatus("INPROGRESS")) {
  if (
$call->status == $convert->textToCallStatus("FAILED") || 
    
$call->status == $convert->textToCallStatus("REFUSED") || 
    
$call->status == $convert->textToCallStatus("CANCELLED") || 
    
$call->status == $convert->textToCallStatus("FINISHED") || 
    
$call->status == $convert->textToCallStatus("BUSY"))
    die (
"Call status " $convert->callStatusToText($call->status));
  else
    
com_message_pump (500);       
}

// Send dtmf tones:
com_message_pump (10000);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "0";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "1";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "2";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "3";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "4";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "5";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "6";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "7";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "8";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "9";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "#";
com_message_pump (500);
if (
$call->status == $convert->textToCallStatus("INPROGRESS")) $call->dtmf "*";

// Finish the call: 
if ($call->status <> $convert->textToCallStatus("FINISHED")) $call->finish();

//Sleep:
com_message_pump (1000);
  
?>

Скрипт рабочий, в самом скайпе вылезет окошко с вопросом, "разрешить ли апачу юзать скайп?".

Когда ставлю совершать звонок в цикл и паузу между звонками, то скрипт выдаёт:

Цитата:

Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Skype4COM.Skype.1<br/><b>Description:</b> CALL: Action failed' in S:\home\test1.ru\www\s.php:56 Stack trace: #0 S:\home\test1.ru\www\s.php(56): variant->finish() #1 {main} thrown in S:\home\test1.ru\www\s.php on line 56

iron-viper 16.04.2009 11:40

может в денвере модуля какого не хватает?

inlanger 16.04.2009 11:41

Вроде не в денвере дело, ругается же Skype4COM, да и ругается при добавлении простого while

iron-viper 16.04.2009 12:12

Да запустил у себя, только пришлось еще set_time_limit(0); вставить. скайп запустился спросил разрешения и в браузере выпал в ошибку

inlanger 16.04.2009 12:13

На винде запускал? Может в ОС дело...

iron-viper 16.04.2009 12:16

Да на Венде =)

Gar|k 16.04.2009 12:44

Как то не разумно юзать COM обекты да еще и на PHP o_O
PHP не предназначен для этого, а на том же Си или Делфи ты бы сразу понял что, не так...

inlanger 16.04.2009 12:47

А Си почти не знаю, а делфи считаю мёртвым. Пишу на пхп, потому и выбрал его. Раз простой звонок проходит, то можно и на PHP написать.

Gar|k 16.04.2009 13:00

понятно )
я тебя могу понять ибо тоже щас занимаюсь перенесением/переписание кода улиты l2ping из набора Linux Bluez на WinCE (это в общем пинг для протокола L2CAP Bluetooth - можно в общем организовать DoS бт устройства)
кроме меня это никому не надо ...

но эммм в чем смысл твоего флудера...
типа я зайду на твою страницу в инете. допустим у меня есть скайп и он влючен, но ведь он выдаст мне предупреждание...

inlanger 16.04.2009 13:04

Смысл моего флудера в том, чтобы иметь свой флудер. Потому как те что сейчас есть не хотят у меня работать. А это ещё и open source проект может быть )
Или организую платный сервис флуда. В любом случае - это полезная штука.


Время: 03:59