Вызов Skype API всегда отменяется
У меня есть небольшое приложение, которое звонит на номера телефонов в Skype и позволяет записывать разговоры.
Но это не работает с версиями Skype после 7.5. Я пробовал оба Skype4COM
и прямой API:
За Skype4COM
звонок всегда получает статус clsCancelled
, FailureReason
является cfrMiscError
, Ниже пример кода:
Skype skype = new SKYPE4COMLib.Skype();
if (!skype.Client.IsRunning)
{
skype.Client.Start(true, true);
}
skype.Attach(skype.Protocol, true);
Call call = skype.PlaceCall("+17606604690");
Для прямого вызова API статус MISSED
, Я использую следующую команду, чтобы начать звонок CALL +17606604690
, Можно начать разговор с кем-то из вашего списка контактов, начав с ним IM и сфокусировав клиент Skype, но этот подход не работает для мобильных номеров.
Я предполагаю, что Skype API изменился после версии 7.5, потому что я вижу, что другие приложения все еще могут совершать звонки. Я также знаю об URL-адресах Skype, но они имеют большие задержки и не сообщат вам, если вызов не удастся.
1 ответ
Здесь есть некоторое обсуждение этой проблемы с обходным путем:
Я сделал ярлык для вызова только части skypecall, и, что удивительно, если я спамю, он запускается. Тройной цикл try-catch делает свое дело, но чтобы убедиться, я просто применил повторную попытку, пока его состояние не станет "звонящим"