Можно ли как-то делать Skype.Attach(); если запущено несколько скайпов, к конкретному экземпляру?
Сейчас оно присоединяется к тому который был запущен последним, и елси запустить еще одну копию после того как присоединение уже было выполнено, произойдет переключение.
А можно ли через skype4com получить список участников конференции у которых поднята трубка, при этом будучи хостом конференции? В skype4py это работает только в случае если ты не хост конференции.
Если эта проблема критична не пользоваться COM оболочкой. На самом деле это оболочка над низкоуровневым api. Оно позволяет с несколькоми скайпами и много че. developer.skype.com/public-api-reference
Как раз сейчас делаю интеграцию скайпа в своем проекте, поэтому заметил пару вещей.
— В методе Attach() лучше указывать второй параметр False. Метод с True или без параметра будет ждать 30 секунд и если не было ответа, то автоматически зафейлит аттач. Плюс метод вызывается синхронно, т.е. уи подвисает. Делаете Skype.Attach(9, false) и потом в обработчике AttachmentStatus уже получаете ответ, когда юзер нажмет «разрешить».
— По какой-то, непонятной мне, причине ивент CallStatus иногда вызывается несколько раз с одним и тем же статусом. Такое было мной замечано у статуса Ringing и Finished. Поэтому рекомендую сделать флаг, чтобы не обрабатывать тот же ивент второй раз.
— Skype.PlaceCall(pmessage.FromHandle); этот метод вылетить с эксепшеном если в данный момент вы уже имеете активный звонок. Советую сначала проверить Skype.ActiveCalls.
а есть тоже самое, но для текста? чтоб можно выделить текст в сообщении и был показан его перевод, и можно было набрать текст на русском, а он бы перевел на английский.
В смысле? Если вы хотите, чтобы в момент отправки сообщения, когда вы написали текст на русском, а он отправился на английском? Это можно легко реализовать, немного переделав код из статьи.
Автопереводчик через Skype