Node.jsでConnect Bridge経由でExchangeのカレンダーにアクセスする

Node.jsでConnect Bridge経由でExchangeのカレンダーにアクセスする

Ana NetoConnectors, Technical Leave a Comment

Microsoftは常に.NET言語で簡単に使用できるシステム用のAPIとSDKを持っています。

Node.js アプリケーション、特に Microsoft Windows プラットフォーム上でホストされていないアプリケーションからこのような Microsoft ベースのシステムにアクセスすることは、より厄介なことかもしれません。

通常、APIやSDKと一緒に公開されているWebサービスがあると言って、反対するかもしれませんが、心の中では、すぐに迅速かつ効率的な方法でそれらを使用する準備ができていますか?私はあなたがいくつかの学習曲線の遅延を期待しているに違いありません。

単純なSQL文の実行によって、主要なビジネスシステムのデータを作成、取得、更新、削除できる統合プラットフォームがあれば、もっと簡単だと思いませんか?CRUD操作はデータの整合性を脅かすのではないか?

事実、この可能性は存在する。 Connect Bridge このチュートリアルで使用するConnecting Softwareのプラットフォームです。これは商用ツールですが、無料で試用版にアクセスできます。試してみませんか?

はじめに

Connect Bridgeのトライアルを要求し、ダウンロードしてライセンスを有効化するには、以下の手順に従ってください。 チュートリアルビデオ.

また、Node.jsがインストールされているマシンも必要です。CentOS 7.x ディストリビューションが動作する Linux マシンでデモを行います。

環境を整える

ここでは、お気に入りのLinuxディストリビューションを選んだと仮定する。最初のステップは、あなたの環境にNode.jsをインストールすることだ。CentOSでは、私のお気に入りのパッケージ・マネージャーであるYumを使用した。もしNode.jsのインストール方法がわからない場合は node.jsのデプロイメントガイドページ.

次に、ターゲットシステム、例えば Microsoft Exchange に接続する必要があります。このためには、Connect Bridge Management Studioを実行して  

  1. Exchange のアカウントを追加します([Accounts]-[Add account])。アカウントを追加するには、Microsoft Exchangeコネクタを選択し、Exchangeログイン認証情報を使用する必要があります。 
  2. New Query オプションを開き、Connection Browser を開きます。Exchange コネクタを見つけ、DefaultConnection が表示されるまで展開します。DefaultConnection を右クリックし、Get Connection string を選択します。スクリプトに渡すために必要なので、ODBC 接続文字列をコピーします。 
  3. Exchangeで必要なものにアクセスするクエリをテストするには、新しいクエリオプションを使用します。 Pデータベースを直接使用しているかのように見えますが、そうではないことに注意してください。Connect Bridge は API にアクセスして、あたかもデータベースであるかのように表示しています。クエリを作成したら、それをスクリプトに渡す必要があるのでコピーしてください。 

解決策


更新情報:下記のConnect Bridgeプレイグラウンドのサービスは終了しました。この記事は近日中に更新される予定です。

もしあなたのNode.js統合プロジェクトにConnect Bridgeを使用したいとお考えでしたら、以下にコメントを残すか、弊社に直接お問い合わせください。 専門家.


この解決策のためのプロデュアは以下の通りである。

  1. ソリューション用のフォルダを作成する。わかりやすいように「nodearticle」と名付けました。
  2. nodejsアプリケーションのマニフェストファイルを作成します。ファイル名はpackage.jsonです。以下のファイルの内容を探します。
{
  "name"."nodejsExchangeDemo"。
  "version"."0.0.1",
  "description""nodejs で exchnage カレンダーにアクセスするデモ"
  "main"."app.js".
  "author".{
    "名前"."",
    "email".""
  },
  "dependencies".{
  }
}

3.3. このアクションのためには、マシンがインターネットに接続されている必要があります。お気に入りのシェルを開きます。そして、以下のコマンドを実行して、connect-bridge-nodeというアプリケーションの依存モジュールをインストールします。

npm install connect-bridge-node -save

このアクションの後、connect-bridge-node依存関係がpackage.jsonマニフェストファイルに表示されるはずです。
4.次のステップでは、connect-bridge-node(私が書いた)モジュールのソースコード自体を少しだけ利用します。test.jsファイルを モジュールの github リポジトリ.と、以下のようになるように修正します(コードコメント自体にコードの説明があります)。

//モジュールの依存関係を要求し、接続パラメータを渡します。
//コネクトブリッジノードの認証情報を取得するには、次のようにしてください。
//の「資格情報を調べるには?
//この記事
var cbnode = require('connect-bridge-node')('pg.connecting-software.com', 4433, 'michalhainc0036'.
					 '29e)5d2bc9044e2c42878A4A63BC6777', 'EX2010_PLAYGROUND_michalhainc0036');
 
//コネクトブリッジ操作のためのエラーハンドラ
関数 onError(err) {
    console.error(err).
}
 
//接続されたイベントハンドラ - 接続に成功した場合に実行されます。
//Connect Bridge統合へ
//サーバのインスタンス
関数 onConnected() {
    console.log('Connect Bridgeに接続しました').
    console.log('Exchangeカレンダーにレコードを挿入中').
    //成功した接続の後は、次のようになります。
	//1つのアポイントメントを作成し、onRecordInsertedを呼び出す
	//その後のコールバック
    cbnode.execute("INSERT INTO [Appointment] (Subject, StartDate, EndDate, Location) "+.
				   "VALUES(?, ?, ?, ?); ".
				   //挿入文のパラメータ
				   ['my appointment', '2015-10-11 10:00', '2015-10-11 10:00', 'Bratislava' ].
				   onRecordInserted, onError) を使用しています。
}
 
関数 onRecordInserted() {
    //Exchangeカレンダーの最初の100件の予約
    //当店のCBプレイグラウンドのアカウントから
    //特定のフィールドのみを取得します
    console.log("Exchangeカレンダーから最初の100件の予定を取得中...")
    cbnode.execute( "SELECT TOP 100 件名, 場所, 開始日, 終了日 "+
					"FROM [Appointment];"
					//空のパラメータ配列
					[], onRecordsRetrieved, onError)。
}
 
//disconnected イベントハンドラ - 切断に成功した場合に実行されます。
//Connect Bridge統合から
//サーバのインスタンス
関数 onDisconnected() {
    console.log('Disconnected')。
}
 
//レコード受信イベントハンドラ - データレコードが受信されたときに実行されます。
//以前に実行されたSQL文をConnect Bridgeから受信しました。
関数 onRecordsRetrieved(result)
{
    console.log(result).
    cbnode.disconnected(onDisconnected, onError).
}
 
//Connect Bridge 統合サーバへの接続を開始します。
cbnode.connect(onConnected, onError)。

5.次のコマンドを使用して、コマンドラインからapp.jsを実行します。


ノードapp.js

6.app.jsスクリプトはCB Playground Exchangeのカレンダーに1つの予定を挿入します。その後、カレンダーから最初の100件の予定を取得します。
7.7. すべてがうまくいった場合は、以下のような出力が表示されるはずです。

Node.jsのExchangeカレンダー

8.そして、voi-laは、CBプレイグラウンドExchangeサーバのOutlookウェブアクセスに表示されているあなたの予約があるはずです。

Node.jsのExchangeカレンダー

自分の資格を調べるにはどうしたらいいですか?

ここでは、あなたの資格を調べるための簡単な手順をご紹介します。

ダウンロード Connect Bridge 遊び場クライアントパッケージ (登録メールにハイパーリンクが貼ってあります)まだ無料遊び場のアカウントをお持ちでない方は、お気軽にご登録ください。
パッケージの内容を展開し、CBQueryAnalyzer.batファイルを見つけて実行します。

Node.jsのExchangeカレンダー

Query Analyzerアプリケーションは、ODBCドライバの登録について尋ねてきます(app.jsノードプロジェクトではなく、アプリのためだけに必要です)。
左側の接続パネルで EX2010 接続を右クリックします。接続の編集」をピック

Node.jsのExchangeカレンダー

Advanced(詳細)」タブに移動し、下線を引いた認証情報をapp.jsスクリプトにコピーする。 この場合は4433である必要があります。

Node.jsのExchangeカレンダー

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.