自宅の電話番号を取得するために 56K モデムを使用したいと考えています。C# でこれを達成する方法はありますか?
3 に答える
すべてのモデムが発信者 ID をサポートしているわけではありません。その場合、実装はメーカーによって異なります。
発信者 ID はシリアル データを介して渡されるため、TAPI ライブラリ(または Windows のハイパーターミナル) を使用してテストする必要があります。発信者 ID 番号は通常、最初と 2 番目の呼び出し音の間に表示されます。
発信者 ID を有効にするには、モデムにコマンドを発行する必要があります。通常:
AT#CID=1
(またはAT+VCID=1
)わかった
モデムのドキュメントを確認してください。
コールが着信すると、モデムはコール ストリングを受信します。通常:
RING
次に、発信者 ID テキストが表示されます。私の記憶が正しければ、次の形式になります。
NMBR=XXXXXXXXXX
【参考にしたい。見つけたらリンクを貼っておきます]
更新: ああ、見つけた。さまざまなモデムのコマンドと接続文字列については、このページを確認してください。
可能ですが、注意すべき点がいくつかあります。
- キャリア/プロバイダーがサポートする発信者番号が必要です。基本的な POTS 回線には、通信事業者が追加作業を行っていない限り、この情報は含まれません。したがって、追加の発信者 ID 料金の支払いを避けるためにこれを行うことはできません。
- .Net には組み込まれていません。基本的なTAPIライブラリを呼び出す必要があります。私はこのライブラリを自分で使用したことがないので、お伝えできることはこれだけです。
serialPort1.Open(); serialPort1.WriteLine("AT#cid=1" + System.Environment.NewLine); // serialPort1 はシリアル コントロールで、詳細については次のリンクを参照してください: http://www.itworld2.com/frmsCsharp.aspx