WANGPRSライブラリ

Similar documents
untitled

NFCライブラリマニュアル

LTE モバイルルータ ソフトウェア更新手順 第 2 版 2017 年 9 月 富士通株式会社

型名 RF007 ラジオコミュニケーションテスタ Radio Communication Tester ソフトウェア開発キット マニュアル アールエフネットワーク株式会社 RFnetworks Corporation RF007SDK-M001 RF007SDK-M001 参考資料 1

CASSIOPEIA IT-300/9000/DT-5200/5300/X7/X8 シリーズ無線 LAN 設定 簡易マニュアル 概要説明 カシオオリジナルの無線 LAN 設定ツールを初めて使用する方向けに解説します Ver1.07

VG シリーズ用ローカルファームアップ / 自動ファームウェア更新設定手順書 VG400aⅡ ローカルファームアップ / 自動ファームウェア更新設定手順書

Pocket WiFi LTE (GL04P) ソフトウェア更新マニュアル パソコン ipad 編 Version2 10

SoftBank 403ZT ユーザーガイド

Bluetooth ライブラリ マニュアル このマニュアルは Bluetooth ライブラリの仕様について記載します Ver. 1.16

IIJダイレクトアクセス APN簡易設定ツール(APNSetupperD.exe)を利用した接続方法

バーコードハンディターミナル BT-1000 シリーズセットアップガイド ( 第 1 版 ) CE ***

RW-5100 導入説明書 Windows7 用 2017 年 7 月 シャープ株式会社

ESET Mobile Security for Android V1.1 セットアップ手順

目次 移行前の作業 3 ステップ1: 移行元サービス メールソフトの設定変更 3 ステップ2: アルファメール2 メールソフトの設定追加 6 ステップ3: アルファメール2 サーバへの接続テスト 11 ステップ4: 管理者へ完了報告 11 移行完了後の作業 14 作業の流れ 14 ステップ1: メー

RW-4040 導入説明書 Windows 7 用 2017 年 7 月 シャープ株式会社

MS5145 USB シリアル エミュレーション モードの設定

アルファメール 移行設定の手引き Outlook2016

AN424 Modbus/TCP クイックスタートガイド CIE-H14

ごあいさつ このたびは ESMPRO/AC Advance マルチサーバオプション Ver3.6(1 ライセンス ) をお買い上げ頂き 誠にありがとうございます 本書は お買い上げ頂きましたセットの内容確認 セットアップの内容 注意事項を中心に構成されています ESMPRO/AC Advance マ

Canon Mobile Scanning MEAP Application インストールについて

KDDI Smart Mobile Safety Manager Mac OS キッティングマニュアル 最終更新日 2019 年 4 月 25 日 Document ver1.1 (Web サイト ver.9.6.0)

GL04P ソフトウェア更新マニュアル パソコン・iPad編 ver.2.10

Pirates Buster Series Secure Viewer セットアップマニュアル (Web インストーラ)

CashDrawer ライブラリ API 仕様書 2014/07/09 CashDrawer ライブラリ API 仕様書 Rev / 10

セットアップの流れ Graphtec Pro Studio を使用する SAi Cloud へのユーザー登録 1-1 SAi Cloud へのユーザー登録 Graphtec Pro Studio のインストール 1-2 Graphtec Pro Studio のインストール Cutting Mast

Driver Specification for JX65x, 67x, 598

変更履歴 日付 Document ver. 変更箇所 変更内容 017/4/ 新規作成 017/5/ デバイスオーナーモードと 説明を追加 は デバイスオーナーモード導 説明を追加 入手順 QR コード セクション削除 QR コードへの参照文を変更 QR コードによる導入手順

KDDI Smart Mobile Safety Manager ios キッティングマニュアル 最終更新日 2018 年 12 月 13 日 Document ver1.0 (Web サイト ver.9.5.0)

UIOUSBCOM.DLLコマンドリファレンス

ESET Mobile Security V4.1 リリースノート (Build )

ホームページ・ビルダー サービス「ライトプラン」

はじめに 本書は GRATINA2 とパソコンを指定の USB ケーブル ( 別売 ) を使用して接続し インターネット通信や au ホームページで公開している各種ツールをご利用になるための USB ドライバ のインストール方法を説明しています USB ドライバをインストールする 3 パソコンに接続

PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP が被るとローカル環境内接続が行えなくな

はじめにお読みください

PowerTyper マイクロコードダウンロード手順

アルファメールプレミア 移行設定の手引き Outlook2016

eYACHO 管理者ガイド

USB_IR_Remote_Controller_Advance_Library 取扱説明書 2016/06/23 R03 Assembly Desk USB_IR_Remote_Controller_Advance_Library を使用すると 弊社製 USB IR Remote controll

V-Client for Android ユーザーズガイド

ホームページ・ビルダー サービス「ライトプラン」

LTE WiFi USBドングル ソフトウェアの更新手順

K006/ K006 < カメラなしモデル >

改版履歴 版数 日付 内容 担当 V /3/9 初版発行 STS V /5/4 エラー画面の削除 STS V //3 サポート環境の追加 サポート環境の説明文章の STS 修正 画面修正 V /2/25 サポート環境変更 STS V

目次 USBドライバダウンロードの手順...2 USBドライバインストールの手順...3 インストール結果を確認する...19 USBドライバアンインストール / 再インストールの手順...21 USB ドライバダウンロードの手順 1. SHL21 のダウンロードページからダウンロードしてください

LCV-Net セットアップガイド Windows10

novas HOME+CA WEB 設定画面アクセス方法 novas HOME+CA の WEB 設定画面接続方法 本製品の設定は WEB 設定画面から変更できます WEB 設定画面のアクセス方法は以下のとおりです 1 本製品と有線または無線 LAN で接続した端末で WEB ブラウザを起動します

<4D F736F F D C F815B834E B838B90E096BE8F9191E C52E646F63>

FlashAir 設定ソフトウエア株式会社東芝セミコンダクター & ストレージ社 Copyright 2012 TOSHIBA CORPORATION, All Rights Reserved. 対応 OS: Windows XP SP3 / Vista SP2 / 7 (32bit/64bit)

Notes and Points for TMPR454 Flash memory

Microsoft Word - DWR-S01D_Updater_取扱説明書_120514A.doc

モバイルモジュール更新ツール サンプルデータ解説書 このマニュアルは モバイルモジュール更新ツールのサンプルデータを通して プログラム データの更新の方法に関して説明しています Ver.2.10

本マニュアルに記載された内容は 将来予告なしに一部または全体を修正及び変更することがあります なお 本マニュアルにこのような不備がありましても 運用上の影響につきましては責任を負いかねますのでご了承ください 本マニュアルの一部 あるいは全部について 許諾を得ずに無断で転載することを禁じます ( 電子

Microsoft Word - SCR331DI_mac10.14_manual.doc

ユーザーズマニュアル

<< 目次 >> 1 PDF コンバータのインストール ライセンスコードの入力 PDF にフォントを埋め込みたい場合の設定 PDF オートコンバータ EX で使用しない場合 PDF コンバータ単体で使用する場合の説明 PDF コンバータのアン

BACREX-R クライアント利用者用ドキュメント

Solar Link ARCH ソーラーリンクアーク Step 1 ログイン ログイン方法 1. Web ブラウザを立ち上げて 一括監視画面 URL にアクセスします 2. ログイン画面が表示されます 3. マスター ID とマスターパスワードを入力し ログイン状態を保持する に必ずチェックを入れて

ユーティリティ 管理番号 内容 対象バージョン 157 管理情報バッチ登録コマンド (utliupdt) のメッセージ出力に対し リダイレクトまたはパイプを使用すると メッセージが途中までしか出 力されないことがある 267 転送集計コマンド (utllogcnt) でファイル ID とホスト名の組

ホームページ・ビルダー サービス「ライトプラン」

Android Layout SDK プログラミング マニュアル

1 出荷時の設定 1) AT コマンドインターフェース AT コマンドを入力するインターフェースは UART または USB のいずれかを利用可能です 出荷時の初期状態は UART(115200bps) 設定です USB をご使用になる場合は インターフェースを USB へ変更設定をお願いします 2

Solar Link ARCH ソーラーリンクアーク Step 1 ログインと ID パスワードの変更 施工の際 一括監視画面に計測値が正常に表示されるかを施工ご担当者様にて確認する必要があります そのため まずは 設定メニュー画面 にログインして頂き 施工ご担当者様へ開示可能な ID パスワードに

Microsoft Word - Outlook Web Access _IE7_ Scenario.doc

Ver.30 改版履歴 版数 日付 内容 担当 V //3 初版発行 STS V..0 05//6 パスワード再発行後のパスワード変更機能追加 STS V..0 05//5 サポート環境変更 STS V //9 サポート環境の追加 STS ii

1. ネットワーク経由でダウンロードする場合の注意事項 ダウンロード作業における確認事項 PC 上にファイアウォールの設定がされている場合は 必ずファイアウォールを無効にしてください また ウイルス検知ソフトウェアが起動している場合は 一旦その機能を無効にしてください プリンターは必ず停止状態 (

ESET Smart Security 7 リリースノート

タ通パソコンと本製品を付属の USB ケーブルで接続して 本製品を HSDPA 通信のモデム ( ) として利用できます パソコンと接続してインターネットに接続するための機器 信データ通信 データ通信の準備 データ通信を行う前に このページから 8-36 ページで説明している 1~3 のことを行いま

目次. ご利用上の注意. アプリをインストールする. アプリを起動する. アプリの初期設定を行う. アプリのログインパスワードを変更する 6. アプリのメニューを操作する 7. ステータスを送信する 8. 定期位置通知間隔を変更する 9. 随時検索をする 0. メッセージ連絡をする. メッセージの連

MS104-SH2 USBドライバ(仮想COMポートドライバ)の不具合について

TeamViewer マニュアル – Wake-on-LAN

はじめに URBANO PROGRESSO を microusb ケーブル 01 ( 別売 ) またはこれと共通の仕様の microusb ケーブル ( 別売 )( 以下 USB ケーブル ) と接続して USB テザリング機能をご使用いただくためには あらかじめパソコンに USB ドライバ をイン

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

LCV-Net セットアップガイド macOS

Microsoft Windows Internet Explorer は 米国 Microsoft Corporation の 米国およびその他の国における登録商標または商標です Linux は Linus Torvalds 氏の日本およびその他の国における登録商標または商標です Red Hat

wdr7_dial_man01_jpn.indd

PowerPoint プレゼンテーション

ServerView Agents 補足情報

Flex Signal for AirGRID

はじめに 京セラ製スマートフォンを指定の microusb ケーブル ( 別売 ) またはこれと共通仕様の microusb ケーブル ( 別売 )( 以下 USB ケーブル ) と接続して USB テザリング機能をご使用いただくためには あらかじめパソコンに USB ドライバ をインストールしてい

MxLogonサーバサイドツールキット用UI

GenieATM 6300-T / 6200-T シリーズ 1. 基本的な機器オペレーションのために 1-1. 機器への接続 機器への接続方法は 以下の 2 通りがあります シリアルポートを使用してログインする LAN 経由で Telnet または SSH を使用して仮想 Interface からロ

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です

ユーザーライセンス管理ツール操作マニュアル

2 ログイン ( パソコン版画面 ) Web サイトのログイン画面が表示されます 通知メールに記載されている ID と仮パスワードを入力して ログイン ボタンをクリックしてください ID パスワードを連続して 5 回間違うと 当 I D はロックアウト ( 一時的に使用不可 ) されるので ご注意く

Transcription:

abc WANGPRS ライブラリ マニュアル このマニュアルは WANGPRS ライブラリの仕様について記載します Ver. 1.07

ご注意 このソフトウェアおよびマニュアルの 一部または全部を無断で使用 複製することはできません このソフトウェアおよびマニュアルは 本製品の使用許諾契約書のもとでのみ使用することができます このソフトウェアおよびマニュアルを運用した結果の影響については 一切の責任を負いかねますのでご了承ください このソフトウェアの仕様 およびマニュアルに記載されている事柄は 将来予告なしに変更することがあります このマニュアルの著作権はカシオ計算機株式会社に帰属します 本書中に含まれている画面表示は 実際の画面とは若干異なる場合があります 予めご了承ください 2016 カシオ計算機株式会社 Microsoft, MS, ActiveSync, Active Desktop, Outlook, Windows, Windows NT, および Windows ロゴは 米国 Microsoft Corporation の米国およびその他の国における登録商標または商標です Microsoft 社の製品は OEM 各社に Microsoft Corporation の 100% 出資子会社である Microsoft Licensing, Inc. によりライセンス供与されています

変更履歴 バージョン 変更日付 ページ 内容 1.00 2009.09 新規作成 1.01 2010.07 9 RASDIALPARAMS 構造体の説明追加 1.02 2010.12 - 誤記訂正 1.03 2011.11 - 対象機種に IT-9000 を追加 2012.01 42 WANSetRASSettingEx, WanSetRasSettingEx 関数を追加 1.04 2012.09 7 wan_connectstatus, RasConnStatusEx 構造体に ついて 値を追加 37 WANGetCurrentOperator, WanGetCurrentOperator 関数について 値を追加 1.05 2015.02 - 対象機種に IT-G500 を追加 1.06 2016.02 44 WANRASConnect, WanRasConnect 関数の pdwresult の解説を修正 1.07 2016.06 41 WANSetRASSetting, WanSetRasSetting 関数の注意を 追加

目次 1. 概要 1 2. 動作環境 2 3. 機能一覧 3 3.1 ソフトウェア構成 3 3.2 構造体一覧 4 3.2.1 wan_moduleinfo, WanModuleInfo 構造体 4 3.2.2 wan_rssi, WanRssi 構造体 5 3.2.3 wan_operatorinfo, WanOperatorInfo 構造体 6 3.2.4 wan_connectstatus, RasConnStatusEx 構造体 7 3.2.5 RASCONNSTATUS 構造体 8 3.2.6 RasDialParams 構造体 9 3.2.7 wan_sms_address, WanSmsAddress 構造体 10 3.3 関数一覧 11 3.3.1 WANSetPowerStatus, WanSetPowerStatus 11 3.3.2 WANGetPowerStatus, WanGetPowerStatus 12 3.3.3 WANSIMInitialize, WanSimInitialize 13 3.3.4 WANSIMDeInitialize, WanSimDeInitalize 14 3.3.5 WANSIMGetPhoneLockedState, WanSimGetPhoneLockedState 15 3.3.6 WANSIMGetPINCounter, WanSimGetPINCounter 16 3.3.7 WANSIMUnLockPhone, WanSimUnlockPhone 17 3.3.8 WANSIMChangeLockingPassword, WanSimChangeLockingPassword 19 3.3.9 WANSIMSetLockingStatus, WanSimSetLockingStatus 21 3.3.10 WANSIMGetLockingStatus, WanSimGetLockingStatus 23 3.3.11 WANGetModuleInfo, WanGetModuleInfo 25 3.3.12 WANGetIMEI, WanGetImei 26 3.3.13 WANGetIMSI, WanGetImsi 27 3.3.14 WANGetTelNum, WanGetTelephoneNumber 29 3.3.15 WANGetRSSI, WanGetRssi 31 3.3.16 WANGetOperatorList, WanGetOperatorList 32 3.3.17 WANSetOperatorConnectionMode, WanSetOperatorConnectionMode 34 3.3.18 WANGetOperatorConnectionMode, WanGetOperatorConnectionMode 36 3.3.19 WANGetCurrentOperator, WanGetCurrentOperator 37 3.3.20 WANGetCurrentOperatorID, WanGetCurrentOperatorID 39 3.3.21 WANSetRASSetting, WanSetRasSetting 40 3.3.22 WANSetRASSettingEx, WanSetRasSettingEx 42 3.3.23 WANRASConnect, WanRasConnect 44 3.3.24 WANRASDisConnect, WanRasDisconnect 46 3.3.25 WANRASGetConnectStatus, WanRasGetConnectStatus 47 3.3.26 WANSmsOpen, WanSmsOpen 48 3.3.27 WANSmsClose, WanSmsClose 50 3.3.28 WANSmsSetSMSC, WanSmsSetSmsCenterAddress 51 3.3.29 WANSmsGetSMSC, WanSmsGetSmsCenterAddress 52 3.3.30 WANSmsRecvMessage, WanSmsReceiveMessage 53 3.3.31 WANSmsSendMessage, WanSmsSendMessage 55

4. プログラミング上の注意 58 4.1 GPRS 制御手順 58 4.2 SIM 制御 59 4.3 GPRS 制御 60 4.3.1 オペレータ選択手順 60 4.3.2 GPRS 接続手順 61 4.4 SMS 制御 62 4.4.1 SMS 送信 62 4.4.2 SMS 受信 63 5. DeviceEmulator 64 5.1 SIM.ini 65 5.2 Module.ini 66 5.3 Operator.ini 67 5.4 OperatorList[n].ini 68

1. 概要 WANGPRS ライブラリは GPRS モジュールを用いたデータ通信の制御機能を提供します 機能としては主に 以下があります 電源制御 SIM 制御 GPRS 情報取得 GPRS 通信情報取得 GPRS 制御 SMS 制御 1

2. 動作環境 WANGPRS ライブラリの動作環境を以下に示します 対象機種 DT-5300 IT-9000 IT-G500 対象 OS Microsoft Windows Mobile 6.5 Microsoft Windows Embedded Handheld 6.5 開発環境 Microsoft Visual Studio 2005 + SP1 Microsoft Visual Studio 2008 + SP1 提供ファイル WANGPRSLib.h WANGPRSLib.lib WANGPRSLib.dll WANGPRSLibNet.dll ( クラスライブラリ ) 使用方法 プログラムソース内に WANGPRSLib.h をインクルードし WANGPRSLib.lib を使用するライブラリとして指定してください WANGPRSLib.dll は本体に内蔵されています WANGPRSLibNet.dll を実行モジュールと同じフォルダにコピーしてください 2

3. 機能一覧 3.1 ソフトウェア構成 下図のようなソフトウェア構成になっています User Application GPS Management Application Power Setting Status User Application SMS Application Data Communication Application GPS Intermediate Driver CASIO GSM Control Library Power Control / IM Setting / Carrier Select Radio Strength Check / Status Check etc. Connection Manager WINSOCK TCP/IP RAS GPS Driver GSM Module Driver PPP Virtual COM (GPS) Virtual COM (Module Management) Virtual COM (Data Communication) Multiplexer Serial Driver Serial I/F GPRS Module User Microsoft Siemens CASIO CASIO It is a part explained with this document. 3

3.2 構造体一覧 3.2.1 wan_moduleinfo, WanModuleInfo 構造体 モジュール情報を格納します struct wan_moduleinfo { BYTE szvendor[moduleinfo_vendor_max_length]; BYTE szname[moduleinfo_name_max_length]; BYTE szrevision[moduleinfo_revision_max_length]; }; Public Class WanModuleInfo Public Vendor As String Public Name As String Public Revision As String End Class public class WanModuleInfo { public string Vendor; public string Name; public string Revision; }; szvendor モジュールのメーカ名を格納します szname モジュール名を格納します szrevision モジュールのリビジョンを格納します 4

3.2.2 wan_rssi, WanRssi 構造体 GPRS の電波状態を格納します struct wan_rssi{ long nsignalstrengthmin; long nsignalstrengthmax; long nsignalstrength; }; Public Class WanRssi Public SignalStrengthMin Public SignalStrengthMax Public SignalStrength End Class As Long As Long As Long public class WanRssi { public long SignalStrengthMin; public long SignalStrengthMax; public long SignalStrength; }; nsignalstrengthmin RSSI がとる最小値 [dbm] を格納します nsignalstrengthmax RSSI がとる最大値 [dbm] を格納します nsignalstrength 現在の RSSI[dBm] を格納します 5

3.2.3 wan_operatorinfo, WanOperatorInfo 構造体 オペレータ情報を格納します Struct wan_operatorinfo{ BYTE szlongname[maxlength_operator_long]; BYTE szshortname[maxlength_operator_short]; BYTE sznumname[maxlength_operator_numeric]; }; Public Class WanOperatorInfo Public LongName As String Public ShortName As String Public NumName As String End Class public class WanOperatorInfo { public string LongName; public string ShortName; public string NumName; }; szlongname オペレータの名称を格納します (32 文字 ) szshortname オペレータの名称を格納します (16 文字 ) sznumname オペレータ ID を格納します 国コード (3 文字 )+ ネットワークコード (2 文字 ) 6

3.2.4 wan_connectstatus, RasConnStatusEx 構造体 GPRS の接続セッションステータスを格納します Struct wan_connectstatus{ RASCONNSTATUS rasconnstatus; DWORD dwwanstatus; } WAN_CONNECTSTATUS, *LPWAN_CONNECT_STATUS; Public Class RasConnStatusEx Public Rasconnstatus As RASCONNSTATUS Public WanStatus As Int32 End Class public class RasConnStatusEx { public RASCONNSTATUS Rasconnstatus; public Int32 WanStatus; }; rasconnstatus RAS 接続ステータスを格納します MSDN の RASAPI を参照してください RASCONNSTATUS 構造体を格納します 詳細は RASCONNSTATUS 構造体を参照してください dwwanconnstatus GPRS の接続ステータスを格納します WAN_STATUS_NOT_AVAILABLE WAN_GPRS_AVAILABLE WAN_GPRS_ATTACHED WAN_EGPRS_AVAILABLE WAN_EGPRS_ATTACHED WAN_UMTS_AVAILABLE WAN_UMTS_ATTACHED WAN_HSDPA_AVAILABLE WAN_HSDPA_ATTACHED WAN_HSUPA_AVAILABLE WAN_HSUPA_ATTACHED WAN_HSPA_AVAILABLE WAN_HSPA_ATTACHED WAN_GSM_AVAILABLE WAN_GSM_ATTACHED WAN_STATUS_UNSUPPORT GPRS/EGPRS 未対応 GPRS 対応 GPRS 接続 EGPRS 対応 EGPRS 接続 UMTS 対応 UMTS 接続 HSDPA 対応 HSDPA 接続 HSUPA 対応 HSUPA 接続 HSDPA+HSUPA 対応 HSDPA+HSUPA 接続 GSM 対応 GSM 接続 未対応のネットワーク 7

3.2.5 RASCONNSTATUS 構造体 RAS 接続データを格納します Public Class RASCONNSTATUS Public Rasconnstate As Int32 Public Error As Int32 Public DeviceType() As Char Public DeviceName() As Char End Class public class RASCONNSTATUS { public Int32 Rasconnstate; public Int32 Error; public char[] DeviceType; public char[] DeviceName; }; Rasconnstate 接続状態を格納します RASCS_Connected RASCS_Disconnected 接続成功 接続失敗 Error エラー番号を格納します DeviceType モデムタイプを格納します DeviceName モデム名を格納します 8

3.2.6 RasDialParams 構造体 RAS 接続の呼び出しを格納します C++ で使用する RASDIALPARAMS 構造体については下記 MSDN の RASDIALPARAMS 構造体を参照してください http://msdn.microsoft.com/ja-jp/library/aa377238(v=vs.85).aspx Public Class RasDialParams Public EntryName As String Public UserName As String Public Password As String Public Domain As String End Class public class RasDialParams { public string EntryName; public string UserName; public string Password; public string Domain; };, EntryName ダイアルアップ接続の接続名を格納します UserName ダイアルアップ接続のユーザ名を格納します Password ダイアルアップ接続のパスワードを格納します Domain ダイアルアップ接続のドメイン名を格納します 9

3.2.7 wan_sms_address, WanSmsAddress 構造体 ショートメッセージアドレスを格納します struct wan_sms_address { WAN_SMS_ADDRESS_TYPE BYTE } AddressType; szaddress[wan_max_address_length]; Public Class WanSmsAddress Public AddressType As Int32 Public Address As String End Class public class WanSmsAddress { public Int32 AddressType; public string Address; }; AddressType SMS で使用するアドレスタイプを格納します szaddress[wan_sms_max_address_length], Address SMS のアドレス実体 ( 文字列 ) を格納します #define WAN_SMS_MAX_ADDRESS_LENGTH : 256 characters 本構造体を使用する場合は AddressType に WAN_SMSAT_UNKNOWN を指定してください 10

3.3 関数一覧 3.3.1 WANSetPowerStatus, WanSetPowerStatus WANGPRS モジュールの電源状態を設定します DWORD WANSetPowerStatus( DWORD dwpowerstatus ) Public Shared Function WanSetPowerStatus(_ ByVal PowerStatus As Def.PowerStatus_ ) AS Int32 public static Int32 WanSetPowerStatus( Def.PowerStatus PowerStatus ) 解説 本関数は WANGPRS モジュールの電源状態を設定します モジュールの電源操作は 1~3 秒程度の時間がかかる場合があります モジュールのセットアップ / シャットダウン処理が完了するまで 本関数はブロックされます dwpowerstatus WANGPRS モジュールの電源状態を設定します WAN_MODULE_POWER_ON 電源 ON WAN_MODULE_POWER_OFF 電源 OFF 戻り値 以下の値を返します WAN_ERROR_SUCCESS WAN_ERROR_FAIL 正常終了 異常終了 11

3.3.2 WANGetPowerStatus, WanGetPowerStatus WAN モジュールの電源状態を取得します DWORD WANGetPowerStatus( DWORD *ppowerstatus ) Public Shared Function WanGetPowerStatus(_ ByRef PowerStatus As Def.PowerStatus_ )AS Int32 public static Int32 WanGetPowerStatus( out Def.PowerStatus PowerStatus ) 解説 本関数は WAN モジュールの電源状態を取得します ppowerstatus WAN モジュールの電源状態を取得します 取得する値は WANSetPowerStatus 関数を参照してください 戻り値 以下の値を返します WAN_ERROR_SUCCESS WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 エラー その他のエラー DeviceEmulator では発生しません 12

3.3.3 WANSIMInitialize, WanSimInitialize SIM 機能の操作を行うためのハンドルを取得します DWORD WANSIMInitialize( HANDLE *phsim ) Public Shared Function WanSimInitialize(_ ByRef SIMHandle As IntPtr _ ) AS Int32 public static Int32 WanSimInitialize( out IntPtr SIMHandle ); 本関数は SIM 機能の操作を行うためのハンドルを取得します SIM 機能の操作を行う場合は 必ず本関数を最初に実行してください phsim SIM 機能の操作を行うためのハンドルを取得します 戻り値 以下の値を返します WAN_ERROR_SUCCESS WAN_ERROR_BADPARAM WAN_ERROR_FAIL WAN_ERROR_BUSY 正常終了 エラー その他のエラー DeviceEmulator では発生しません 他プロセスでハンドルオープン済エラー 13

3.3.4 WANSIMDeInitialize, WanSimDeInitalize 取得したハンドルを解放します DWORD WANSIMDeInitialize( HANDLE hsim ) Public Shared Function WanSimDeInitialize(_ ByVal SIMHandle As IntPtr _ ) AS Int32 public static Int32 WanSimDeInitialize( IntPtr SIMHandle ) 本関数は 取得したハンドルを解放します SIM 操作が終了した場合は 必ず本関数を実行してください hsim 取得したハンドルを指定します 戻り値 WAN_ERROR_SUCCESS WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_FAIL 正常終了 不正なハンドル その他のエラー DeviceEmulator では発生しません 14

3.3.5 WANSIMGetPhoneLockedState, WanSimGetPhoneLockedState SIM ロック状態を取得します DWORD WANSIMGetPhoneLockedState( HANDLE hsim, DWORD* pdwlockstate ) Public Shared Function WanSimGetPhoneLockedState(_ ByVal SIMHandle As IntPtr,_ ByRef LockState As Def.SimLockStatus _ ) AS Int32 public static Int32 WanSimGetPhoneLockedState( IntPtr SIMHandle, out Def.SimLockStatus LockState ); 本関数は SIM ロック状態を取得します Device Emulator では SIM.ini ファイルで指定した SIM ロック状態を取得します 詳細は SIM.ini を参照してください hsim 取得したハンドルを指定します pdwlockstate SIM ロック状態を取得します WAN_SIM_LOCKSTATE_READY WAN_SIM_LOCKSTATE_PIN WAN_SIM_LOCKSTATE_PUK WAN_SIM_LOCKSTATE_OTHER_LOCK SIM ロック解除状態 PIN 入力待機状態 PUK 入力待機状態 その他のロック状態 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 不正なハンドル SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー その他のエラー DeviceEmulator では発生しません 15

3.3.6 WANSIMGetPINCounter, WanSimGetPINCounter 現在の状態の PIN カウンタを取得します DWORD WANSIMGetPINCounter( HANDLE hsim, DWORD* pdwcount ) Public Shared Function WanSimGetPINCounter(_ ByVal SIMHandle As IntPtr, _ ByRef Count As Int32 _ ) AS Int32 public static Int32 WanSimGetPINCounter( IntPtr SIMHandle, out Int32 Count ); 解説 本関数は 現在の状態の PIN カウンタを取得します PIN カウンタは現在の状態での PIN 入力が行える回数を示しています PIN カウンタが 0 になった場合は PIN ロック状態に移行します Device Emulator では SIM.ini ファイルで指定した PIN カウンタを取得します 詳細は SIM.ini を参照してください hsim 取得したハンドルを指定します pdwcount PIN カウンタを取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 不正なハンドル SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー DeviceEmulator では発生しません その他のエラー 16

3.3.7 WANSIMUnLockPhone, WanSimUnlockPhone SIM ロックを解除します DWORD WANSIMUnLockPhone( HANDLE hsim, BYTE* szpassword1, BYTE* szpassword2 ) Public Shared Function WanSimUnLockPhone(_ ByVal SIMHandle As IntPtr, _ ByVal Password1 As String, _ ByVal Password2 As String _ ) AS Int32 public static Int32 WanSimUnLockPhone( IntPtr SIMHandle, string Password1, string Password2 ) 解説 本関数は SIM ロックを解除します 本関数は SIM のロック状態により 引数が異なります そのため 本関数を実行する以前に WANSIMGetPhoneLockedState 関数を実行し SIM のロック状態を確認してください SIM ロック状態が PIN 入力待機の場合は SIM ロックを解除します また SIM ロック状態が PUK 入力待機の場合は PUK 入力待機状態を解除し PIN コードを変更します Device Emulator では SIM.ini ファイルで指定した PIN コードまたは PUK コードを使用します 詳細は SIM.ini を参照してください Device Emulator では PUK 時の PIN コード置き換えをサポートしません hsim 取得したハンドルを指定します szpassword1 SIM ロック状態が PIN 入力待機の場合は PIN コードを指定します SIM ロック状態が PUK 入力待機の場合は PUK コードを指定します szpassword2 SIM ロック状態が PIN 入力待機の場合は 本を無視します SIM ロック状態が PUK 入力待機の場合は 新しい PIN コードを指定します 17

戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_INCORRECT_PASSWORD WAN_ERROR_FAIL 正常終了 不正なハンドル SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 不正なパスワード その他のエラー 注意 szpassword1 と szpassword2 は SIM ロック状態に依存して 入力する引数が異なります PIN コード入力待機状態の場合 SIM ロック状態を解除します szpassword1 PIN コード szpassword2 無視 PUK コード入力待機状態の場合 PUK 状態を解除し PIN コードを新しい PIN コードに置き換えます szpassword1 PUK コード szpassword2 新しい PIN コード 18

3.3.8 WANSIMChangeLockingPassword, WanSimChangeLockingPassword 指定したファシリティのパスワードを変更します DWORD WANSIMChangeLockingPassword( HANDLE hsim, DWORD dwfacility, BYTE* szoldpassword, BYTE* sznewpassword ) Public Shared Function WanSimChangeLockingPassword(_ ByVal SIMHandle As IntPtr, _ ByVal OldPassword As String, _ ByVal NewPassword As String _ ) AS Int32 public static Int32 WanSimChangeLockingPassword( IntPtr SIMHandle, string OldPassword, string NewPassword ) 解説 本関数は 指定したファシリティのパスワードを変更します 本関数実行前に 必ず WANSIMGetLockingStatus 関数を実行し SIM モジュールがロックが有効になっていることを確認してください ロックが無効になっている場合 本関数は異常終了します Device Emulator では 何もせずに 常に WAN_ERROR_SUCCESS を返します hsim 取得したハンドルを指定します dwfacility ファシリティを指定します WAN_SIM_LOCK_FACILITY_PIN PIN コード szpassword1 既存のパスワードを指定します szpassword2 新しいパスワードを指定します 戻り値 以下の値を返します 19

WAN_ERROR_SUCCES WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_INCORRECT_PASSWORD WAN_ERROR_FAIL 正常終了 不正なハンドル SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 不正なパスワード その他のエラー 20

3.3.9 WANSIMSetLockingStatus, WanSimSetLockingStatus 指定したファシリティのロック状態を変更します DWORD WANSIMSetLockingStatus ( HANDLE hsim, DWORD dwfacility, BYTE* szpassword, BOOL benable ) Public Shared Function WanSimSetLockingStatus (_ ByVal SIMHandle As IntPtr, _ ByVal Password As String, _ ByVal Enable As Boolean _ ) AS Int32 public static Int32 WanSimSetLockingStatus ( IntPtr SIMHandle, string Password, bool Enable ); 解説 本関数は 指定したファシリティのロック状態を変更します 設定は モジュールの次回起動時から有効となります Device Emulator では SIM.ini ファイルで指定した PIN コードを使用します 詳細は SIM.ini を参照してください Device Emulator では情報を保存しません データ変更の有効期間は電源 ON 状態中のみです hsim 取得したハンドルを指定します dwfacility ファシリティを指定します WAN_SIM_LOCK_FACILITY_PIN PIN コード szpassword ファシリティのパスワードを指定します benable ファシリティのロックの有効 / 無効を指定します TRUE 有効 FALSE 無効 21

戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_INCORRECT_PASSWORD WAN_ERROR_FAIL 正常終了 不正なハンドル SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 不正なパスワード その他のエラー DeviceEmulator では発生しません 22

3.3.10 WANSIMGetLockingStatus, WanSimGetLockingStatus 指定したファシリティのロック状態を取得します DWORD WANSIMGetLockingStatus ( HANDLE hsim, DWORD dwfacility, BYTE* szpassword, BOOL* pbenable ) Public Shared Function WanSimGetLockingStatus (_ ByVal SIMHandle As IntPtr, _ ByVal Password As String, _ ByRef Enable As Boolean _ ) AS Int32 public static Int32 WanSimGetLockingStatus ( IntPtr SIMHandle, string Password, out bool Enable ); 解説 本関数は 指定したファシリティのロック状態を取得します Device Emulator では SIM.ini ファイルで指定した PIN コードを使用します 詳細は SIM.ini を参照してください hsim 取得したハンドルを指定します dwfacility ファシリティを指定します WAN_SIM_LOCK_FACILITY_PIN PIN コード szpassword ファシリティのパスワードを指定します benable ファシリティのロック状態を取得します 取得する値は WANSIMSetLockingStatus 関数を参照してください 戻り値 以下の値を返します 23

WAN_ERROR_SUCCES WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_FAIL 正常終了 不正なハンドル SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー その他のエラー DeviceEmulator では発生しません 24

3.3.11 WANGetModuleInfo, WanGetModuleInfo モジュール情報を取得します DWORD WANGetModuleInfo( struct wan_moduleinfo *pmoduleinfo ); Public Shared Function WanGetModuleInfo(_ ByRef pmoduleinfo As WanModuleInfo _ ) AS Int32 public static Int32 WanGetModuleInfo( out WanModuleInfo pmoduleinfo ) 解説 本関数は モジュール情報を取得します Device Emulator では Module.ini ファイルで指定した値を取得します 詳細は Module.ini を参照してください pmoduleinfo wan_moduleinfo, WanModuleInfo 構造体を指定します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 モジュール未準備 ( 電源 OFF) エラー その他のエラー DeviceEmulator では発生しません 25

3.3.12 WANGetIMEI, WanGetImei 電話機の固有番号 IMEI(International Mobile Equipment Identity) を取得します DWORD WANGetIMEI( BYTE* szimei, DWORD* pdwlength ); Public Shared Function WanGetImei(_ ByRef IMEI As String _ ) AS Int32 public static Int32 WanGetImei( out string IMEI ); 解説 本関数は 電話機の固有番号 IMEI(International Mobile Equipment Identity) を取得します Device Emulator では 常に "1234567890" を返します szimei 電話機の固有番号 IMEI(International Mobile Equipment Identity) を取得します NULL を指定すると WAN_ERROR_BUFFER_ERROR が返ります pdwlength [in] szimei のバッファの長さを指定します 指定したバッファの長さが必要とするバッファの長さを下回った場合は WAN_ERROR_BUFFER_ERROR が返ります [out] 取得した IMEI の文字列長 +1 を取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_BUFFER_ERROR WAN_ERROR_FAIL 正常終了 モジュール未準備 ( 電源 OFF) エラー バッファエラー その他のエラー DeviceEmulator では発生しません 26

3.3.13 WANGetIMSI, WanGetImsi 加入者識別子 IMSI(International Mobile Subscriber Identity) を取得します DWORD WANGetIMSI( BYTE* szimsi, DWORD* pdwlength ); Public Shared Function WanGetImsi(_ ByRef IMSI As String _ ) AS Int32 public static Int32 WanGetImsi( out string IMSI ) 解説 本関数は 加入者識別子 IMSI(International Mobile Subscriber Identity) を取得します IMSI は SIM カードに記録してあります 取得するには 以下の条件が必要です - SIM カードを挿入済 - PIN ロックを解除済 Device Emulator では SIM.ini ファイルで指定した IMSI を取得します 詳細は SIM.ini を参照してください szimsi 加入者識別子 IMSI(International Mobile Subscriber Identity) を取得します NULL を指定すると WAN_ERROR_BUFFER_ERROR が返ります pdwlength [in] szimsi のバッファの長さを指定します 指定したバッファの長さが必要とするバッファの長さを下回った場合は WAN_ERROR_BUFFER_ERROR が返ります [out] 取得した IMSI の文字列長 +1 を取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 27

WAN_ERROR_BUFFER_ERROR WAN_ERROR_FAIL バッファエラー その他のエラー DeviceEmulator では発生しません 28

3.3.14 WANGetTelNum, WanGetTelephoneNumber 電話番号 MSISDN (Mobile Subscriber ISDN Number) を取得します DWORD WANGetTelNum( BYTE* sztelnum, DWORD* pdwlength ); Public Shared Function WanGetTelNum(_ ByRef TelNum As String _ ) AS Int32 public static Int32 WanGetTelNum( out string TelNum ); 解説 本関数は 電話番号 MSISDN(Mobile Subscriber ISDN Number) を取得します MSISDN は SIM カードに記録してあります 取得するには 以下の条件が必要です - SIM カードを挿入済 - PIN ロックを解除済 Device Emulator では SIM.ini ファイルで指定した MSISDN を取得します 詳細は SIM.ini を参照してください sztelnum 加入者識別子 IMSI(International Mobile Subscriber Identity) を取得します NULL を指定すると WAN_ERROR_BUFFER_ERROR が返ります pdwlength [in] sztelnum のバッファの長さを指定します 指定したバッファの長さが必要とするバッファの長さを下回った場合は WAN_ERROR_BUFFER_ERROR が返ります [out] 取得した MSISDN の文字列長 +1 を取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 29

WAN_ERROR_BUFFER_ERROR WAN_ERROR_FAIL バッファエラー その他のエラー DeviceEmulator では発生しません 30

3.3.15 WANGetRSSI, WanGetRssi 受信電波強度 RSSI(Received Signal Strength Indicator) を取得します DWORD WANGetRSSI( struct wan_rssi *prssi ); Public Shared Function WanGetRssi(_ ByRef prssi As WanRssi _ ) AS Int32 static Int32 WanGetRssi( out WanRssi prssi ); 解説 本関数は 受信電波強度 RSSI(Received Signal Strength Indicator) を取得します 本関数を続けて使用する場合は 必ず 3 秒以上間隔を空けてください 受信電波を検出できない場合は wan_rssi, WanRssi 構造体の nsignalstrength に WAN_SIGNALSTRENGTH_UNKNOWN を格納します Device Emulator では Operator.ini ファイルで指定した受信電波強度を取得します 詳細は Operator.ini を参照してください prssi wan_rssi, WanRssi 構造体を指定します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー その他のエラー DeviceEmulator では発生しません 31

3.3.16 WANGetOperatorList, WanGetOperatorList オペレータリストを取得します DWORD WANGetOperatorList( struct wan_operatorinfo* DWORD DWORD* ) poperatorlist, noperator, pdwnumoperator Public Shared Function WanGetOperatorList(_ ByRef poperatorlist() As WanOperatorInfo, _ ByVal Operator As Int32 _ ) AS Int32 public static Int32 WanGetOperatorList( out WanOperatorInfo[] poperatorlist, Int32 Operator ) 解説 本関数は オペレータリストを取得します 基地局をスキャンし 現在接続可能な基地局のリストを返します スキャンした基地局が指定した要素数より多い場合は WAN_ERROR_MORE_OPERATOR を返します その場合は 指定した要素数まで 基地局情報を格納し pdwnumoperator にスキャンした基地局数を格納します また 本関数はスキャンが終了するまで制御が返りません Device Emulator では OperatorList[n].ini ファイル数だけスキャンを行い ini ファイルで指定した情報を取得します 詳細は OperatorList[n].ini を参照してください poperatorlist wan_operatorinfo, WanOperatorInfo 構造体の配列を指定します noperator 取得する要素数を指定します pdwnumoperator スキャンした要素数を取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 32

WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_MORE_OPERATOR WAN_ERROR_FAIL 操作未許可エラー 基地局要素数エラー その他のエラー DeviceEmulator では発生しません 33

3.3.17 WANSetOperatorConnectionMode, WanSetOperatorConnectionMode オペレータへの接続方法を設定します DWORD WANSetOperatorConnectionMode( DWORD nmode, Struct wan_operatorinfo *poperator ) Public Shared Function WanSetOperatorConnectionMode(_ ByVal Mode As Def.ConnectionMode, _ ByVal poperator As WanOperatorInfo_ ) AS Int32 public static Int32 WanSetOperatorConnectionMode( Def.ConnectionMode Mode, WanOperatorInfo poperator ); 解説 本関数は オペレータへの接続方法を設定します Device Emulator では 設定値を内部変数として格納するため 何も動作しませんが WANGetOperatorConnectionMode 関数を実行することにより 設定値を確認することができます nmode オペレータへの接続方法を指定します WAN_CONNECTION_MODE_AUTO 自動接続 WAN_CONNECTION_MODE_AUTO_RESCAN 自動接続 ( 再探索付 ) WAN_CONNECTION_MODE_MANUAL 手動接続 WAN_CONNECTION_MODE_ADAPT 適応モード poperator wan_operatorinfo, WanOperatorInfo 構造体を指定します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー その他のエラー DeviceEmulator では発生しません 補足 34

自動接続の場合は SIM カードの情報に基づき 接続を行います 現在 自動接続に設定している場合は そのまま維持します (poperator(operator) を無視します ) 自動接続 ( 再探索付 ) の場合は 現在の設定にかかわらず 本関数を実行したタイミングで基地局の探索を行います 探索後は 自動接続になります (poperator(operator) を無視します ) 手動接続は 指定した基地局に接続します (poperator(operator) の sznumname(numname) に接続したいオペレータ ID を指定してください ) 適応モードは 手動接続試行後に 自動接続に移行します (poperator(operator) の sznumname (NumName) に接続したいオペレータ ID を指定してください ) 35

3.3.18 WANGetOperatorConnectionMode, WanGetOperatorConnectionMode オペレータへの接続方法を取得します DWORD WANGetOperatorConnectionMode( DWORD *pnmode ) Public Shared Function WanGetOperatorConnectionMode(_ ByRef Mode As Def.ConnectionMode _ ) AS Int32 public static Int32 WanGetOperatorConnectionMode( out Def.ConnectionMode Mode ); 解説 本関数は オペレータへの接続方法を取得します pnmode オペレータへの接続方法を取得します 取得する値は WANSetOperatorConnectionMode 関数を参照してください 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー その他のエラー DeviceEmulator では発生しません 36

3.3.19 WANGetCurrentOperator, WanGetCurrentOperator 接続中のオペレータの情報を取得します DWORD WANGetCurrentOperator( struct wan_operatorinfo* DWORD* ); poperatorinfo, pgprs_status Public Shared Function WanGetCurrentOperator(_ ByRef poperatorinfo As WanOperatorInfo, _ ByRef GPRS_Status As Def.GprsStatus _ ) AS Int32 public static Int32 WanGetCurrentOperator( out WanOperatorInfo poperatorinfo, out Def.GprsStatus GPRS_Status ); 解説 本関数は 接続中のオペレータの情報を取得します Device Emulator では チェックを行い 常に WAN_GPRS_AVAILABLE を取得します poperatorinfo wan_operatorinfo, WanOperatorInfo 構造体を指定します pgprs_status 接続中のオペレータの情報を取得します WAN_STATUS_NOT_AVAILABLE WAN_GPRS_AVAILABLE WAN_GPRS_ATTACHED WAN_EGPRS_AVAILABLE WAN_EGPRS_ATTACHED WAN_UMTS_AVAILABLE WAN_UMTS_ATTACHED WAN_HSDPA_AVAILABLE WAN_HSDPA_ATTACHED WAN_HSUPA_AVAILABLE WAN_HSUPA_ATTACHED WAN_HSPA_AVAILABLE WAN_HSPA_ATTACHED WAN_GSM_AVAILABLE WAN_GSM_ATTACHED WAN_STATUS_UNSUPPORT GPRS/EGPRS 未対応 GPRS 対応 GPRS 接続 EGPRS 対応 EGPRS 接続 UMTS 対応 UMTS 接続 HSDPA 対応 HSDPA 接続 HSUPA 対応 HSUPA 接続 HSDPA+HSUPA 対応 HSDPA+HSUPA 接続 GSM 対応 GSM 接続 未対応のネットワーク 37

戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_NO_OPERATOR WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー オペレータ非存在 DeviceEmulator では発生しません その他のエラー DeviceEmulator では発生しません 38

3.3.20 WANGetCurrentOperatorID, WanGetCurrentOperatorID 接続中のオペレータの ID 情報を取得します DWORD WANGetCurrentOperator( struct wan_operatorinfo* DWORD* ); poperatorinfo, pgprs_status Public Shared Function WanGetCurrentOperator(_ ByVal poperatorinfo As WanOperatorInfo, _ ByRef GPRS_Status As Def.GprsStatus _ ) AS Int32 public static Int32 WanGetCurrentOperator( out WanOperatorInfo poperatorinfo, out Def.GprsStatus GPRS_Status ); 解説 本関数は 接続中のオペレータの ID 情報のみを取得します WANGetCurrentOperator 関数に比べて 短時間での実行が可能です wan_operatorinfo, WanOperatorInfo 構造体の sznumname(numname) のみを取得し その他のメンバには NULL を格納します Device Emulator では チェックを行い 常に WAN_GPRS_AVAILABLE を取得します poperatorinfo wan_operatorinfo, WanOperatorInfo 構造体を指定します pgprs_status 接続中のオペレータの情報を取得します 取得する値は WANGetCurrentOperator 関数を参照してください 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_NO_OPERATOR WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー オペレータ非存在 DeviceEmulator では発生しません その他のエラー DeviceEmulator では発生しません 39

3.3.21 WANSetRASSetting, WanSetRasSetting GPRS 接続を行うための RAS エントリを設定します DWORD WANSetRASSetting( BYTE* szentryname, BYTE* sznumber, BYTE* szserviceprovidor ) Public Shared Function WanSetRASSetting(_ ByVal EntryName As String, _ ByVal Number As String, _ ByVal AccessPointName As String _ ) AS Int32 public static Int32 WanSetRASSetting( string EntryName, string Number, string AccessPointName ); 解説 本関数は RAS エントリを設定します ConnectionManager 機能を用いて 接続制御を行います DeviceConfigurationAPI を用いて GPRS 通信を行うための接続を設定します 詳細は下記を参照してください http://msdn.microsoft.com/en-us/library/ms852998.aspx http://msdn.microsoft.com/en-us/library/aa455854.aspx Device Emulator では チェックのみを行い WAN_ERROR_SUCCESS を返します szentryname RAS 接続エントリ名を指定します sznumber 電話番号を指定します NULL を指定した場合は 既定の設定 *99***1# を書き込みます szserviceprovidor GPRS 通信プロバイダ名を指定します 40

戻り値 以下の値を返します WAN_ERROR_SUCCESS WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 エラー その他のエラー RAS 設定 EntryName szentryname 注意 Modem: Phone number *99***1# Force Local Checked Device Proptaties Port Setting Baud Rate 115200[bps] mul driver fix-rate 460k[bps] Data Bits 8[bits] Parity None Stop Bits 1 Flow Control Hardware Call Option ExtraSetting +cgdcont=1,ip,szserviceprovider[apn] TCP/IP Setting IP addresss assign Auto NameServer assign Auto Software compression Enable IP Header compression Enable Security Setting Use Data Encryption NO Use EAP NO Win32 API の RAS 関数を使用しないでください WAN 通信は OS の Connection Manager が接続情報および接続動作の管理を行っているため Connection Manager の管理下にある RAS 関数 (Ras から始まる Win32 API) を アプリケーションから直接使用することはできません 接続管理は WANGPRS ライブラリ機能 または Internet Explorer の起動時に自動起動する Connection Manager 機能をご使用ください もし アプリケーションから直接 RAS 関数を使用した場合 以下のような状態となり 正しく動作しない可能性があります Connection Manager に設定されている情報が 必ずしも常に RAS 側に反映されているとは限らず 想定した動作とは異なる設定で動作してしまう Connection Manager が RAS のリソースを使用中に アプリケーションから RAS 関数を使用した場合 正常動作しない アプリケーションが RAS 関数を使用している時には Connection Manager からのアクセスが失敗してしまい 正しく動作しない 41

3.3.22 WANSetRASSettingEx, WanSetRasSettingEx GPRS 接続を行うための RAS エントリを設定します DWORD WANSetRASSettingEx( BYTE* szentryname, BYTE* sznumber, BYTE* szserviceprovidor, BYTE* szloginname, BYTE* szpassword, DWORD dwgprsauthtype ) Public Shared Function WanSetRASSettingEx(_ ByVal EntryName As String, _ ByVal Number As String, _ ByVal AccessPointName As String, _ ByVal LoginName As String, _ ByVal Password As String, _ ByVal GPRSAuthType As Int32 _ ) AS Int32 public static Int32 WanSetRASSettingEx( string EntryName, string Number, string AccessPointName string LoginName, string Password, Int32 GPRSAuthType ); 解説 本関数は RAS エントリを設定します ConnectionManager 機能を用いて 接続制御を行います DeviceConfigurationAPI を用いて GPRS 通信を行うための接続を設定します 詳細は下記を参照してください http://msdn.microsoft.com/en-us/library/ms852998.aspx http://msdn.microsoft.com/en-us/library/aa455854.aspx Device Emulator では チェックのみを行い WAN_ERROR_SUCCESS を返します szentryname RAS 接続エントリ名を指定します 42

sznumber 電話番号を指定します NULL を指定した場合は 既定の設定 *99***1# を書き込みます szserviceprovidor GPRS 通信プロバイダ名を指定します szloginname GPRS 通信プロバイダへのログイン名を指定します NULL を指定した場合は 無指定となります szserviceprovidor GPRS 通信プロバイダへのパスワードを指定します NULL を指定した場合は 無指定となります dwgprsauthtype GPRS 通信プロバイダの認証方式を指定します WAN_RAS_AUTH_DEFAULT 自動 WAN_RAS_AUTH_PAP PAP 方式 WAN_RAS_AUTH_CHAP CHAP 方式戻り値 以下の値を返します WAN_ERROR_SUCCESS WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 エラー その他のエラー 43

3.3.23 WANRASConnect, WanRasConnect RAS エントリで GPRS 接続をします DWORD WANRASConnect( LPDWORD LPRASDIALPARAMS DWORD LPVOID LPHRASCONN ) pdwresult, prasdialparam, dwnotifiertype, lpvnotifier, prasconn Public Shared Function WanRasConnect(_ ByRef Result As Int32, _ ByVal RasDialParam As RasDialParams, _ ByVal NotifierType As Def.RasDialNotifierType, _ ByVal Notifier As IntPtr, _ ByRef RasConn As IntPtr _ ) AS Int32 public static Int32 WanRasConnect( out Int32 Result, RasDialParams RasDialParam, Def.RasDialNotifierType NotifierType, IntPtr Notifier, out IntPtr RasConn ) 解説本関数は RAS エントリで GPRS 接続をします ConnectionManagerAPI を用いて GPRS 接続を行います 正常終了した場合は HRASCONN のハンドルを返します ConnectionManager が RAS の管理を行っているため RAS の通信状態を変更する関数を使用しないでください Device Emulator では チェックのみを行い 何も動作しません pdwresult 本関数が正常終了時に 0 を 異常終了時に 0 以外の値を返します prasdialparam 補足を参照してください 44

dwnotifiertype 本は無視します lpvnotifier NULL を指定してください prasconn RAS 接続ハンドルを取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_NETWORK_NOT_AVAILABLE WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー ネットワーク利用不可 DeviceEmulator では発生しません その他のエラー DeviceEmulator では発生しません 補足 RasDialParams 構造体の各メンバを以下のように設定してください dwsize 構造体のサイズを指定してください szentryname WANSetRASSetting 関数で指定したエントリ名を指定してください szphonenumber 本は無視します szcallbacknumber 本は無視します szusername 接続に認証が必要な場合はユーザ名を指定してください szpassword 接続に認証が必要な場合はパスワードを指定してください szdomain 本は無視します 45

3.3.24 WANRASDisConnect, WanRasDisconnect GPRS 接続を切断します DWORD WANRASDisConnect( LPDWORD pdwresult, HRASCONN hcon ) Public Shared Function WanRasDisConnect(_ ByRef Result As Int32, _ ByVal RASConn As IntPtr _ ) AS Int32 public static Int32 WanRasDisConnect( out Int32 Result, IntPtr RASConn ); 解説 本関数は RashangUp 関数を使用して GPRS 接続を切断します 詳細は下記 URL を参照してください http://msdn.microsoft.com/en-us/library/aa377567(vs.85).aspx Device Emulator では チェックのみを行い 何も動作しません pdwresult RashangUp 関数の戻り値を取得します hcon RAS 接続ハンドルを指定します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 エラー その他のエラー DeviceEmulator では発生しません 46

3.3.25 WANRASGetConnectStatus, WanRasGetConnectStatus GPRS 接続セッションのステータスを取得します DWORD WANRASGetConnectStatus( HRASCONN hcon, struct wan_connectstatus* pconnstatus ) Public Shared Function WanRasGetConnectStatus(_ ByRef pconnstatus As RasConnStatusEx, _ ByVal hcon As IntPtr ) AS Int32 public static Int32 WanRasGetConnectStatus( out RasConnStatusEx pconnstatus, IntPtr hcon ); 解説 本関数は RasGetConnectStatus 関数を使用して GPRS 接続セッションのステータスを取得します 詳細は下記 URL を参照してください http://msdn.microsoft.com/en-us/library/aa920162.aspx Device Emulator では チェックを行ない正しければ WAN_ERROR_SUCCESS を返します ステータスは固定値を返します hcon RAS 接続ハンドルを指定します pconnstatus 接続ステータスを取得します 取得する値は WANGetCurrentOperator 関数を参照してください 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_BADPARAM WAN_ERROR_FAIL 正常終了 エラー その他のエラー DeviceEmulator では発生しません 47

3.3.26 WANSmsOpen, WanSmsOpen SMS 操作を行うために初期化を行います DWORD WANSmsOpen( HANDLE* hsms, DWORD dwflag, HANDLE* phmessageavailableevent ); Public Shared Function WanSmsOpen(_ ByRef SMSHandle As IntPtr, _ ByVal Flag As Def.SmsModes, _ ByRef MessageAvailableEvent As IntPtr _ ) AS Int32 public static Int32 WanSmsOpen( out IntPtr SMSHandle, Def.SmsModes Flag, out IntPtr MessageAvailableEvent ); 解説 本関数は SMS 操作を行うために初期化を行います SMS 操作を行う場合は 必ず最初に本関数を実行してください Device Emulator では チェック後 WAN_ERROR_SUCCESS を返します hsms SMS ハンドルを取得します dwflag SMS をオープンするモードを指定します OR 指定で複数指定可能です WAN_SMS_MODE_RECEIVE 受信操作 WAN_SMS_MODE_SEND 送信操作 phmessageavailableevent メッセージ受信時 (WAN_SMS_MODE_RECEIVE 指定時 ) に シグナル状態になるイベントを取得します イベントがシグナル時に メッセージを受信しています イベントはイベント状態の調査のみ使用できます イベントの変更および開放を行わないでください 戻り値 以下の値を返します WAN_ERROR_SUCCES 正常終了 48

WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_BUSY WAN_ERROR_FAIL SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 他プロセスでハンドルオープン済エラー その他のエラー 49

3.3.27 WANSmsClose, WanSmsClose SMS ハンドルを開放します DWORD WANSmsClose( HANDLE hsms ); Public Shared Function WanSmsClose(_ ByVal SMSHandle As IntPtr _ ) AS Int32 public static Int32 WanSmsClose( IntPtr SMSHandle ); 解説 本関数は SMS ハンドルを開放します SMS 操作を終了する場合は 必ず本関数を実行してください Device Emulator では 何もせずに WAN_ERROR_SUCCESS を返します hsms SMS ハンドルを指定します 戻り値 以下の値を返します WAN_ERROR_SUCCESS WAN_ERROR_ILLIGAL_HANDLE WAN_ERROR_FAIL 正常終了 不正なハンドル その他のエラー 50

3.3.28 WANSmsSetSMSC, WanSmsSetSmsCenterAddress SMS センタのアドレスを設定します DWORD WANSmsSetSMSC( HANDLE WAN_SMS_ADDRESS* ); hsms, psmsc Public Shared Function WanSmsSetSmsCenterAddress (_ ByVal SMSHandle As IntPtr, _ ByVal psmsc As WanSmsAddress _ ) AS Int32 public static Int32 WanSmsSetSmsCenterAddress ( IntPtr SMSHandle, WanSmsAddress psmsc ); 解説 本関数は SMS センタのアドレスを設定します Device Emulator では 何もせずに WAN_ERROR_SUCCESS を返します psmsc SMS センタを指定します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_ILLEGAL_HANDLE WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 不正なハンドル その他のエラー 51

3.3.29 WANSmsGetSMSC, WanSmsGetSmsCenterAddress SMS センタのアドレスを取得します DWORD WANSmsGetSMSC( HANDLE WAN_SMS_ADDRESS* ); hsms, psmsc Public Shared Function WanSmsGetSmsCenterAddress (_ ByVal SMSHandle As IntPtr, _ ByRef psmsc As WanSmsAddress _ ) AS Int32 public static Int32 WanSmsGetSmsCenterAddress ( IntPtr SMSHandle, out WanSmsAddress psmsc ); 解説 本関数は SMS センタのアドレスを取得します Device Emulator では 何もせずに WAN_ERROR_SUCCESS を返します hsms SMS ハンドルを指定します psmsc SMS センタのアドレスを取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_ILLEGAL_HANDLE WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 不正なハンドル その他のエラー 52

3.3.30 WANSmsRecvMessage, WanSmsReceiveMessage SMS メッセージを受信します DWORD WANSmsRecvMessage( HANDLE hsms, WAN_SMS_ADDRESS* psmsasmscaddress, WAN_SMS_ADDRESS* psmsasourceaddress, SYSTEMTIME* pstreceivetime, BYTE* pbbuffer, DWORD dwbuffersize, BYTE* pbproviderspecificbuffer, DWORD dwproviderspecificdatabuffer, DWORD* pdwbytesread ); Public Shared Function WanSmsReceiveMessage(_ ByVal hsms As IntPtr, _ ByRef psmsasourceaddress As WanSmsAddress, _ ByRef pstreceivetime As DateTime, _ ByRef pbbuffer As String, _ ) AS Int32 public static Int32 WanSmsReceiveMessage( IntPtr hsms, out WanSmsAddress psmsasourceaddress, out DateTime pstreceivetime, out string pbbuffer ) 解説 本関数は SMS メッセージを受信します 受信メッセージが指定したサイズより大きい場合は メッセージサイズのみを取得し WAN_ERROR_BUFFER_ERROR を返します その場合は メッセージサイズをもとにバッファサイズを変更し 再度受信してください Device Emulator では 何もせずに WAN_ERROR_NOMAIL を返します hsms SMS ハンドルを指定します psmsasmscaddress wan_sms_address, WanSmsAddress 構造体を指定します 本は無視します psmsasourceaddress wan_sms_address, WanSmsAddress 構造体を指定します ( 送信元 SMS を取得します ) 53

pstreceivetime 受信時刻を取得します pbbuffer 受信メッセージを格納します dwbuffersize 受信するサイズを指定します pbproviderspecificbuffer プロバイダ固有のデータを取得します 本は無視します dwproviderspecificdatabuffer プロバイダ固有のデータのサイズを指定します 本は無視します pdwbytesread 受信バイト数を取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_ILLEGAL_HANDLE WAN_ERROR_NOMAIL WAN_ERROR_BUFFER_ERROR WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 不正なハンドル メール未受信 バッファエラー その他のエラー 54

3.3.31 WANSmsSendMessage, WanSmsSendMessage メッセージを送信します DWORD WANSmsSendMessage() HANDLE hsms, WAN_SMS_ADDRESS* psmscaddress, WAN_SMS_ADDRESS* pdestinationaddress, BYTE bvalidityperiod, BYTE * const pbdata, DWORD dwdatasize, BYTE * pproviderspecificdata, DWORD dwproviderspecificdatasize, WAN_SMS_DATA_ENCODING DataEncoding, DWORD dwoptions, WAN_SMS_MESSAGE_ID* pmessageid ); Public Shared Function WanSmsSendMessage(_ ByVal hsms As IntPtr, _ ByVal pdestinationaddress As WanSmsAddress, _ ByVal bvalidityperiod As Byte, _ ByVal pbdata As String, _ ByRef pmessageid As Int32 ) AS Int32 public static Int32 WanSmsSendMessage() IntPtr hsms, WanSmsAddress pdestinationaddress, byte bvalidityperiod, string pbdata, out Int32 pmessageid ) 解説 本関数は SMS メッセージを送信します 送信可能な文字は GSM 03.38 文字セットの main character です ( 詳細は補足を参照してください ) Device Emulator では 何もせずに WAN_ERROR_SUCCESS を返します hsms SMS ハンドルを指定します psmscaddress wan_sms_address, WanSmsAddress 構造体を指定し 経由 SMSC を指定します 55

NULL を指定すると 既定の SMSC を使用します (NULL 推奨 ) pdestinationaddress wan_sms_address, WanSmsAddress 構造体を指定し 送信先アドレスを指定します bvalidityperiod メッセージの有効期間を指定します デフォルトは 1 日です 0 to 143 (TP-VP + 1) x 5 minutes (i.e. 5 minutes intervals up to 12 hours) 144 to 167 12 hours + ((TP-VP -143) x 30 minutes) 168 to 196 (TP-VP - 166) x 1 day 197 to 255 (TP-VP - 192) x 1 week pbdata 送信するメッセージを指定します dwdatasize 送信メッセージのサイズを指定します pproviderspecificdata プロバイダ固有のデータを指定します 本は無視します dwproviderspecificdatasize プロバイダ固有のデータのサイズを指定します 本は無視します DataEncoding 文字セットを指定します WAN_SMS_ENCODED_GSM GSM 文字列 dwoptions 予約領域です pmessageid メッセージ ID を取得します 戻り値 以下の値を返します WAN_ERROR_SUCCES WAN_ERROR_NOSIM WAN_ERROR_MODULE_NOT_READY WAN_ERROR_BADPARAM WAN_ERROR_OPERATION_NOT_ALLOW WAN_ERROR_ILLEGAL_HANDLE WAN_ERROR_FAIL 正常終了 SIM 未挿入 モジュール未準備 ( 電源 OFF) エラー 操作未許可エラー 不正なハンドル その他のエラー 補足 GSM 03.38 文字セット一覧表を以下に示します ASCII コードで表示できる文字が使用可能です ( 網掛け部分は使用できません ) 56

57

4. プログラミング上の注意 4.1 GPRS 制御手順 GPRS の制御手順は以下の通りです 58

4.2 SIM 制御 以下のような手順で SIM セキュリティの解除を行ってください 開始 ハンドルの取得 WANSIMInitialize Getting Lock Status! WANSIMGetPhoneLockedState PUK 状態 WAN_SIM_LOCKSTATE_PUK *pdwlockstate ロック状態 PIN 状態 WAN_SIM_LOCKSTATE_PIN ロック解除状態 WAN_SIM_LOCKSTATE_READY エラー PUK 状態である Input PIN CODE! 失敗 * エラー PIN コードが異なる 成功 ハンドルの開放 WANSIMDeInitialize 成功 終了 ロック状態の取得ロック状態を必ず取得してください PIN コードの入力回数には制限があり 試行回数を超えると次の状態に移行します 通常 PIN コードの入力は 3 回まで試行する事ができます この回数をオーバーすると PUK コード入力待機状態に移行します 端末の電源 OFF やリセット または GPRS モジュールの電源 OFF 後は GPRS 使用前に必ずロック状態を取得し 必要な処理を行ってください PIN コードを入力ロックを解除するために PIN コードを入力します 上記のロック状態を取得し 状態に対応した PIN コードを入力する必要があります オペレータより供給される SIM カードにより異なります 59

4.3 GPRS 制御 4.3.1 オペレータ選択手順 開始 接続モード : マニュアル 接続モード : 自動 オペレータ固定設定 オペレータスキャン WANGetOperatorList オペレータリスト 接続できるオペレータが存在している オペレータの選択 接続できるオペレータが存在していない エラー 接続できるオペレータが存在しない 基地局設定オペレータ / 接続モード 接続モード : 自動 WANSetOperatorConnectionMode 終了 接続モードを決定します 接続モードが自動の場合オペレータ名を設定する必要はありません SIM カードに書かれているオペレータに自動接続します 接続モードがマニュアルの場合オペレータのスキャンを行います - 存在するオペレータから接続するオペレータを選択します オペレータ固定 - 固定のオペレータを設定します 接続モードが適応モードの場合マニュアル動作を試みます マニュアル動作で接続できない場合は自動モードに移行します 60

4.3.2 GPRS 接続手順 RAS 接続関数にて GPRS 接続を行います RAS エントリを作成する関数 WAN_SetRASSetting を用意しています この関数を使用して作成したエントリで RAS 接続を行います 接続中は 接続ステータスを取得する関数で 通信ステータスを取得してください ステータスが切断状態になった場合は 切断処理を行ってください 61

4.4 SMS 制御 4.4.1 SMS 送信 開始 初期化送信モード WANSmsOpen SMS センタの設定 WANSmsSetSMSC ショートメッセージ送信 WANSmsSendMessage * 失敗 成功 WANSmsClose 後処理 終了 <<UI>> DISP: 送信エラー DISP 要因 62

4.4.2 SMS 受信 63

5. DeviceEmulator Device Emulator 上で本ライブラリを正しく動作させるためには 以下のファイルが必要です SIM.ini Module.ini Operator.ini OperatorList[n].ini ([n]:0-9) ファイルはあらかじめ以下のフォルダにインストールされています Storage Card WAN 64

5.1 SIM.ini SIM カード情報を保存するファイルです SIM.ini のサンプルを以下に示します [SIM] INSERTED=1 LOCKED_STATE=1 LOCKED_ENABLE=1 PIN_CODE="1111" PUK_CODE="2222" PIN_COUNTER=3 PIN_COUNTER_MAX=3 PUK_COUNTER_MAX=10 IMSI="0987654321" TELNUM="0426395155" [SIM] SIM カード情報セクション INSERTED SIM カードの未挿入 / 挿入済を設定します 0 : 未挿入 1 : 挿入済 ( 既定値 ) LOCKED_STATE SIM ロック状態を設定します 0 :UNLOCK 1 :PIN state( 既定値 ) 2 :PUK state LOCKED_ENABLE SIM ロックの有効 / 無効を設定します 0 : 無効 1 : 有効 ( 既定値 ) PIN_CODE PIN コードを文字列で設定します ( 既定値 : 123456789 ) PUK_CODE PUK コードを文字列で設定します ( 既定値 : 111111111 ) PIN_COUNTER PIN/PUK コードの入力可能回数を数値で設定します ( 既定値 :3) PIN_COUNTER_MAX PIN コードの入力試行回数の初期値を数値で設定します ( 既定値 :3) PUK_COUNTER_MAX PUK コードの入力試行回数の初期値を数値で設定します ( 既定値 :10) IMSI 識別番号を文字列で設定します ( 既定値 : 0987654321 ) TELNUM 電話番号を文字列で設定します ( 既定値 : 0426395155 ) 既定値は ini ファイルが存在しない場合に適用する値です 65

5.2 Module.ini WANGPRS モジュールの情報を保存するファイルです Module.ini のサンプルを以下に示します [MODULE] VENDOR="CASIO" NAME="XT75-EMULATE" REVISION="0.0.0.0" [MODULE] モジュール情報セクション VENDOR 製造メーカ名を設定します ( 既定値 : CASIO?? ) NAME デバイス名を設定します ( 既定値 : XT75-EMULATE ) REVISION リビジョンを設定します ( 既定値 : 0.0.0 ) 既定値は ini ファイルが存在しない場合に適用する値です 66

5.3 Operator.ini 基地局の受信電波強度を保存するファイルです Operator.ini のサンプルを以下に示します [OPERATOR] RSSI_MIN=-113 RSSI_MAX=-53 RSSI=-70 [MODULE] オペレータ情報セクション RSSI_MIN 受信電波感度の最小値 [dbm] を数値で設定します ( 既定値 :-113) RSSI_MAX 受信電波感度の最大値 [dbm] を数値で設定します ( 既定値 :-53) RSSI 受信電波感度 [dbm] を数値で設定します ( 既定値 :-70) 既定値は ini ファイルが存在しない場合に適用する値です 67

5.4 OperatorList[n].ini モジュールがオペレータをスキャンする場合に使用する情報を保存するファイルです OperatorList[n].ini のサンプルを以下に示します [OPERATORINFO] LONGNAME="o2 - de" SHORTNAME="o2 - de" ID="26207" [OPERATORINFO] オペレータ情報セクション LONGNAME 基地局名を 32 文字以内の文字列で設定します SHORTNAME 基地局名を 16 文字以内の文字列で設定します ID 基地局の ID を 16 文字以内の文字列で設定します 既定値はありません ini ファイルが存在しない場合は 基地局が存在しない状態となります 68

カシオ計算機お問い合わせ窓口 製品に関する最新情報 製品サポートサイト ( カシオペア ハンディターミナル ) http://casio.jp/support/ht/ カシオ計算機株式会社 151-8543 東京都渋谷区本町 1-6-2 TEL 03-5334-4638( 代 )