かずきのBlog@hatena

日本マイクロソフトに勤めています。このブログは個人ブログなので、ここに書いている内容は個人的な意見で会社の公式見解ではない点にご注意ください。好きなものは XAML と C# 。苦手なものは型の無い言語です。

Azure

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 あたりで行けるはずですが私の環境は以下のような感じで…

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

やってみた。実用に耐えうるかはわからないけどメモ。 環境構築 node.js 8.11.x(LTS) Azure Function Core Tools v2(preview) VSCode Azure 拡張機能 Azure Functions 拡張機能 TypeScript 3.0 npm install -g typescript やってみよう Visual Studio Code …

Azure Functions で clova-cek-sdk-nodejs を使ってみよう

前試したときはダメだったのですが azure-function-express というモジュールが先日 v2.0.0 にアップデートしてたので試してみました。環境は以下のような感じです。 Azure Functions Core Tools 2.0.1-beta.38 node.js v8.11.4 ただ、前と同じでノーレスポ…

Clova Extensions Kit のチュートリアルを Azure で動かす手順

Clova Extensions Kit のチュートリアルにサイコロをふってもらうやつがあります。 これを動かしてみましょう。 まず、ドキュメントにある通り clone してきて npm install までやります。 git clone https://github.com/line/clova-extension-sample-dice.g…

Google Assistant アプリの開発のバックエンドに Azure Functions を使おう

ということでいってみようと思います。 Dialogflow で作業 これは特に Azure に依存した話しではないので置いておいて適当にインテントとか作ります。 Azure Functions で作業 ポータルでぽちぽちやってもブラウザ上でコーディングできるのですが、今現在で…

Azure Functions で LINE Clova の簡単な Extension を作成するを C# でやってみた

LINE Clova の スキルが開発できるようになりましたね!ということでドキュメントを見ると node.js でやってみようぜ!ってノリで紹介されてます。 clova-developers.line.me 今回は、ここの node.js で作ってるサーバーサイドを Azure Functions + C# の組…

Azure Functions v2 で MSDeploy 時にファイルがロックされてるエラーが出る

ぼちぼち Azure Functions v2 を使い始めてみよう(まだ preview だけど)と思ったら Visual Studio からの再デプロイに失敗しちゃう…。 DLL がロックされてるらしくて Function App を停止してもダメでした。回避方法はアプリケーション設定に以下の値を追…

Azure Functions の Durable Functions を使って恋人を作ろう

Firebase って使うと色々な効能があるというのを見かけたんです。 Firebaseすごすぎるプレゼン聞いてる pic.twitter.com/tkXHFBRhSY— Tecco@新宿の暇人 Go (@tecco_master) July 5, 2018 じゃぁ Azure Functions を使ってこれらのメリットのどれか実現できな…

Google アシスタントアプリを開発する時に Fulfillment の先を C# で開発する方法(スマートスピーカーを遊びたおす会での LT 内容)

別に C# じゃなくても開発できるんですが個人的に一番好きな言語なので。 Fulfillment は決まった形の JSON でやり取りするだけの、ただの webhook なので POST を受け取る webhook が使えれば何でもいいです。 Azure のアカウントを作る とりあえずそこそこ…

ハッカソンで使い勝手の良さそうな Microsoft のサービス

ハッカソンではすごいスピードですごいものを作らないといけないので、結構既存サービスをうまく使って独自部分の実装に注力できるようにしておかないといけないというのがありますよね。 ということで、ハッカソンでパッと使えて割とすごいサービスをいくつ…

ngrok で Azure Functions のローカルで実行しているエミュレーターにインターネットからアクセスできるようにしてみよう

いつも忘れるのでメモです。 ngrok 使うとローカルのサーバーを簡単にインターネットからアクセスするためのおぜん立てをしてくれる! 開発中のお供に便利です。例えば Google Assistant 対応アプリ作るときに Dialogflow 使ってると Webhook を指定できるの…

Google Home の Hello world を Azure も使って書いてみよう

本日以下の勉強会に参加してきました。 smarthacks.connpass.com なんとなく Google Home 対応アプリの作り方の雰囲気がわかったので復習もかねてやってみたいと思います。 ちなみに Azure 使います。 Dialogflow で Agent を作成 以下のページに移動して Si…

C# で何か出来るのか?まとめてみた

C# は好きな言語です。C# 1.0 が 2002 年 4 月に出てからもうすぐ16 年!?になろうとしています。 今でも結構イケてる部類にランキングしてると個人的に思ってる C# ですが何が出来るのか?というのをまとめてみたいと思います。C# をこれから始めようと思…

Azure Functions の Proxies が GA したので試してみよう!

こちらの記事は、Qiita に掲載した Microsoft Azure Tech Advent Calendar 2017 の企画に基づき、執筆した内容となります。 カレンダーに掲載された記事の一覧は、こちらよりご確認ください。 はじめに みなさん Azure Functions 使ってますか? Visual Stud…

Azure Redis Cache を使ってみた

Azure Redis Cache そういえばコレ触ってみたいと思ってたんですよね。 Redis Cache 作り方 ポータルからぽちぽちでいけました。ハマりどころはないでしょう多分。 今回は検証用なのでプランはBASICにしました。本番ではStandard以上を使うことになるんでし…

Azure Functions でスロットを使ってみよう(プレビュー)

Azure Functions は、まだスロットに正式対応していません。現時点ではプレビュー扱いです。 ということで早速使ってみましょう。 スロットの有効化 Function App を作ってポータルで開きます。 そして Function settings を開いてスロットのプレビューをオ…

Azure Functions で Application Insights のアラートを使ってみよう

先日 Azure Functions で Application Insights の連携について書きました。 ということで今日はアラート使ってみようと思います。 Application Insights でアラート アラートとかAlertとかドキュメントでは書かれていますがポータル上では警告です。はい。 …

Azure Functions のログを Application Insights で見てみよう

Azure Functions のポータルのログを見るための仕組みっぽいモニターを開いたら Application Insights の使用をお勧めされたので使ってみます。 Azure Functions の作成時に Application Insights の ON/OFF が指定できるので、そこで指定するのが一番楽です…

Azure Functions のログを見てみる

Azure Functions で吐かれるログはポータルからリアルタイムに見ることが出来ますね。 これはこれで開発時に嬉しいのですが、じゃぁ運用時に障害発生したときに見るログとかはどうすればいいの?と思ってみてみました。 最初はApp Serviceのログの仕組みが使…

Azure Functions で Service Bus の Topic 使ってみたよ(1つの関数の後に複数の関数をキックしたいみたいなのに使える)

Azure Functions で1つの処理をキックしたとします。 処理をキックしたあとに後続に処理結果を渡して続きの処理をしてほしいとします。 後続が1つなら Storage Account の Queue に Message を投げ込んでおけば、後続の処理は QueueTrigger でキックされる関…

Azure Functions のプランによる違いメモ

2017/08/19 時点の自分用メモです。 詳細は、ドキュメントを確認してください。 https://docs.microsoft.com/ja-jp/azure/azure-functions/ Azure Functions では作成時にプランを選べます。選べるプランは2つ。 従量課金プラン App Service プラン 従量課金…