みなさんこんにちは! 最近、退屈から、Skypeボットを書きました。 私はそれを共有することにしました。たぶん、ソースコードは誰かにとって、そしてボット自体にとって有用でしょう。
ソースでは、変数、クラス、メソッド、およびコメントの名前によって何がはっきりと見えるのかを理解できるので、投稿ではコードに関する話を退屈させません。
このプログラムにはいくつかの機能があります。
- Skype COMサーバーに接続する
- Skype COMサーバーから切断する
- Skypeの起動
- Skypeクロージング
- 辞書を再起動せずに辞書を更新- >再読み込みプログラム
- 「チャット->チャットリスト」というダイアログが表示されるチャットの選択
- システムトレイを折りたたむ
プログラムを機能させるには、config.xmlファイルが必要です。このファイルは、exeプログラムと同じディレクトリにある必要があります。
Skypeボットを構成する
設定を保存するには、SkypeBot.exeと同じディレクトリにあるconfig.xmlファイルが必要です。 このファイルには、ボットの辞書とその設定の両方が含まれています。
config.xmlの構造は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?> <main> <t reg="(|)"> <reply></reply> <reply></reply> <reply></reply> </t> <t reg="( | )"> <reply>, ?</reply> <reply></reply> </t> <namechat>#cj1900/$e9e3e97f93c86546</namechat> </main>
tタグには、ボットと回答自体が回答するキーが含まれています。
キーはタグ属性
tに保存され、
regと呼ばれます。
regタグ内には、括弧で囲まれ、
|を使用して記述された単語があります
。 。 誰かがチャットでメッセージを書き込むと、ボットはキー内の単語の1つを見つけ、一致する場合は、
返信タグを使用して囚人のランダムなフレーズで
応答します。
答えと同じ数のキーがあります。
次は
namechatタグです。 チャット名はそこに保存され、プログラム自体によって編集され、ボットとの対話を行うチャットルームの名前が含まれます。
チャット選択ウィンドウは次のとおりです。
残念ながら、何らかの理由で、SkypeがActiveXを介してすべてのチャットを常に表示するとは限らないため、この問題を解決できませんでした。
ファイルリンク
disk.yandex.ruのソースへのリンクgithub.comのソースへのリンクSkypeBotへのリンクビジュアルベーシック向けに書かれたSkypeApiの唯一の詳細なドキュメント