Home > VoIP

VoIP Archive

Mumble のオーバレイ

Mumble には、同じチャンネルにいるユーザをゲーム画面上にオーバレイ表示する機能があります。

Mumble 1.2.1 までは不安定でしたが、Mumble 1.2.2 から大幅に機能改善が行われたようです。

内部的な実装方法を変えたようなのでユーザからはわかりにくいですが、けっこう変わっています。(私もよくわかりません。)以前は不安定なのでとりあえず、オーバレイをオフにしておくことを薦めていましたが・・・

いまのところ、Alliance of Valiant ArmsLeft4Dead2 で使う分には問題ないので、だいぶ安定性が改善したと考えてよさそうです。

Mumble 1.2.2で内部的な改善をして、今度は次期バージョンMumble 1.2.3 では見た目を改善するようです。

Mumble 1.2.2 のオーバレイは右の画像のような感じです。これは、Alliance of Valiant Armsのゲーム画面上に映し出したものです。同じチャンネルにいる ユーザの名前が画面の好きな位置に昇順でソートされて表示されます。発言状態やミュート状態など、ユーザの情報も表示されます。テキストの代わりに画像を表示することもできます。

Mumble 1.2.2

Mumble 1.2.3 Developer Snapshot

Mumble 1.2.3 からは、この表示が少し変わって画像つきになるようです。標準だと人型の画像が表示されます。この画像だとわかりづらいですけど、人型の下のほうに名前が表示されています。この状態だと微妙ですけど、まだ開発中なので、まだまだ改良されると思います。今後の改良に期待といったところでしょうかね。

ちなみに、A.V.A. では ボイスチャットのオーバレイ表示は許可されています。少なくともAVAれ祭り2009 春の陣の時点で運営に聞いたら許可するとのことでした。ゲームによってはチートとみなされる可能性もあります。使用の可否はゲームによって違うので気になるなら確認しましょう。まぁ、ゲームガードが自動ではじくことはあっても、この程度のオーバレイを運営が認めないってことはなさそうですけどね。

TS3 サーバのパスワードリカバリ

パスワードを忘れると設定ファイルを全部消さないといけないのがTS3 Serverの欠点の一つです。

初回起動時に表示されるだけで、メモし忘れると確認する方法がないという。

ここでは、忘れてしまったパスワードを新しいパスワードに置き換える方法を紹介します。

やり方的には外法になるので最終手段ですね。

用意するもの

  • Sqlite3
  • TeamSpeak3Server

Sqlite3 は、このあたりからWindows 用の物を探して来て下さい。sqlite-3_6_22.zip のような名前のものをダウンロードします。

Linux系の場合はaptやらyumからインストール出来るかと思います。

手順

パスワードを忘れてしまったサーバとは別に新しく適当な場所にサーバをインストールして起動します。

特に設定する必要はありません。単に一回起動どうすればよいだけです。

このときに表示される serveradmin のパスワードをメモしておきましょう。これが新しいパスワードになります。

このとき作成された ts3server.sqlitedb を new.sqlitedb とリネームして取り出します。

この時点で他のファイルは全て不要になるので削除しても構いません。

new.sqlitedb を、パスワードを置き換えたいサーバのインストールフォルダの中に置きます。

Windows の場合はsqlite3.exe も一緒にに放り込みます。

次の内容を test.sql という名前のファイルを作成して書きこみます。

attach database "new.sqlitedb" as new_pass;
update main.clients set client_login_password=( select client_login_password from new_pass.clients where client_login_name="serveradmin" and server_id=0) where client_login_name="serveradmin" and server_id=0;

サーバのディレクトリの中はこんな感じになるかと思います。

次のコマンドを実行します。不安なら事前に ts3server.sqlitedb のバックアップを取ってください。

sqlite3 ts3server.sqlitedb < test.sql

やっていることは、new.sqlitedb からserveradmin のパスワードを読み出してきて、ts3server.sqlitedb のパスワードに上書きしているだけです。

試しにクエリにログインしてみてください。

サーバのパスワードが更新されているのがわかると思います。

TeamSpeak3 Munin プラグイン

TeamSpeak3βがリリースされて1月ほど経ちます。

軽くググって見ると公開サーバも多すぎるくらいに建っていますし、クライアントのインストール方法やサーバの建て方の基本も紹介されています。

日本語リソースも、細部を見なかったことにすると問題ない程度にはできあがっています。

普通に使う分には問題なく使えているので、一部では正式リリースだと勘違いしている人もいるくらいです。日本にデータセンターを持つ海外のホスティングサービスがTeamSpeak3サーバを提供していたりしますしね。

「Mumble 1.2 から乗り換えるほどの価値があるのか?」という視点で弄り回しています。

単純に「FPSゲーマーならMumble 1.2 だろ」と haru と今のところは考えています。

理由は単純で Mumble 1.2 の方が TeamSpeak3 より低遅延だからです。某サイトの比較記事によるとMumble 1.2 の遅延は TeamSpeak3 の1/2で、Skypeと比較しても僅差ながら勝っているらしいです。

TeamSpeak3 は未だにβですし、期待していた部分が残念な結果に終わってますし・・・

TeamSpeak3 Munin Plugin

利用ユーザ数を記録するTeamSpeak3のMuninプラグインを作ってみました。

python の TeamSpeak3 用モジュール pyts3 も利用しているのでインストールして下さい。

1週間くらい動かして問題なかったので、問題ないでしょう。

動作結果は次の図のような感じです。

TeamSpeak3 のサーバ管理権限

TeamSpeak3をいろいろ弄って遊んでいます。

管理者権限あたりについて覚書ついでにまとめてみました。

TeamSpeak3 でサーバの管理者権限を得るというのはサーバの管理者グループ”Server Admin”に自身を登録することです。

管理者権限を得る方法は大きく分けて2つあります。

IDを指定してグループに登録

これは結構単純で管理者権限を持っていれば、メインメニュー>アクセス権>サーバグループと選んで出てくるダイアログで設定できます。

IDというのはデータベースIDかユニークIDです。

TeamSpeak3のクライアントで表示されるユーザ情報に書かれているものを使います。

ユニークIDというのはクライアント固有のIDであり、どのサーバに行っても同じ値が表示されます。

データベースIDというのはサーバのデータベースに登録された順番であり、サーバによって異なります。

この方法だと誰かが管理者権限を持っている必要があります。

トークンの使用

殆どの人がサーバの初期設定時に表示されるトークンを使用して管理者になったと思います。

TeamSpeak3 におけるトークンというのは権限昇格のためのワンタイムパスワードのようなものです。

サーバ初回起動時に表示されるトークンは使用した人がサーバグループ “Server Admin”に登録される一回切りのパスワードというわけです。

このトークンは初回起動時にのみ作られるというわけではなく管理権限があれば何回でも作れます。

次のダイアログは メインメニュー>アクセス権>トークン管理>トークンを追加 と選んでいくと出るダイアログです。

こんな感じでトークンは何個でも作成できます。

管理者権限なしでトークンを生成する

管理者権限無しで”Server Admin”グループに入るためのトークンを作成する方法があります。

βの初期頃だとクライアントのサーバクエリ 機能からトークンを取得する方法がありましたが、いつの頃からか修正されてしまっています。

ただ、この方法にもサーバ初回起動時に表示されたserveradminのパスワードが必要です。

telnet というソフトを使います。たいていのOSには標準でインストールされています。

Windows 7 や Vista では標準でインストールされていないのでこのあたりを参考にしてtelnetをインストールして下さい。

telnet が使える状態になったら Windows なら コマンドプロンプト、Linuxなら端末エミュを開いて次のように打ちます。

telnet localhost 10011

サーバ機とtelnetコマンドを使っているコンピュータが違うのであれば、localhostの部分をサーバ機のIPアドレスに変えてください。

コマンドを打つと私の家の環境であれば次のように表示されます。

Trying 127.0.0.1…
Connected to localhost.
Escape character is ‘^]’.
TS3

表示されたら続けて次のように打ちます。

login client_login_name=serveradmin client_login_password=********
use sid=1
tokenadd tokentype=0 tokenid1=6 tokenid2=0

やっていることは、管理権限でサーバクエリを遅れるようにログインして、バーチャルサーバ1を選択、サーバグループ “Server Admin”に入るためのトークンを生成といったところです。

成功すれば次のようにトークンが返ってきます。

token=*******************************************

実際にLinuxでやってみたのが次の画像みたいな感じです。

ところどころerrorの文字が踊っていますが、id=0のerrorは正常終了のお知らせです。

終了方法は、telnet は Ctrl+]押した後にqと打つちます。

あとは得られたトークンをクライアントから入力するだけです。

serveradmin のパスワードを忘れたらどうするか

設定ファイルを消して作りなおすのが楽です。サーバと同じフォルダにある ts3server.sqlitedb が設定ファイルです。

標準機能としてパスワードのリセットや再設定は用意されていません。

やり方はないこともないので、興味のある人がいればそのうち書きます。

その前にリセット方法が用意されることを祈る。

Mumble 1.2.1 no-dbus リリース

Mumble 1.2.1 から D-Bus の機能を削ったものをリリースしました。

詳しくはDownloadのページから

D-Bus が無効になっているので、公式バージョンでは Mumble 起動時に一緒に起動する dbus-daemon.exe が、no-dbus版 では起動しません。

ビルドオプションに no-dbus をつけただけで、中身は殆ど弄っていないので D-Bus が無効になっている以外は公式バージョンと同じのはずです。

Mumble 1.2.1 からUAC関連に対応した関係で Windows Vista と Windows 7 では若干面倒な設定が必要になります。

UAC関連の対応のおかげで管理者権限で動いているゲームにオーバレイ表示ができるようになったようですが・・・

ホーム > VoIP

検索
フィード
メタ情報

Return to page top