かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Azure

スマートスピーカーのバックエンドとしての Azure Functions のコールドスタート対策

やろうとしてるのは、この記事の内容を API Management を使ってやってみようというやつです! qiita.com Azure Functions のコールドスタートよりも早い何かを手前に挟んで初回は定型文を返して二回目以降は本番にディスパッチしましょうというアプローチ。…

TypeScript を使ってサーバーレスで WebSocket サーバーを作ってみた

先日 Microsoft Azure のサーバーレスプラットフォームの Azure Functions に SignalR Service bindings の一般提供開始のアナウンスがありました! azure.microsoft.com リポジトリはこちら。 github.com ということで、これもまた先日 Azure Functions Cor…

スマートスピーカーを遊びたおす会で Durable Functions の発表してきました

時間のかかる処理簡単に作れるよ!しかも進捗確認も簡単にできる!!っていうくらいのノリで発表してきました。 発表資料はこちらになります。 #スマートスピーカーを遊びたおす会今日はありがとうございました!☺️私のスライドはこちらですーーGoogle Home,…

Azure Functions の Durable Functions をクロスデバイスアプリケーションのバックエンドとして使おう

個人的に一番好きな Azure の機能の中に Azure Functions があります。 その中でも特に Durable Functions は強い。 複数の処理が組み合わさって長時間にわたって動く可能性のある処理を簡単にコードで書けるのが特徴です。 例えば以下のドキュメントからの…

Azure の更新情報って何処で仕入れてるの??

というのに対して自分が見てるところをメモっておきます。 非公式ソース まず見やすいのがお馴染みのブチザッキ。 blog.azure.moe Azure 関連の最新情報に加えて、各種マイクロソフトの海外イベントの翌朝には内容がまとまってる神サイトです。 凄く大変なこ…

Azure DevOps に CLI が来た(プレビュー)

まじで。 azure.microsoft.com Azure CLI v2.0.49 以上が入ってれば以下のコマンドで入ります。 az extension add --name azure-devops こんなメッセージが出れば OK The installed extension 'azure-devops' is in preview. あとは、まだログインしてなかっ…

Azure Functions を TypeScript でやってみた「ハローワールドから Durable Functions まで」

公式のブログはこちら。 azure.microsoft.com 2019/02/25 くらいに出た Azure Functions Core Tools の 2.4.401 のリリースノートに - Add TypeScript templates の文言が。 これは試すしかないでしょう。ということでアップデートして func init してみます…

Azure Bot Services でボットを公開するための最小のコードと手順

Azure Bot Services にボットを公開する最小のコードと手順をやってみようと思います。 というのも、必要最低限を把握してないとその他の応用の部分がどのコードなのかっていうのが把握しにくいと思うので自分は最低限のコードを組むのは一回流行ってる気が…

Azure Bot Services の LINE のチャンネルを試してみた

はじめに とりあえず LINE に繋ぐ手順を試してみました。 本文 昨日みつけた LINE のチャンネルを試してみました。ドキュメントもあるのでそっち見てもOK docs.microsoft.com LINE の Developers Console で適当にプロバイダーを作ります(すでにあるならそ…

Azure Bot Services に LINE のチャンネルが追加されてる?

今見てて気づいたのですが LINE がしれっと増えてますね。 これで LINE のボット開発も捗るってもんですね!

Bot Framework のサンプルの QnA Maker の Active Learning をデプロイする方法

最近追加された Active Learning ですが簡単に言うと利用状況を見て、この QA にはこんな質問追加したらいいんじゃないの?っていうのをポータルに出してくれるみたいですね。 docs.microsoft.com 暗黙的フィードバックと明示的フィードバックがあるみたいで…

Bot Framework SDK v4 を使うときの 2019/02/12 時点で最適だと思う ConfigureServices メソッドの書き方

なんというか Bot Framework SDK v4 は v3 と違って細かくカスタマイズ可能な部品が提供されてて、それを組み合わせて使うという感じになってるので、より挙動のカスタマイズがしやすくなっていたりします。 例えば LUIS や QnA Maker との連携機能の提供の…

Microsoft Learn の学習用環境(サンドボックス)の有効化方法

やってみようと思います!というのも先日こんなコメントがついたので https://docs.microsoft.com/ja-jp/learn/paths/create-serverless-applications/ 有効化までしてみたいと思います。 ということで、Azure Functionsのサンドボックスを有効化するボタン…

Xamarin.Forms で AI をアプリに組み込んでみよう(UWP, Android, iOS)

Android は TensorFlow、iOS は CoreML、Windows 10 は onnx という感じで各 OS でディープラーニングの学習モデルをサポートするような API が追加されてきてますね! Xamarin.Forms を使えば Android, iOS, UWP アプリの開発が同時に出来る(UI を各 OS ご…

Azure DevOps の Boards と GitHub の連携機能が追加されてる!?

Azure DevOps のプロジェクトの設定画面を開くと Boards に GitHub connections の項目が増えてました(アカウントによってはまだ来てないみたい) このページにあるアップデートがついに来た!!って感じですね。 azure.microsoft.com Connect your GitHub …

Azure App Service で Azure Key Vault がめちゃ簡単に使えるようになりました(プレビュー)

プレビュー機能ですが、Azure Functions とかで Key Vault が凄く簡単に使えるようになってます。 今までは、少しだけとはいえプログラムに手を入れないといけなかった部分を Azure ポータルのアプリケーション設定に指定するだけでよしなにしてくれるように…

Azure Functions の Durable Functions の node 版がリリースされたので遊んでみました

Durable Functions は、個人的に Azure で一番好きな機能なのですが、それが node でも使えるようになりました。 これまでもプレビューであったけど、今回は正式版ということで実践投入行ける感じですね。 これまで、Durable Functions を使おうと思ったら C…

Azure Functions v2 で Python がサポートされました(プレビュー)

プレビューだけど、Azure Functions で Python のサポートが追加されました。 英語ですが、ドキュメントもちゃんとありますね! docs.microsoft.com ドキュメントにも記載がありますが現在サポートされている Python のバージョンは 3.6.x みたいです。3.7 …

Azure Functions on AWS

これは Serverless2 Advent Calendar 2018 の 4 日目の記事です。 qiita.com 前日は miyake さんによる Serverlessconf Tokyo で Durable Functions にコントリビュートしました | PaaSがかりの部屋 でした。 本文 先日、Azure Functions を Docker を使って…

何処でも動くサーバーレスプラットフォーム Azure Functions

この記事は Serverless2 Advent Calendar 2018 の 2 日目の記事です。 qiita.com 本文 最近 Docker でパッケージングしたらどこでも動くが実現してるようなものなので、実質 Docker でパッケージング出来たら run anywhere な感じということです! そして、A…

Azure Functions + Application Insights で POST されたデータのログを残す(C# & JavaScript)

liginc.co.jp なんとなく見かけたので Azure でもやってみましょう。 Azure なら一番簡単に REST API 作るんだったら Azure Functions かなぁ。ログは Application Insights かなぁ。 Azure Functions のドキュメント - チュートリアル | Microsoft Docs Azu…

Azure Functions で Alexa, Google Home, LINE Clova 対応のスキル(アプリ?アシスタント?)を作る方法

スマートスピーカーのスキルは、基本的にスマートスピーカーが受け取った音声をテキスト化する部分、テキストから意図(インテント)とキーワード(スロットとかエンテティとかって言われる)を抜き出すところまで、各スマートスピーカーを提供してくれてい…

Google アシスタントのエージェントを Azure Functions + C# で作る

Dialogflow v2 に対応した C# の SDK が実はこっそりあります。 1.0.0-beta2 (2018/1104 現在) なので正式版ではないですが、きっと近いうちに出ると思う!! 以下のパッケージを入れましょう。 www.nuget.org Visual Studio で追加するときはプレリリースパ…

Azure Functions v2 のプロジェクトを Run-From-Zip 用に固める Azure DevOps 用のビルドの YAML

はじめて YAML でビルド定義したけど簡単でびっくりしました。これは XAML より記述少なくていいわ…。 pool: vmImage: 'VS2017-Win2016' variables: solution: '**/*.sln' projects: '**/*.csproj' testProjects: '**/*Tests.csproj' buildConfiguration: 'r…

Azure Functions に興味を持った人が 0 円(クレカも不要)で実環境で体験する方法

先日開催された Serverlessconf Tokyo 2018 で少しでも Azure Functions 良さそうって思った人が一番手軽に体感できる方法はなんだろうと考えた結果の、これを使えばいいというのがあったので紹介します。 準備するもの パソコン(Win or mac os Linux) お気…

Azure Functions v2 の HttpTrigger の関数を単体テストしたいね

端的にいうと HttpRequest クラスやら IActionResult クラスやらを引数や戻り値に持つもののテストです。 ここら辺を Moq を使ってモックしてみたいと思います。テスト対象は、HttpTrigger を使って作成したデフォルトの関数です。以下のような感じ。 using …

LINE Clova のスキルと Windows 10 の連携

LINE Clova にアカウントリンキングの機能があるので、割と簡単に特定サービスと連携したスキルが作れます。 今回は、これを利用して Microsoft Graph API にある Project Rome を叩いて Windows 10 のアプリを起動してみました。 動作してる様子はこちら。 …

スマートスピーカーで時間のかかる処理を呼び出す方法と実装方法

スマートスピーカーって何処のやつも大体数秒でレスポンス返さないとタイムアウトになってしまいます。 なので、ちょっと時間のかかる外部 API を呼び出したらタイムアウトしてしまいスマートスピーカーがスキルを起動できないなどの定型文を話して終了して…

Azure Functions v2 で設定情報を使う方法

local.settings.json やアプリケーション設定に設定された情報を Azure Functions v2 で使う方法をメモしておきます。 Microsoft.Extensions.Configuration を使います。 ASP.NET Core ではおなじみのやつですね。local.settings.json を使うために Executio…

タイプセーフな Clova Extension の開発環境を求めて on Azure Functions その2

1 つ前の記事ではタイプセーフにしたいと思って頑張った結果 TypeScript にトライしてみました。 blog.okazuki.jp 今回は C# でいってみようと思います。 開発環境 とりあえず Windows, macOS, Linux あたりで行けるはずですが私の環境は以下のような感じで…