WHIP 説明書
目次
1 WHIPとは
WHIPとは、WANI-BBS専用のホスト間通信プロトコル(Wani-bbs Host Interconnection
Protocol)です。WANI-BBSでは、手紙などをホストの間で転送することが可能ですが、その際の手順のことです。
実際のWHIPの転送は、一定時間毎のチェック、もしくは待機時に所定のファンクションキーを押すことによりホストをチェックし、通信する必要があれば電話をかけ、データを転送をします。
転送するタイミングは、曜日と時間を指定することができます。
手紙は、直接接続しているホストでなくとも、バケツリレー方式で配達することができます。
2 WHIP接続するには
3 WHIPで使える命令
system/whipのディレクトリの場所で使える命令は以下の通りです。
- L
登録されているホストの一覧を表示させます。それぞれ再左端についている記号は次の意味があります。(なお、ホストIDが表示されるのはSYSOPのみです。)
- >
自分のホストです。
- (何もなし)
間接接続ホストです。
- *
直接接続ホストです。
- -
直接接続ホストですが、sleep設定されています。送信は行いません。
- !
直接接続ホストですが、前回接続しようとしたときに、Passwordもしくはhost
IDを送出したら回線が切断されました。Passwordとhost IDを確認してください。なお、この記号は一度直接接続ホストの変更状態でW命令を実行すれば消えます。この記号がついている間はこのホストにアクセスはしません。
- @
強制接続の設定されているホストです。直接接続のホストに対して a ホスト名
とするとこの設定をすることができます。
この設定が行われているホストに対しては、次回のWHIP転送のチェックの時に、sleep設定や接続時間設定がどうなっていたとしても接続を試みます。この設定は一回のWHIP転送にだけ有効で、話中以外だった場合は、接続に失敗した場合でもこの設定は解除されます。
- R <ホスト名|ホストID>
ホストが直接接続しており、更にグローバル指定してあるホストの一覧を表示します。
パラメータとしてホスト名もしくはホストIDを与える必要があります。
- W <ホスト名|ホストID>
ホストの設定を変更します。
パラメータとして直接接続ホストのホスト名もしくはホストIDを与える必要があります。
その後の命令は直接接続ホストの設定を参照してください。
- A (ホスト名|ホストID)
直接接続ホストを追加します。
既に間接接続ホストとして登録されているホストを直接接続にしたい場合は、A
ホスト名 としてください。
その後の命令は直接接続ホストの設定を参照してください。
既に直接接続ホストとして登録されているホストに対しては、強制接続をするように設定します。
- D <ホスト名|ホストID>
パラメータとして直接接続ホストのホスト名もしくはホストIDを与える必要があります。
直接接続ホストを指定した場合は、それを間接接続ホストにします。
また、間接接続ホストにした場合は、そのホストを削除します。
- Q
一つ上の階層に移動します。
4 WHIPを使用する場合のモデムについて
WHIPは、回線による文字化けが発生するとうまく手続きを行うことができません。ですから、なるべくMNP等のエラー訂正機能のついているモデムを利用してください。
データの転送にはISHもしくはYmodemを利用しますので、文字化けによってデータが化ける心配はありません。
5 自ホストの設定
whip_name (BBSホスト名)
whip_id (BBSホストID)
whip_comment (BBSホストのコメント)
whip_master (BBSホストの管理者ID)
を設定します。また、
whip_limit (送信する手紙のサイズの制限)
whip_logdir (ログ記録のディレクトリ)
whip_interval (発信のチェックをする時間間隔)
whip_boardlimit (受信する掲示板メッセージの古さの制限)
whip_separate (MNOTESのメッセージ送信単位の設定)
の設定も必要になります。
一般会員に公開する場合は、
system/whip
のディレクトリの許可フラグの設定も行う必要があります。
whip_name ホスト名は、18バイト以内の文字列です。ホスト名は、英字から始まり、英数字もしくは'-'からなる文字列である必要があります。それ以外の記号やスペース等を含めることはできません。手紙を出すときにフルスペルを打たないといけないという理由から、できるだけユニークで短く、タイプしやすいものが良いでしょう(悩んでください)。
なお、uucpを使用しない場合はuucp.defでuucpmailを"No"に設定することにより、他の記号も使用することができます。ただし、その名前でいる限りはuucpは使用できませんので注意してください。
良い例) waninet a-123
whip_id
ホストIDは電話番号を設定します。これは、あなたのホストだけのユニークな番号を保証するものです。番号は、市外局番も含めて指定してください。たとえば、東京都23区内の1234-5678のホストならばIDは0312345678になります。このIDは、ホストが存続する限り変更はしないでください。実際の電話番号とIDが同一である必要はありません。ただし、同一のIDをもつホストが2つ以上あると正常な動作をしません。
whip_comment
ホストのコメントは40バイト以内の文字列です。簡単なホストの説明を書いてください。
whip_master
?@ホスト名 として手紙を出された時に、配送するIDを指定します。通常はシスオペのIDを設定します。
whip_limit
レベル毎に1週間で送ることのできる手紙のサイズの合計の制限を設定します。0を設定すると制限がなくなります。
whip_logdir
WHIPによって通信が行われたログを記録するディレクトリを指定します。デイレクトリがない場合はログの作成を行いません。
whip_interval
WHIPで通信するかどうかのチェックをする間隔を設定します。単位は分です。自動で通信を行わない場合(ファンクションキーを押して送信する場合や、受信だけを行う場合)は0を設定します。10ぐらいを設定すると良いでしょう。
whip_boardlimit
掲示板で転送するデータの経過日数最大を設定します。つまり、7とすれば1週間以上古いものは転送されません。1から30までを設定することができます。
whip_separate
マルチノーツのメッセージを送信するときの最小サイズを指定します。単位はバイトです。2400bpsのモデムなら2000程度が最適でしょう。この場合は、2000バイトに達するまで転送データを作成してから送信します。また、ここを0にすれば、各ノート毎に分割して送信し、100000などにすれば1掲示板のデータを一括して送信することが出来ます。モデムの速度が速い場合はこの数字を大きくすると良いでしょう。
6 直接接続ホストの設定
直接接続ホストとは、直接に電話をかけてデータを転送するホストの事を指します。登録できる直接接続ホストの限度数は60ですが、global指定できるのはそのうち30個までです。
直接ホストを追加するには、system/whipでAと入力します。
直接接続ホストの設定では、以下のコマンドが使用できます。
- N
ホストの名前を設定します。そのホストで実際に設定されている名前を聞いて設定してください。(WHIP.DEFで設定されているもの)
- P
パスワードの設定を行います。このパスワードは接続を行う両者で同じ物を決めて設定してください。
- I
ホストのIDを設定します。これは相手のホストに設定されているIDを聞いて設定してください。(WHIP.DEFで設定されているもの)
- C
アクセスコマンドの設定です。相手ホストに電話をかけるためにモデムに送るコマンドを設定します。(例:ATD12345678)
- U
アップロードプロトコルの設定です。データを送るプロトコルを指します。MNPなどのエラーフリーモデムを使用する場合は3(minimum-ISH)、データ化けが発生する可能性がある場合は2(ISH-SJIS)にすると良いでしょう。
また、WANI-BBS version 1.26からはYmodemも使えるようになりました。接続相手がWANI-BBS
version 1.26以上であることが確認できれば、Ymodemのプロトコルを使用することもできます。
- G
グローバル接続状態の設定です。他のホストから送られてきたデータをこのホストに転送するかどうかを設定します。
- T
接続間隔の設定です。前回接続を行って正常にデータを送受信してから何時間の後に再度接続するかという設定です。
- R
電話をかけたが話中だった場合に、再度電話をかけるまでの間隔です。単位は分です。なお、whip_intervalより小さい値を設定してもwhip_intervalの値と同義になります。
- O
電話をかける時間帯、曜日を指定します。かけない時間、曜日は「-」を、かける時間、曜日は「o」もしくは「+」を指定します。深夜に転送するように設定すると良いでしょう。
- S
直接データ転送をしないホストに対してはこの設定をします。直接接続されていないものとして動作します。直接接続を解除するのと同等の効果があります(ただし、あとで簡単に元に戻すことが出来ます)。
転送されるべきデータがないかどうか確認してからこの設定を行うようにしてください。
- V
このホストに直接手紙を送ることができる会員の最低レベルを設定します。
- D
ボードを受信するためにこのホストが接続してきたときに、このホストがダウンロードすることのできる掲示板・ライブラリを制限するためのレベルを設定します。逆に言えば、掲示板・ライブラリ転送ではレベルでしか制限することができません。
- X
転送の設定を行います。この命令については、以下の「転送の変更状態」を参照してください。
- L
現在の設定を表示させます。
- W
現在の設定で終了します。
- Q
変更状態に入った時点の設定に戻して終了します。
- ?
現在使用できる命令の一覧を表示します。
7 転送の変更状態
ここでは以下の命令が使用できます。
- B
掲示板転送の設定を変更します。この命令を入力すると、掲示板転送の変更状態に移行します。
- H
ホストデータ転送の設定を変更します。この命令を入力すると、ホストデータ転送の変更状態に移行します。
- W Q
この命令は直接接続ホストの設定に戻ります。WでもQでも同じ役割を果たします。
- ?
現在使用できる命令の一覧を表示します。
7.1 掲示板転送の変更状態
ここでは以下の命令が使用できます。
- 番号
指定した番号の掲示板の転送を設定します。掲示板は、自ホストの掲示板に相手ホストの掲示板を対応させることによって設定します。相手ホストの掲示板構成をよく調べ、ボード名をフルスペルで指定してください。
- C
掲示板を受信するために電話をかけるかどうかを設定します。この設定がOFFだと、手紙の転送の場合のついで、もしくはむこうから電話がかかってきた場合にしか転送しません。
- L
現在の設定の一覧を表示します。
- W
現在の設定で終了します。
- Q
掲示板転送の変更状態では、Q命令もW命令と同様の動作をします。設定を元に戻したい場合は直接接続ホスト変更状態に戻ってからQ命令を使用してください。
- ?
現在使用できる命令の一覧を表示します。
7.2 ホストデータ転送の変更状態
8 間接接続ホストについて
間接接続ホストの設定を行うことはできません。間接ホストのデータは、自動的な転送によって常に更新されます。
なお、間接接続ホストの登録限度数は200となっています。
9 手紙の転送について
9.1 手紙の転送の経路
A―B―C―D
\ /
―E―
というように接続され、ホストが登録されている順番がA〜Eの順だとします。そして、AからDに手紙を送ると、A−B−C−DよりはA−E−Dの方が経路が一つ少ないため、結果A−E−Dを選択し、Eに手紙を送信します。
もしもここでCがなければ、A−B−DもA−E−Dも同じ経路数ですから、この場合は登録されている順番が先であるBが選択され、Bに手紙を送信することになります。
9.2 WHIP管理者への手紙
?@ホスト名
とします。たとえば、waninetのWHIP管理者に出すのであれば ?@waninet
です。
このようにして送られた手紙は、到着したときに whip.defに設定してある
whip_master
のIDに置き換えられ、配送されます。(ここで、ホスト名の代わりにホストIDを指定することもできます。)
10 掲示板の転送について
10.1 メッセージがエディットされた場合
通常掲示板、マルチノーツともに、メッセージが書込まれ、それが転送されてから書いた本人がそのメッセージを修正すると、それも転送されます。この件について、考えられる解決策は修正を禁止することですが、メリット・デメリットを衡量した結果、現在の仕様におちついています。
10.2 マルチノーツのノートの転送
通常、マルチノーツのノートは、そのノートが作成されたホスト、ボード番号、ノート番号の3つの情報をチェックし、すでにそのノートが作成されていれば、そのノートにページを追加します。作成されていない場合は、新しくノートを作成します。
タイトルや、ノートの情報(closedや、author write only)は、ページの追加時に常に更新されます。
なお、ノートにdeleteマークをつけておくと、そのノートのページが転送されてきても追加せずに捨てます。2度deleteして、ファイルも削除してしまうと、新しくノートを作成します。ディスクの容量が足りなくなった場合などに利用するとよいでしょう。
11 エラーメッセージ
WHIPを行った記録はWHIPディレクトリの中のWLOG<年><月>のファイルに記録されます。1995年8月の記録はWLOG9508というファイルにされます。
WHIPを行う際のエラーはこのログファイルと、systemのエラーにも記録されます。WHIPのエラーメッセージは以下の通りです。
- reading 'wlink.dat'
接続相手のホストの情報をディスクから読み出すことができませんでした。
- receiving sequence
ボードの日付データ(いつからのデータを送信するか)の受信に失敗しました(おそらく文字化けがありました)。
- host ID
登録されていないホストIDのホストがアクセスしてきました。
- protocol
不正なプロトコルが指定されました。
- WHIP level
サポートしていないWHIP levelが指定されました。
- receiving mail
手紙の受信を失敗しました。
- receiving board message
掲示板の受信を失敗しました。
- receiving WHIP data
WHIP局のデータの受信を失敗しました。
- sending mail
手紙の送信を失敗しました。
- sending board message
掲示板の送信を失敗しました。
- sending WHIP data
WHIP局のデータの送信を失敗しました。
- calling (modem check)
モデムが確認できなかったため発呼できませんでした。
- calling (by abort)
WHIP中にキーボードから中断されました。。
- calling (busy)
相手が話し中でした。
- calling (timeout)
相手が応答しませんでした。
- calling (nocarrier)
モデムがNO CARRIERを返しました。
- waiting 'login:'
接続しましたが、login:が来ませんでした。
- waiting 'Password:'
login:に局名を答えましたが、Password:が来ませんでした。
- waiting [SEQUENCE]
[SEQUENCE]が来ませんでした。相手に自局が正しく登録されていない可能性があります。
- waiting [READY]
[READY]が来ませんでした。送ったSEQUENCEが不正であった可能性があります。
- waiting kind of data
送信要求(WHIP局情報/メール/ボード)が来ませんでした。相手局側でなにか問題が発生したかもしれません。