65.9K
CodeProject 正在变化。 阅读更多。
Home

使用 Skype 和 C# 构建语言翻译机器人

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2013年2月7日

MIT

1分钟阅读

viewsIcon

9625

如何使用 Skype 和 C# 构建语言翻译机器人

在 Google Talk 中,有一些机器人服务可以帮助将一种语言翻译成另一种语言。 您可以使用 Skype4COM.dll 在 Skype 中实现类似的服务。 在此语言翻译实现中,使用了 Bing SOAP API。

Skype4COM 是一个基于 Windows 的 COM DLL,充当基于文本的 Skype Desktop API 和第三方程序/应用程序之间的垫片。 Skype4COM.dll 和开发者文档可以从 这里 下载。

您需要下载 Skype4COM.dll 并在系统中注册它才能使用它。 您可以使用命令提示符中的 regsvr32 命令注册任何 COM DLL。 您需要管理员权限才能执行此操作。 如果您没有正确注册它,您在运行应用程序时可能会遇到一些 COMException

您可以从“添加引用”>“COM”选项卡添加 Skype4COM.dll 的引用。

这是实现代码

private Skype _skype;
public frmSkypeBot()
{
    InitializeComponent();

    _skype = new Skype();
    _skype.Attach(8, false);
    _skype.MessageStatus += SkypeMessageStatus;
}

private void SkypeMessageStatus(ChatMessage pMessage, 
    TChatMessageStatus Status)
{
    try
    {
        if (Status == TChatMessageStatus.cmsRead)
        {
            _skype.SendMessage(pMessage.Sender.Handle, 
                Translate(pMessage.Body));
        }
    }
    catch (Exception ex)
    {
        Log(ex);
    }
}

启动应用程序时,您将收到如下提示

Skype - Application permission dialog

您需要单击“允许访问”按钮,否则应用程序将无法工作。

我的系统上运行的 Skype 机器人。

Skype bot - English to Hindi

Translate 方法使用 Bing API 将英语翻译成印地语。 Bing API 不支持将英语翻译成马拉雅拉姆语。 因此使用了印地语。

编程愉快!

相关内容

  1. 如何在 C# 中使用 TaskDialog API
  2. 如何锁定机器时关闭显示器
  3. Raven DB – 简介
  4. C# 中的驱动器组合框
  5. 如何在 C# 中获取当前电池电量
© . All rights reserved.