SofChat1.33d 改造版 · UTF-8 / AUTH3

SofChat の使い方

名前を入力して入室し、上の欄からひとこと。昔ながらの操作を基本に、日本語・絵文字、登録とパスワード、掲示板、管理用コマンドを案内します。

まずは、この3つ

  1. 名前を入力して「入室」。登録済みなら Password 欄にも入力します。
  2. 上の入力欄に文章を書いて「発言」。新しい発言は下の表示欄の上側に並びます。
  3. 終わるときは「退室」。ほかの参加者にも退室が伝わります。

基本操作

入室する

トップ画面の「名前」にハンドル名を入力します。「アドレス」は任意で、メールアドレスやWebサイトのURLを記入できます。ほかの参加者に表示される情報なので、公開してよいものを使ってください。

未登録の名前で Password を空欄にするとゲストとして入室できます。名前を登録して使い続けたい場合は、初回から Password を設定するか、入室後に登録します。登録済みの名前でパスワードを省略した場合は、パスワード入力画面に進みます。

「リロード」は発言表示を自動更新する間隔です。初期値は20秒です。「オートクリア」を選ぶと送信後に入力欄が空になります。表示される項目や選択状態は、利用環境・設定によって異なります。

発言・再編集・退室

入室後は上側が入力欄、下側が発言表示欄です。「発言」を押して投稿します。オートクリア使用時の「再編集」は直前に送った文章を入力欄に戻す機能です。送信済みの発言を直接書き換える機能ではありません。取り消すには /cancel を使い、その後に修正版を投稿します。

終了するときは「退室」を押してください。画面を閉じたままにすると、更新が止まってから約2分で参加者表示から外れます。10分以上発言がない人には (Zzz) が付きます。

スマートフォンをロックしたり別のアプリへ切り替えたりすると、ブラウザーの自動更新が止まることがあります。戻っても更新されないときはページを読み直し、必要なら再入室してください。参加者表示から外れることと、認証用Cookieの有効期限が切れることは別です。

このチャットには独立したROM専用モードはありません。履歴は新しいものから表示され、古い発言から順に上書きされます。保持件数はチャットが最大1,000件、掲示板が最大500件です。通常画面に一度に表示される件数は、表示設定や自分の発言数によって変わります。

名前とパスワード

ゲストと登録ユーザー

ゲストの名前は、有効なログイン状態がある間、その利用者に予約されます。同じIPアドレスでも別のブラウザーから同じゲスト名を使うことはできません。退室や期限切れの後は再利用されるため、同じ名前を続けて使うならパスワードを設定してください。

登録済みユーザーは、毎回名前とそのパスワードでログインします。パスワードだけで名前を引き継いだり、同じパスワードで別名の利用者になったりすることはできません。Cookieを受け入れる設定で利用してください。同じブラウザーの複数タブは同じログイン状態を共有します。

登録する・パスワードを変更する

  1. 入室後、上の入力フレームの 「Password / register」 を開きます。
  2. 登録済みなら Current に現在のパスワードを入力します。ゲストの初回登録では、この欄はありません。
  3. New に新しいパスワードを入力し、Change を押します。

変更すると、同じアカウントのほかのログイン状態は解除されます。ゲスト名を登録できるのは、そのゲストとしてログインしているブラウザーです。入室制限中は新規登録ができません。

入力できる長さ
項目制限
名前UTF-8で20バイトまで。パスワードの長さは含みません。半角英数字だけなら20文字、一般的な日本語だけなら6文字が目安です。
新しいパスワード標準で6文字以上、UTF-8で128バイトまで。最低文字数は管理者の設定によって異なるため、New 欄に表示される値を確認してください。
アドレスUTF-8で80バイトまで。
チャット・掲示板の本文1投稿につきUTF-8で1,023バイトまで。HTMLタグやリンク先URLも含みます。

パスワードの「文字数」はUnicodeコードポイント数です。結合文字や家族などの組み合わせ絵文字は、見た目が1文字でも複数として数えます。名前には /、<、> や制御文字を使わないでください。

名前とパスワードは専用の欄に分けて入力してください。旧版の「名前/パスワード」という入力は本ページでは使いません。パスワードを忘れた場合は管理者に連絡してください。/reset ではパスワードを消去・再設定できません。

文字・絵文字・リンク

日本語と絵文字

名前・本文にUTF-8の日本語やUnicode絵文字を使えます。表示できる絵文字や見た目は端末のフォントによって異なります。一般的な日本語1字は3バイト、多くの単体絵文字は4バイトです。名前なら4バイトの絵文字は5個までですが、組み合わせ絵文字はさらに長くなります。

長さの上限を超えて送れない場合は文章を短くするか、複数の投稿に分けてください。旧携帯電話用の独自絵文字コードや、Shift_JIS・EUC-JPへの文字コード切替は使いません。

簡単なHTMLタグ

チャットと掲示板の本文では、許可されたHTMLタグで文字を飾れます。例えば、次のように入力します。

<b>太字</b>
<i>斜体</i>
<font color="blue">青い文字</font>
1行目<br>2行目

閉じ忘れたタグは可能な範囲で補われますが、閉じタグも書くのが確実です。スクリプトやイベント属性など、許可されていないタグ・属性はそのまま実行されません。HTMLの例を文字として載せたい場合は、< を &lt;、> を &gt; と書きます。

リンクを貼る チャット・掲示板共通

a href でリンク先と表示名を指定します。下の接続先は例なので、実際のURLに置き換えてください。

<a href="http://example.com/">HTTPのサイト</a>
<a href="https://example.com/">HTTPSのサイト</a>
<a href="telnet://bbs.example.com:23/">Telnetで接続</a>
<a href="ssh://user@example.com:22">SSHで接続</a>

メール用の mailto: と相対リンクも利用できます。Telnet・SSHは :// と接続先を含む形にします。javascript:、data:、file: などの未許可形式はリンクとして出力されません。

Telnet・SSHのリンクは、閲覧している端末の対応アプリで開きます。アプリとURLの関連付けがないと接続は始まりません。SofChatのサーバーが接続コマンドを実行する機能ではありません。

掲示板

入室後に「掲示板」を押すと、別のタブまたはウィンドウで開きます。チャットから退出しても後で読める話題や連絡を書き残す場所です。閲覧には入室が必要で、書き込みには権限レベル1以上が必要です。

  • 投稿:本文を入力して「書き込む」を押します。絵文字・書式タグ・リンクはチャットと同じように使えます。
  • シークレット:選択した記事は、掲示板への書き込み権限がある人(レベル1以上)に表示されます。特定の相手だけに送る機能ではありません。
  • 未読:登録ユーザーには、前回掲示板を読んだ時刻を基準に未読件数や [New] が表示されます。
  • 古い記事:Old Topics >> で以前の記事へ進みます。

掲示板で使うコマンド

掲示板の本文欄に入力して「書き込む」を押します。チャットの管理コマンドはチャット側の発言欄で使ってください。

/cancel
レベル1以上
自分の最新の記事を1件取り消し、その本文を入力欄へ戻します。修正後にもう一度「書き込む」を押すと再投稿できます。
/delete 記事ID
レベル2以上
指定した記事を削除し、本文を入力欄へ戻します。通常は記事の「削除」ボタンを使います。IDは表示順の番号ではなく内部の番号です。
現行版では、本人の記事に「削除」ボタンが表示されても、任意の記事を削除する処理にはレベル2以上が必要です。レベル1の利用者は、最新の自分の記事に /cancel を使えます。

コマンドの入力方法

チャットの発言欄の先頭から、半角の / に続けて入力し、「発言」を押します。コマンド名と引数は半角スペースで区切ります。先頭に説明文や空白を付けないでください。

/color blue black
/refresh 20

<color blue black> のような旧来の山括弧形式も使えます。本ページは入力しやすい / 形式で統一しています。日本語で書いた「名前」「本文」「件数」などは、実際の値に置き換えてください。

対象の名前は完全一致で指定します。引用符で名前を囲む書式はないため、空白を含む名前は名前指定コマンドの対象にしにくくなります。メッセージやタイトル以外の引数には余分な空白・引用符を付けないでください。

一般コマンド レベル0以上

/who
参加者の情報を詳しく表示します。見える情報は、自分の権限によって異なります。
/color 名前色 本文色
自分の名前と発言本文の色を変更します。名前色だけの指定もできます。例:/color blue black / 本文色だけ:/color - green

/color だけで自分の色指定を解除します。/color =名前 で別の利用者の色設定をコピーできます。背景に近い色など、受け付けない指定もあります。

/cancel
自分の最新の発言を1件取り消します。繰り返すと、その前の発言を順に取り消せます。
/refresh 秒数
自動更新間隔を0〜120秒で指定します。0 は自動更新を停止します。更新が約2分止まると参加者表示から外れるため、通常は0以外を使います。例:/refresh 20
/alert 名前 本文
相手へ個別の通知を送ります。相手が通知を拒否している場合は届きません。管理者アカウント宛てには送れません。例:/alert hanako こんにちは
/refuse
/refuse off
個別通知を拒否します。off を付けると再び受け取ります。
/skiptitle
/skiptitle off
自分の発言表示画面のタイトル部分を省略します。off で元に戻します。
/hr
/hr off
発言の区切り線を表示します。off で解除します。
/reset
自分のアカウントのログイン状態をすべて解除します。登録済みのパスワードは消えません。通常の終了には「退室」を使ってください。

権限レベル

パスワード登録の有無と、権限レベルは別のものです。パスワードを登録しただけで掲示板への書き込み権限が付くわけではありません。必要な権限は管理者や権限を持つ利用者に依頼してください。

レベル主な操作
0チャットへの参加、一般コマンド、公開されている掲示板記事の閲覧。
1上記に加え、掲示板への書き込み・シークレット記事の閲覧、履歴表示件数・トピックの変更、権限付与。
2上記に加え、発言・記事の削除、入室制限、接続元の拒否、対象者の権限・ログイン状態の解除。
3上記に加え、/set、/export、/import。

管理者アカウントにはレベル3が割り当てられます。通常ユーザーをレベル3にしても管理者アカウントそのものにはなりません。画面内の全体設定フォームなど、管理者本人のログインが必要な操作もあります。

レベル1以上のコマンド

/log 件数
発言の表示上限を1〜1,000件で設定します。実際に表示される件数は、自分の発言数に基づく範囲や、保持されている履歴によって変わります。例:/log 100
/permit 名前
登録ユーザーの権限を1段階上げます。自分のレベルを超える権限は与えられません。管理者がレベル0の利用者に1回実行するとレベル1、もう1回でレベル2になります。

ゲストは現在参加中であることが必要で、与えられる権限はレベル1です。ゲストが退室・期限切れになった後に同じ名前を取得した別の利用者へ、権限は引き継がれません。

/topic 本文
部屋のトピックを設定します。案内や共通の話題に使います。/topic だけで本文を空にできます。例:/topic 次回は土曜の21時から
旧表示用の補助コマンド

/slog 件数 は1〜1,000件の履歴を別画面に出すための旧機能です。表示方式・ブラウザーのポップアップ制限などに依存します。通常の件数調整には /log を使ってください。

/crash 名前 と /uncrash 名前 も残っています。前者は対象者のフレームなし表示・旧携帯向け表示に大量の改行を出すフラグを立て、後者は解除します。レベル1では自分より下位の相手、レベル2以上では同等以上の相手も対象にできます。現在の通常運用に必要な機能ではありません。

レベル2以上のコマンド

/cancel 名前
/cancel 名前 件数
指定した人の発言を新しいものから取り消します。件数を省略すると1件です。件数は正の整数で指定します。例:/cancel hanako 3
/delete
/delete 発言ID
引数なしで送ると、発言に削除用ボタンを付けて表示します。IDを指定すると該当発言を削除します。IDは内部の位置番号で、画面上の何行目という意味ではありません。通常はボタンから対象を選んでください。
/reset 名前
対象者の権限をレベル0に戻し、その人のログイン状態をすべて解除します。パスワードは消去しません。管理者本人以外は、自分と同じかそれ以上の権限の相手には実行できません。管理者アカウントは対象外です。
/deny 名前
/deny IPv4アドレス
指定した人の接続元、または指定IPv4の接続元を拒否します。省略時は1時間です。最後に時間を付けると変更できます(0〜8,760時間)。例:/deny hanako 1 / /deny 192.0.2.45 2

通常は1以上を指定します。名前指定ではその人の在室状態も退室扱いにします。

/undeny 名前
/undeny IPv4アドレス
登録した拒否を解除します。登録時のIPv4アドレスを指定するのが確実です。名前指定は現在のユーザー情報にある接続元を参照します。
/lock 数値
入室条件を変更します。数値と対象は下の表を参照してください。登録者だけにする:/lock 1 / 公開に戻す:/lock 0
/deny の対象範囲:現行実装はIPv4の /24(先頭24ビットが同じ範囲)で照合します。例えば 192.0.2.45 の拒否は 192.0.2.* に影響します。1人だけを確実に拒否する仕組みではなく、IPv6の個別拒否にも対応していません。管理者とレベル2以上の利用者はこの接続元拒否の対象外です。
/lock の設定値
値入室条件
0公開。ゲスト参加と新規登録が可能。
1パスワード登録済みの利用者に限定。
2権限レベル1以上の利用者に限定。新規登録は停止。
3新たな入室操作を停止し、現在の参加者の利用を継続。レベル1以上という条件も適用されます。

/lock 3 は、管理者の入室フォームからの入り直しにも影響します。ログイン済みの管理者の画面を開いたままにし、退室する前に /lock 0 などへ戻してください。

ページの先頭へ

管理設定・保存と読込

管理者として入室する

インストール時に設定した管理者名と管理者パスワードでログインします。旧版の /su 管理者名/パスワード は無効です。発言欄に管理者パスワードを入力しないでください。

管理者の入力フレームには、タイトル・各種の色・リンクなどを変更するフォームも表示されます。「変更」で送信して保存し、「元に戻す」で未送信の編集を取り消します。「初期化」は下記の全体リセットなので、設定の取り消しには使いません。

表示設定 レベル3

コマンド変更する項目・例
/set title 本文チャットのタイトル。
/set title みんなの談話室
/set titleimage URLタイトル画像。
/set titleimage https://example.com/title.png
/set bgcolor 色背景色。
/set bgcolor ivory
/set bgimage URL背景画像。
/set bgimage https://example.com/background.png
/set txcolor 色基本の文字色。
/set txcolor black

値を省略した /set title はタイトルを標準値に戻します。ほかの4項目は、値の省略でその指定を解除します。例えば /set bgimage は背景画像を解除します。画像にはHTTP・HTTPSなどの画像用に許可されたURLを使います。本文リンク用に追加したTelnet・SSHは画像には使えません。

設定の変更は保存対象になります。変更直後に古い表示が残る場合は、対象の画面を読み直してください。

互換保存ファイルの書き出し・読み込み レベル3

/export
現在のユーザー表示情報・掲示板・チャット履歴を、設定済みの互換保存ファイルへ書き出します。ブラウザーへファイルをダウンロードする操作ではありません。
/import
設定済みの互換保存ファイルからユーザー表示情報・掲示板・チャット履歴を読み込みます。現在の内容を変更する保守操作なので、通常の再起動や表示更新のためには使いません。

AUTH3ではSQLiteが認証・権限・復旧用の正本です。/export は認証DB全体のバックアップではなく、/import でパスワードや古い権限を復元することもできません。

この2コマンドの対象に設定用の .ini は含まれません。タイトル・色などの設定は、変更時に別途保存されます。バックアップ・復元は、配布物の RECOVERY-ja.txt と AUTHENTICATION-ja.txt の手順を確認してください。

保存先の例:SHM_KEY が1001の場合

標準のデータディレクトリが /var/lib/sofchat の場合の例です。配置時に別の保存先を指定したサイトでは、その設定が優先されます。

/var/lib/sofchat/
  1001.sofchat.utf8.ini
  1001.sofchat.utf8.bbs
  1001.sofchat.utf8.txt
  1001.auth/
    1001.auth.sqlite3
    1001.sofchat.utf8.v2.usr
    1001.migration.json

これらはサーバー内の非公開ファイルです。使い方ページと一緒に公開領域へ置かないでください。通常の状態復旧に共有メモリやセマフォを手動で削除する必要はありません。

全員への通知・全体リセット

管理者本人は /alert * 本文 で全員宛ての通知を送れます。通知拒否中の人には届きません。

管理画面の全体リセットは、在室情報と認証上のユーザー枠の関連付けをリセットする操作です。保存済みのチャット・掲示板・設定は維持します。発言欄の /reset(自分のログイン解除)や /reset 名前(対象者の降格とログイン解除)とは別の操作です。

困ったときは

登録した名前で入れない

名前とパスワードの組み合わせを確認してください。パスワードが空欄なら追加の入力画面へ進みます。ゲスト名は別のブラウザーで使用中のこともあります。部屋が /lock で制限されている場合は、管理者に確認してください。

「Invalid or expired form」「Session expired」と出る

古い入力画面やログイン期限切れの可能性があります。入力中の文章を手元に控えてから、トップ画面を開き直し、再ログインしてください。パスワード変更や同じブラウザーでの別ログイン後は、開いたままのほかのタブも読み直します。

ログインを何度も試したら拒否された

認証試行回数の制限があります。連続した送信を止めて少し待ち、正しい情報で試してください。共有回線などでは、同じ接続元の試行も影響します。

コマンドが使えない・文字のまま表示される

先頭の半角スラッシュ、半角スペース、コマンド名、引数と権限を確認します。チャット用コマンドはチャットの発言欄へ、掲示板の取り消し・削除は掲示板の本文欄へ入力してください。

掲示板に書き込み欄がない

権限レベル0では閲覧だけです。管理者などに掲示板の利用許可を依頼してください。パスワード登録だけでは、書き込み権限は付きません。

絵文字が四角になる・SSHやTelnetのリンクが開かない

絵文字は端末のフォント、外部接続リンクは対応アプリとURLの関連付けを確認してください。リンクとして表示できることと、端末で接続できることは別です。

このページについて

配布元の「遊び方」「設置方法・カスタマイズ」を参考に、改造版 SofChat 1.33d UTF-8 / AUTH3 links1 のソースと同梱文書に合わせて説明を書き直した非公式の利用案内です。パスワード、権限、保存・復旧などは原版と異なります。

原版 SofChat:Y.YONEYAMA氏。確認日:2026年10月27日。サイトごとの設定や今後の更新により、画面・制限・利用できる操作が異なる場合があります。

ページの先頭へ