有没有一种简单的方法可以从.NET向Skype发送群聊信息?我不需要响应任何命令或任何东西,所以它不需要是BOT.基本上,我会在一个专用的盒子上运行这个程序,Skype作为特殊用户运行,我会让它向特定的群聊报告某些信息.
我知道有一个Skype COM库.我已经看到了基于此的示例,但我无法获得任何牵引力.
我一直在尝试用C#制作一个"Skype Bot".到目前为止,我已经成功地让它在一对一的聊天中工作.我不能让它在群聊中工作.这是我的来源:
using System;
using System.Windows.Forms;
using SKYPE4COMLib;
namespace SkypeBot
{
public partial class Form1 : Form
{
private Skype skype;
private const string trigger = "!"; // Say !help
private const string nick = "Bot";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
skype = new Skype();
// Use skype protocol version 7
skype.Attach(7, false);
// Listen
skype.MessageStatus += new _ISkypeEvents_MessageStatusEventHandler(skype_MessageStatus);
}
private void skype_MessageStatus(ChatMessage msg, TChatMessageStatus status)
{
if (TChatMessageStatus.cmsRead == status)
{
return; …Run Code Online (Sandbox Code Playgroud) 目标:完成某个宏后,向Skype联系人发送消息.
消息来源:我在周围搜索并发现了一些问题,试图做同样的事情.这是我正在使用的代码的基础使用Excel VBA将Skype消息发送到群聊以及此https://www.mrexcel.com/forum/excel-questions/424432-sending-skype-message-through-excel -vba.html 这两个问题都使用类似的代码.
问题:当我运行代码时,我收到以下错误:
运行时错误'429':ActiveX组件无法创建对象
在线上:
Set aSkype = New SKYPE4COMLib.Skype
Run Code Online (Sandbox Code Playgroud)
问题:此API是否仍适用于此类程序?如何解决持续的错误?
码:
Sub testingskype()
Dim aSkype As SKYPE4COMLib.Skype
Set aSkype = New SKYPE4COMLib.Skype
Dim oChat As Chat
Dim skUser As SKYPE4COMLib.User
Set skUser = aSkype.User("user_name")
Set oChat = aSkype.CreateChatWith(skUser.Handle)
oChat.OpenWindow
oChat.SendMessage "message"
End Sub
Run Code Online (Sandbox Code Playgroud)
Obs:我在我创建的每个模块中都使用了explicit选项.
我正在研究安全监控应用程序,我找到的最佳方法是Skype.
当一个可能的入侵发生时,应用程序调用一个指定的Skype ID,这可能是我的Android手机我完成了所有图像处理的东西.但我坚持使用这个Skype API,我写了这段代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SKYPE4COMLib;
namespace SkypeCall
{
class Program
{
static void Main(string[] args)
{
Skype skype;
skype = new Skype("Skype4COM.Skype", "Skype_");
Call call = skype.PlaceCall(SkypeID);
call.StartVideoSend();
}
}
}
Run Code Online (Sandbox Code Playgroud)
这会在call.StartVideoSend();中启动语音呼叫.显示错误
An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in SkypeCall.exe
Additional information: CALL: Action failed
Run Code Online (Sandbox Code Playgroud)
我甚至试过这个,但我猜这是旧的API,无法从中得到任何东西.甚至不发送命令.
如果有人会帮助我,我会感激不尽.
我想邀请用户发送特定消息,但我找不到可以设置邀请消息的位置.
这是我所做的(简化)样本:
skype.Client.Start(true, true);
var user = skype.SearchForUsers("the_name_i_am_searching_for")
.Cast<User>()
.FirstOrDefault();
if (user != null)
user.BuddyStatus = TBuddyStatus.budPendingAuthorization;
Run Code Online (Sandbox Code Playgroud)
使用此代码,将发送默认邀请.
我多年来一直在为残疾人开发和分发通信软件.
这些残疾人喜欢在一个应用程序(电子邮件,互联网,Skype等)中拥有所有东西.
因此我使用了Skype4COM库.这一切都运行良好多年,然后突然它不再工作(我认为它是在2014年),然后不久,它再次工作.
现在 - 将Windows 10与集成的Skype应用程序一起使用 - 它不再起作用了.
我在这一行收到错误"未安装Skype客户端":
Set oSkype = New SKYPE4COMLib.Skype'works fine
oSkype.Client.Start True, True 'raises error "Skype client is not installed"
Run Code Online (Sandbox Code Playgroud)
我试图在文档上获得有关此内容的一些信息,但我没有找到所需的信息.
有没有人知道我可能做错了什么或我必须采取哪些不同的做法才能让用户再次在我的通讯软件中使用Skype?
如何使用skype4com dll更改我的Skype状态(从在线到离线,离线)?我在C#工作.提供示例代码的答案对我来说最有帮助.
如何从Skype接收和输出消息到我的应用程序(textbox1.Text)?我在skype4com文档中寻找它但没有找到任何东西.
有没有办法用 C# 或任何其他语言实现 Skype API。
我使用的是 Skype4com.DLL,但它已被弃用,不能与 Skype 最新更新一起使用。我在 Skype 插件(Windows 应用程序)中使用它来登录和拨打电话。作为替代方案,我认为 UCWA Skype Web SDK 将是最佳解决方案,但它有不同的用途。
有些公司仍在使用它,例如https://www.minutizer.com/。我无法弄清楚他们如何检测呼叫和消息。
需要帮助!谢谢
我正在努力利用SKYPE4COMLib.dll.
我已经过去引用了库(呵呵),现在我正在尝试创建一个skype实例:
Skype s=new SkypeClass();
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
The type 'SKYPE4COMLib.SkypeClass' has no constructors defined
Run Code Online (Sandbox Code Playgroud)
和
Interop type 'SKYPE4COMLib.SkypeClass' cannot be embedded. Use the applicable interface instead.
Run Code Online (Sandbox Code Playgroud)
我见过的样本都在VB中,他们使用
Set oSkype = WScript.CreateObject("Skype4COM.Skype", "Skype_")
Run Code Online (Sandbox Code Playgroud)
我不知道如何翻译.
另外,我发现了以下问题,这似乎是相关的,但答案似乎并不适用于c#.
如何在c#中创建Skype课程?