ごった煮

色々な事を書いてます

C#

Botのv3対応について

Bot Framework v3への更新に際してかなり大幅な変更があるのでとりあえずベースの部分だけまとめます。 初めに V3対応前の最終バージョンのEmulatorを開くと以下のように警告が出ます。 hereの部分から更新用のリンクに飛べるのでそこで更新しましょう。 v3…

Cognitive Serviceを使う(Vision API編 その6)

画像分析のAPIには、特定の対象を検索するモードの変更的なことができるのでそれをやってみます。 初めに 例のごとくVision APIのSDKを入れておいてください 実装する 今回は、ドメインモデルというものを使用して分析モード的な奴を切り替えます。 ドメイン…

Cognitive Serviceを使う(Vision API編 その5)

画像の説明を自動生成できると便利ですよね。ということでVision APIで生成してみます。 初めに 例のごとくVision APIのライブラリをNuGetから入れておいてください。 実装 早速説明を生成してみましょう。 ソースコード 今回も、ローカルのファイルとWebのU…

Cognitive Serviceを使う(Vision API編 その4)

Vision APIには、いい感じに画像のサムネイルを生成してくれる機能があるのでそちらの簡単な使い方です。 初めに 例のごとくVision APIのライブラリをNuGetから入れておいてください。 実装 早速サムネイルを生成してみます サムネイル生成は、スマートクリ…

Cognitive Serviceを使う(Vision API編 その3)

Vision APIには、画像から連想される情報でタグを生成する機能があるのでそれを使ってみます。 初めに 例のごとくVision APIのライブラリをNuGetからインストールしておいてください。 画像のタグについて 画像のタグとは、例えば以下の画像だと家とか芝生と…

Cognitive Serviceを使う(Vision API編 その3)

Vision APIの第三弾です。今回は、OCRで画像から文字列を抜き出してみます。 始めに ライブラリを追加する 例にもれず下記のライブラリを追加します。Microsoft.ProjectOxford.Vision 実装してみる 実装 分析自体は簡単です。 テキストを抜き出す際は、分析…

Cognitive Serviceを使う(Vision API編 その2)

Vision APIを使ってみようその2です。 今回は、C#からライブラリを叩いて画像を分析してみます。早速やってみる ライブラリの追加 NuGetから下記を取得します。Microsoft.ProjectOxford.Vision ProjectOxfordの名前がついちゃってますが最終的にCognitive Se…

Cognitive Serviceを使う(Vision API編 その1)

Project OxfordもといMicrosoft Cognitive Serviceが面白そうなので使い方を簡単にまとめます。 初めに Cognitive Serviceは、複数言語のSDKがありますが、基本的にC#を扱っていきます。 とりあえず今回はサンプルを動かすところまでです。 Vision APIについ…

Bot Connectorのメッセージタイプについて

Bot Connectorで使用するメッセージタイプの概要についてざっくりとまとめます。 メッセージタイプ 規定されているメッセージタイプは、全部で8つあります。 メッセージの中身を定義しているMessage型のTypeフィールドにセットします。 ライブラリにEnum型で…

FormFlowで表示するテキストをカスタマイズする

FormFlowには、表示するテキストをカスタマイズできる属性が提供されているのでそれの内容についてです。 カスタム例 属性は、宣言するEnum型に以下のような感じでくっつけます。 [Prompt("ハンバーガーを選んでください")] public Burger? ハンバーガー; す…

複雑な受け答えをするBotを実装する

Botを使って注文を取るといった複雑な受け答えを実装する場合に便利な機構がBot Frameworkには提供されているのでそれの使い方についてです。 初めに 今回は、公式が出しているサンドウィッチの注文を受けるBotをベースに進めます。 FormFlow 以前は、Dialog…

DirectLineの新しい会話を始める

DirectLineでのBotとの会話中に、現在の会話とは別スレッドの会話を同じBotと別途始める方法についてです。 初めに 別スレッドでの会話を行う場合、認証トークンの再取得が必要ですが、DirectLine用の最初のトークンを引き回すと会話がリセットされるので、…

Botの認証トークンを更新する

DirectLineで取得するトークンは、原則30分で有効期限が切れるのでそれを更新する方法についてです。 初めに この操作もREST APIを呼び出します。 例のごとくSwaggerドキュメントは、ここ です。 APIの仕様 以下APIの仕様です エンドポイント : https://dire…

REST APIでBotと会話する(メッセージ取得編)

前回でメッセージをBotに送信する部分まで作ったので最後にやり取りを取得する部分を実装してBotとの会話を完成させます。 初めに 例のごとくSwaggerドキュメントは、ここ です。 認証トークンについては、前回の記事 を参照して取得しておいてください API…

REST APIでBotと会話する(メッセージ送信編)

前回REST APIで会話を開始する(認証)部分について触れたので、次に実際に会話する部分の実装をしてみます。 初めに 例のごとくSwaggerドキュメントは、ここ です。 認証トークンについては、前回の記事 を参照して取得しておいてください APIの仕様 以下API…

REST APIでBotと会話する(会話開始編)

DirectLineを使ってのBotとのやり取りを以前まとめましたが、今回はそれをラッパーライブラリなしでやってみます。 初めに 今回の内容は、DirectLineの認証トークンを取得するまでを行います。 ちなみにDirectLine全体のSwaggerドキュメントは、ここ にあり…

Botと自作のアプリで会話する

Bot Frameworkには、Direct LineというRESTで対話する手段とそれを扱うライブラリが提供されているのでその使い方についてまとめます。 接続の準備 今回は、C#のコンソールアプリを使用します。 HttpClientでガチャガチャやるのもありですがとりあえずライブ…

Botのメッセージをおしゃれに見せる

Botのメッセージは、Marakdownで加工ができるのでやってみます。 早速使ってみる 太字text イタリック体 *text* 見出し 見出しは、H1 ~ H5まで対応 # text ## text ### text #### text ##### text 消し線 ~~text~~ 横線 --- リスト リストは二種類です。 * t…

Botからメッセージを返す方法あれこれ

Botからのメッセージは、いくつかのパターンがあるのでそれについて メッセージパターン 普通のレスポンス 何も返さない Postのreturnから以外のメッセージ 大体この3パターンくらいのメッセージを組み合わせるとなんかいろいろできそうです。 実装してみる …

Botにメッセージ解析機能を付ける

Botを強くするためにLUISと組み合わせます。 LUISとBot Framework Bot Frameworkには、LUISと直接やり取りするのを簡単にしてくれるライブラリがあるので難しいことを考えずにLUISを呼び出すことができます。 Botが受け付けたメッセージをLUISに解析させてBo…

状態を持ったBotを作る

少し頭のいいBotを作ってみましょう

Bot Frameworkでシンプルな応答ボットを作ってみる

一番簡単なBotを作ってみましょう

AutoRestを学ぶ

Bot Frameworkのテンプレートに含まれてたAutoRestなるものが非常に気になったのでいろいろまとめです。 ちなみに日本語の資料どころか英語の資料もろくに出てこなかったので誰かまとめてください

Bot Frameworkを試す

Build2016でBot Frameworkが突然発表されたり何かとBotが取りざたされてるのでとりあえず触ってみました。

IoT HubのVisual Studio拡張を使ってみる

IoT Hubの操作を支援するVisual Studioの拡張が出たので使い方のまとめ的な奴です。

UWPで地図を使う

UWPは、ストアアプリの時と違い、Windows Phone時代のようにデフォルトで地図のコントロールが使えるので、GPSの使い方のテストのついでに試してみました。

UWPでバーコードを読んでみる

10 mobileでバーコードバトラー的なものが安く作れないか考えた末にとりあえずバーコードを読む知見を得たのでまとめます。 基本は、Webに転がってるサンプルを流用しますが、それだけだと引っかかった部分がメインです。ちなみに通常バーコードを読むための…

UWPでSQLite.NetとEntity Framework Core 1.0を比較してみた話

Entity Framework 7.0がEntity Framework Core 1.0に名称変更されましたので、いい加減使ってみました。 UWPでローカルDBとしてSQLiteを使う用事が出たのですが、意外とSQLiteをUWPで使う手段は、あるみたいなので どれを使うか悩んだ末ちょっとした比較をし…

UWPのBehaviorを使う

UWP用のBehaviorライブラリが出てきたみたいなのでちょっと使ってみようかと思います。 今までのBehaviorは、Blendのライブラリを参照に追加したりといった方法で使っていましたが、UWP版は、NuGetから入れられます。 ちなみにソースは、GitHubで管理されて…

XAMLのContentにDataBindingでアイコンフォントを指定する

UWPでアイコンフォントを使用する際にXAMLに直接書かずにBindingでどうにかしたい場合に知らないことが出てきたのでメモとして残します。 UWPなどでアイコンフォントを使いたい場合は、Segoe MDL2 Assetsの文字コードを直接指定して表示する方法があります。…