Corporate Profile

業務に合わせてシステムを設計・実装する。

株式会社NSKは、Webサイト、業務システム、ネットワーク、PBX、AI連携、運用保守を扱います。 要件整理から実装、移行、保守まで、実際の運用に合わせて対応します。

ジムカーナ走行中の紫と黄色の競技車両
Field Tested 競技現場で得た運用視点を、システム設計やプロダクト検証に反映しています。

Company Profile

会社概要

Corporate Information

株式会社NSK

所在地
〒558-0055
大阪府大阪市住吉区万代5丁目13番19号
5-13-19,Mandai Sumiyoshi-ku Osaka-City Osaka Japan.
代表取締役
西川 佳廣
インボイス番号
T3120001244903
創業
2022年4月
事業内容
  • システムコンサルティング業務
  • モータースポーツ活動
  • コンピュータ・ソフトウェア及びシステムに関する事業
  • 通訳・翻訳業務及びそれに関する企画運営
  • 広告宣伝に関する企画・立案・運営及び代理業務
  • その他 関連する業務

Works

制作物・開発実績

承諾済みの顧客案件と自社制作物を掲載しています。各項目では、制作内容と公開可能な運用上のポイントに絞って説明します。

エアロテックジャパン公式サイトのトップページスクリーンショット

Client Work

エアロテックジャパン様向けシステム支援

既存サイトと業務運用を見直し、商品情報、ニュース、固定ページ、問い合わせ、資料更新を管理する軽量CMSへ移行した案件です。

  • 旧サイトの商品データをUTF-8のMariaDBへ移行し、商品128件、画像1,252点、仕様情報919件規模の情報をWeb管理しやすい形へ整理しました。
  • 日本語/英語の項目を持つ商品・カテゴリ・ニュース・固定ページをCMSで管理し、閲覧言語に応じた表示や商品ページからの問い合わせ導線を整えています。
  • 商品画像はドラッグ&ドロップアップロード、メイン画像指定、並び替え、差し替え、削除に対応し、GDで大判/サムネイルを自動生成します。
  • 問い合わせフォームはCSRF、honeypot、送信時間チェックを入れ、問い合わせ履歴を管理側で追えるようにしています。
  • 価格表PDFと営業カレンダーも管理対象です。PDFからブランド名・タイトル・公開日候補を抽出するAI補助、イベント名の英訳AI補助を組み込み、入力作業を減らしています。
  • 旧URLから新URLへのリダイレクト、旧画像資産の配信、旧ページの隔離表示を用意し、既存資産を残したまま段階移行できる構成にしています。
  • CMS
  • MariaDB
  • AI入力補助
  • 多言語
  • 運用支援
広田デンタルクリニック公式サイトのトップページスクリーンショット

Client Work

広田デンタルクリニック様向けWeb/業務システム支援

クリニック公式サイト、初診予約/問い合わせフォーム、メール送信、問い合わせ管理、休診日管理をPHP/MariaDBで構成した案件です。

  • 公式サイトのトップページに、診療案内、アクセス、問い合わせ、初診予約の導線を配置し、スマートフォンからフォームへ進みやすい構成にしています。
  • 予約/問い合わせフォームはCSRF、honeypot、必須入力、メールアドレス検証、動的な入力切替、アプリ内ブラウザやCookie設定への案内を備えています。
  • 送信内容はまずMariaDBへ保存し、その後PHPMailerで医院通知と患者向け自動返信を送るため、メール未着やSMTP障害があっても管理画面から内容を確認できます。
  • SMTPは587 STARTTLS、465 SMTPS、25 SMTPを順に試し、送信プロファイル、送信結果、エラー内容を保存して、未着時の調査と再対応につなげます。
  • From/Senderを医院ドメインに固定し、Reply-Toへ利用者のメールアドレスを設定することで、SPF/DMARCに配慮した返信導線にしています。
  • 管理画面では問い合わせの検索、並び替え、詳細確認、対応ステータス、単日/期間の休診日登録を操作できます。休診日は予約希望日の選択不可日と公開休診案内へ反映されます。
  • Clinic
  • Reservation
  • PHPMailer
  • MariaDB
  • Admin UI
近畿ジムカーナエントリーシステムの競技会一覧スクリーンショット

Motorsport

近畿ジムカーナエントリーシステム

近畿地区のジムカーナ/ダートラ/オートテスト等の競技会情報、エントリー受付、参加者・主催側の運用をWebで扱うオンラインエントリー基盤です。

  • 公開競技会一覧では、開催年、競技会種別、形式、キーワードで絞り込み、受付中/受付前/受付終了/満員などの状態を確認できます。
  • エントラント、クラブ、JMRC管理者のロールを分け、各立場の操作範囲を分離しています。公開ページからはサインイン後のエントリー導線へ接続します。
  • エントリーは下書き、申請完了、受理、キャンセルなどの状態を持ち、過去エントリーの複製や下書き保存により、参加者の再入力負担を下げます。
  • 競技会ごとに受付期間、定員、会場、主催者、資料PDF、参加費を管理し、申込完了時のメール通知や受付後の資料ダウンロード導線を用意しています。
  • 管理側では、イベント管理、参加者確認、受理、メールテンプレート、自動送信、問い合わせ、シリーズランキング/リザルト系の整理に対応しています。
  • セッション保存先をアプリ配下に持たせ、Plesk/PHP環境での長時間利用やスマートフォン表示に配慮しています。
  • Entry
  • Gymkhana
  • Role Management
  • Mail
  • Operations
全日本ジムカーナエントリーシステムの競技会一覧スクリーンショット

Motorsport

全日本ジムカーナエントリーシステム

全日本ジムカーナ選手権の申込を、Excel/紙中心の運用からWebフォーム、Excel入力補助、入金・受理・主催者管理へ移行するPHP/MariaDBのエントリー基盤です。

  • 従来の参加申込書、車両申告書、出場選手カード、参加申込明細書、練習会申込書の入力項目をWebフォームへ置き換える方針で設計しています。
  • 過去Excelのアップロードは正式申込ではなく入力補助として扱い、Python解析とAI補助解析を組み合わせ、プロフィール、参加申込、車両申告、選手カードの入力候補へ反映します。
  • エントラント登録、主催チーム登録、Googleサインイン、メール認証、30日セッション、マイページ、直近エントリーのコピー開始に対応しています。
  • 競技会一覧では受付状況、申込期間、定員、現在台数、特別規則書リンクを公開し、参加者が申込可能な大会を判断しやすくしています。
  • イベントごとにクラス、料金、公開練習/金曜練習、サービス員、資料公開を管理し、固定値をコードへ埋め込まず競技会単位で設定できる方針です。
  • 管理側では、JAF車両、ランキング、リザルト、主催者、入金確認、受理、ゼッケン、資料出力などを領域ごとに分け、公開情報と非公開情報を分離しています。
  • Entry
  • Excel Assist
  • AI補助解析
  • JAF
  • Organizer

AI / PBX

IZUMO-PBX連動のAI電話エージェント

Asterisk/PBX配下の着信にAIで一次応対し、問い合わせ回答、要件整理、RAG検索、通話履歴、保留転送を扱う電話応対基盤です。

  • バックエンドはPython 3.12 + FastAPI、管理画面はReact + TypeScript + Vite + Bootstrap、DBはMariaDB、キュー/キャッシュ準備にRedisを採用しています。
  • 常駐SIPクライアントとしてAsteriskへREGISTERし、INVITE/SDP/RTPを直接処理して、OpenAI Realtime WebSocketへ音声を中継する構成にしています。
  • Realtime音声会話と、STT -> LLM -> TTSの非Realtimeフォールバックを用意し、割り込み会話や障害時の経路を検証しています。
  • RAGは回答根拠の検索に限定し、予約作成、転送、ブロックなどの状態変更はAction層と監査ログで扱う方針にしています。
  • 手動テキスト、ファイル、Web URL、Google Docs/Sheets共有リンクを取り込み、検索テスト、通話中検索、RAG利用情報を含む通話履歴表示に対応しています。
  • IZUMO-PBXのパーク保留方式を前提に、SIP REFER、BLFによる空きパーク番号確認、担当者内線への自動音声通知、担当者不可時のAI再接続までを検証対象にしています。
  • PBX
  • AI Agent
  • FastAPI
  • Realtime
  • RAG
  • Call History

AI / Messaging

LINE AI Agent

LINE公式アカウントのWebhookを受け、会話、添付、実行ジョブをDBに保存し、常駐ワーカーがCodexを実行してLINEへ返信するAIエージェント基盤です。

  • 公開サーバ側はPHPのWebhook入口とMariaDB/MySQL互換DBで構成し、Codex CLIはワーカー側で実行するため、公開サーバへAI実行環境を常駐させない分離構成です。
  • LINEの署名検証、1対1会話、グループ/ルーム内のメンションや明示呼び出し、プロジェクト別作業ディレクトリ選択、現状報告に対応します。
  • 画像、動画、音声、ファイル添付をLINE Content APIから取得し、Webルート外へ保存します。画像はCodex CLIへ渡せる設計で、実行ファイル、スクリプト、マクロ付きOffice、アーカイブ、大容量ファイルは拒否します。
  • 会話履歴とAI回答をDBへ保存し、FULLTEXT検索とLIKEフォールバックで過去知識を参照できるようにしています。
  • 重い処理や添付を含む依頼は即時応答で受け付け、常駐ワーカーがジョブ取得、Codex実行、完了通知、LINE push message送信を担います。
  • LINEチャネルシークレット、アクセストークン、DBパスワード、ワーカートークン、添付ファイル実体、実行ログは公開対象外として扱います。
  • LINE
  • AI Agent
  • Webhook
  • PHP
  • MariaDB
  • Codex CLI

Automation

Chatworkの未読を一括既読

大量のChatwork未読を、利用者が任意のタイミングで確認してから一括既読にするWindows向け小規模業務自動化ツールです。

  • Windows 10/11とWindows PowerShell 5.1だけで動作し、追加の.NET SDK、Python、Node.jsを必要としません。
  • 起動すると未読ルーム数、未読メッセージ数、自分宛て未読数を表示し、「はい」を選んだ場合だけ既読化します。「いいえ」では何も変更しません。
  • Chatwork APIキーは現在のWindowsユーザー向けにDPAPIで暗号化して保存し、設定時にはChatwork APIへ接続して有効性を確認します。
  • Chatwork APIに全チャット一括既読の専用エンドポイントはないため、`GET /my/status`、`GET /rooms`、`messages?force=1`、`messages/read` を順に使って未読ルームだけ処理します。
  • 2025年7月以降のChatwork API仕様変更に合わせ、POST/PUT系パラメーターはクエリではなく `application/x-www-form-urlencoded` のボディで送信します。
  • 自動常駐やWindows起動時の自動実行は行わず、重要な未読も既読になるリスクを確認ダイアログで明示する設計です。
  • Chatwork
  • Windows
  • PowerShell
  • DPAPI
  • Automation
GASMEET管理画面のシステム設定スクリーンショット

Meeting Booking

GASMEET オンラインミーティング予約システム

Googleカレンダーの空き状況を参照し、Jitsi Meetの参加URLを自動発行するPHP製のオンラインミーティング予約システムです。

  • 予約フォームで氏名、所属、電話番号、メールアドレス、希望日時を受け付け、平日10:00から18:00までの1時間枠を候補として提示します。
  • Google Calendar APIで対象カレンダーの予定と日本の祝日を参照し、既存予定と重複しない空き枠を算出します。
  • 予約確定時にGoogleカレンダーへ予定を登録し、Jitsi Meetの参加URLを自動生成して、申込者宛メールと管理者宛通知メールをSMTPで送信します。
  • 管理画面では予約一覧、予約削除、連携しているGoogleカレンダー予定の削除、ページタイトル、フォーム項目名、メール本文、SMTP、Google連携設定を確認・設定できます。
  • 初回セットアップ画面でDB接続情報、管理者パスワード、Jitsi URL、管理者メール、SMTP設定を保存し、小規模PHPアプリとして導入できるようにしています。
  • config.local.php、logs、.env、credentials.json、DB/SMTP/Googleサービスアカウント情報は公開対象外として扱います。
  • PHP
  • Google Calendar API
  • Jitsi Meet
  • SMTP
  • Admin UI
Cool Mail Listの宛先管理画面スクリーンショット

Mail Delivery

Cool Mail List メール配信管理システム

PHP/MariaDBとPHPMailerで構築するメール配信管理システムです。宛先管理、SMTP送信、配信キュー、購読停止、バウンス処理、AI文面提案を備えています。

  • LaravelやComposerに依存せず、PHPMailerを同梱してSMTP送信を行うPHP/MariaDB構成です。
  • メールアドレス/パスワード認証、管理者承認前提の利用者登録、ロール別メニュー表示、URL直アクセス制限を備えています。
  • 宛先の登録、検索、ステータス管理、CSV/TSV/テキストの宛先インポートに対応し、複数組織のデータ分離も想定しています。
  • 送信者アドレスとSMTP設定を紐付け、SMTPパスワードやOpenAI APIキーはAPP_KEYを使って暗号化保存する方針です。
  • テキスト/HTMLメールテンプレート、テンプレート版保存と差分比較、PHPMailerによるテスト送信、キャンペーン作成、宛先別キュー生成に対応します。
  • cronによる低速キュー配信、VERP形式Return-Path、List-Unsubscribe/One-Click List-Unsubscribeヘッダ、ログイン不要の購読停止を備え、配信停止導線を明確にしています。
  • DSNバウンス解析、IMAPによるバウンスメール定期取得、DNS診断、Googleログイン、AI文面提案、監査ログを備え、配信前後の確認と運用履歴を追えるようにしています。
  • PHP
  • MariaDB
  • PHPMailer
  • Mail Queue
  • Bounce Handling
  • AI文面提案

Network Tool

UDP Fast Copy 超高速ネットワーク間コピー

UDPを使って、信頼できる同一LAN内のPC、NAS、バックアップ端末間で大容量ファイルやディレクトリを高速転送するCLIツールです。

  • TCPベースのコピーで速度が伸びにくい環境を補完し、1Gbps以上の有線LAN帯域をできるだけ活用することを目的にしています。
  • ファイル単体とディレクトリ再帰転送に対応し、転送先の親ディレクトリを自動作成して相対パスを維持したコピーを行います。
  • 欠落パケットに対するNACKベースの再送制御と、受信側512MBリングバッファにより、ネットワークとディスク書き込みの揺れを吸収します。
  • Windows 64bitとLinux x86_64向けの配布物を用意し、Go標準ライブラリのみで構成しています。
  • 既定ポートはUDP 50600で、Windows/Linux双方から `/send` / `/receive` と `-send` / `-receive` の形式で扱えます。
  • 暗号化や認証は行わないため、インターネット越しや共有ネットワークではなく、信頼できるローカルネットワーク内での利用を前提にします。
  • UDP
  • LAN Transfer
  • Windows
  • Linux
  • Go

Motorsport PR

モータースポーツ活動

サーキットを走行する紫と黄色の競技車両
競技会の導線、記録、分析、連絡を、システム設計の材料として確認しています。

Public Relations

競技会運営と開発をつなぐ広報活動

モータースポーツ活動では、イベント運営、参加者導線、動画分析、情報発信を実地で確認しています。 そこで得た要件を、エントリーシステム、SyncA、業務自動化の改善に反映します。

  • 競技会の申込、受付、公開情報の見せ方を実運用で確認します。
  • 走行動画や比較分析を、SyncAの利用シーンとして整理します。
  • 広報宣伝と技術検証を分けず、公開できる成果として蓄積します。

Public Relations

モータースポーツ活動の発信

ジムカーナを中心とした活動、イベント参加、制作物の背景を広報宣伝活動として発信します。

Public Relations

競技会運営でのプロダクト検証

競技会運営や走行分析で得た要件を、エントリーシステムやSyncAの説明に反映します。

Public Relations

イベント導線の整備

近畿ジムカーナエントリーシステム、全日本ジムカーナエントリーシステムへの導線を、活動紹介と実績紹介の両方から配置します。

Products

プロダクトと技術検証

Network Security

SyncA UTM

LinuxベースのUTM・ルーターアプライアンスです。ネットワーク、防御、VPN、DNS/DHCP、証明書、集中管理を扱います。

Video Analysis

SyncA

走行動画やスポーツフォーム確認向けに、最大10動画の同期再生、区間タイム計測、差分表示、Excel出力を行うWindows向け動画比較ツールです。

LAN Transfer Tool

UDP Fast Copy 超高速ネットワーク間コピー

UDPを使って同一LAN内の大容量ファイルやディレクトリを高速転送するCLIツールです。Windows/Linux対応、NACK再送制御、受信側リングバッファを備えます。

Meeting Booking

GASMEET

Googleカレンダーの空き状況を参照し、Jitsi Meet参加URLを自動発行するPHP製オンラインミーティング予約システムです。

AI Messaging Agent

LINE AI Agent

LINE公式アカウントのWebhook、会話/添付/ジョブ保存、常駐ワーカーによるCodex実行、LINE返信を分離して扱うAIエージェント基盤です。

Mail Delivery

Cool Mail List

PHP/MariaDBとPHPMailerで構築するメール配信管理システムです。宛先管理、SMTP設定、テンプレート、配信キュー、購読停止、バウンス処理、AI文面提案を扱います。

SyncA

複数動画を同期・比較して可視化する。

SyncAは、走行動画やスポーツフォーム確認を目的に、複数の動画を同じ時間軸で比較する動画解析ツールです。

SyncA紹介ページのスクリーンショット
SyncA紹介ページとアプリ画面のスクリーンショット。

走行ライン、フォーム、区間タイムを並べて確認

最大10個の動画を読み込み、フレーム単位の同期再生、スタート/区間/ゴールの計測ポイント、差分の色分けを使って、感覚ではなくタイムと映像で違いを確認できます。 ローカル動画とYouTube動画を扱え、Build版ではMTS/MOVなどの素材をMP4へ変換してから分析できます。

最大10動画の同期比較

ローカル動画とYouTube動画を読み込み、複数の走行やフォームをフレーム単位でそろえて確認できます。

区間タイムと差分の可視化

スタート、区間、ゴールのポイントから、トータルタイム、区間タイム、トップとの差分を自動計算し、順位や差分を色で把握できます。

結果確認とExcel出力

計測結果は文字サイズを調整でき、別ウィンドウ表示やExcel出力により、マルチモニタ環境や記録整理にも使えます。

Windows向けBuild版の動画変換

MTS/MOVやインターレース動画など、ブラウザで扱いにくい素材をMP4へ変換し、進捗や残り時間を見ながら分析準備を進められます。

Labs / Fun

実験・ネタ制作

実務案件とは別に、小さな制作物や技術実験も掲載しています。

ScreenGuruGuru

画面表示をぐるぐる動かして見せる、Windows向けの小さなネタ制作です。実務案件とは分け、動きの見え方を確認する実験として掲載します。

remotework

リモートワークを題材にしたネタ制作です。業務支援ではなく、技術実験として掲載します。

懐かしのMooMooエンコード

平文とMoo/moo文字列を相互変換する、シャレと実験の公開Webページです。

Contact

問い合わせ

Webサイト制作、業務システム、既存システムの復旧、PBX/電話連携、ネットワーク/UTM、AIエージェント連携、運用自動化についてご相談ください。 メールアドレスはページ上には掲載せず、フォームから送信された内容のみを確認します。

  • 公開前の案件、障害対応、既存システムの引き継ぎは、守秘範囲を確認したうえで対応範囲を整理します。
  • 正常に送信された場合は、入力されたメールアドレスへ控えメールを自動送信します。
10文字以上、3000文字以内で入力してください。

送信内容は問い合わせへの回答目的で利用します。