himanago

Azure・C#などのMS系技術やLINE関連技術など、好きな技術について書くブログ

C#

【GitHub Codespaces + LINE OpenAPI + azd】最新の機能をサポートした C# SDK で LINE Bot 開発が始められるテンプレートを改良しました

昨年末、アドベントカレンダー記事用に実験的に「GitHub Codespaces + LINE OpenAPI による C# での LINE Bot 開発がすぐ始められるテンプレート」を作っていました。 himanago.hatenablog.com 明日このハンズオンイベントをやるので(準備がギリギリすぎる…

GitHub Codespaces + LINE OpenAPI による C# での LINE Bot 開発がすぐ始められるテンプレートを作ってみた

はじめに この記事は 「LINE DC Advent Calendar 2023」 19日目の記事です。 Azure には Azure OpenAI Service があり、LINE Pay Bot からも使いたい、そして Azure では C# での開発が何かと便利。 Azure と C# で LINE Bot 開発したくなるのは必然です。 …

2021年前半のLINE系登壇振り返り(DurableBotEngineとかセキュリティとか)

はじめに だいぶご無沙汰です。 去年のおわりごろから本業が忙しかった&コロナ禍でプライベートな時間があまり作れず、なかなか勉強会にも参加できない・アウトプットできない日々が続いておりました。 それでも LINE Developer Community 中心に登壇等々で…

Azure Blob Storage の SAS トークンを使って LINE Bot でセキュアに画像を送る

はじめに Messaging API では、画像や動画の送信などの際、それらが置かれたパブリックな URL を指定することで実現します。 Azure を用いて LINE Bot を開発する場合は、画像等のリソースをパブリックアクセスレベルを「コンテナー」にした Blob Storage コ…

Azure Communication Services のサンプルアプリで LINE Bot とやりとりできるようにしてみた

はじめに 最近発表されて注目されている Azure Communication Services。 これは昨今の情勢でかなり使われるようになった Microsoft Teams の裏側のしくみを、Azure 上で提供してくれるサービスで、これを使うと Teams のようにチャットや Web 会議ができる…

LINE Bot を Azure Functions (C#) で作る際のオウム返しテンプレ

概要 以前 JavaScript + Azure Functions で作る LINE Bot のテンプレについて書きましたが、C# のもなかったじゃん…ということで書いていきます。 himanago.hatenablog.com いつも横着していたロギングの部分をちゃんと DI で書いてみたので、今後はこれを…

XAML Rich Menu Maker を活かして C# で効率的な LINE Bot 開発

はじめに LINE Bot を作る場合、コミュニティ製 の SDK で C# で作ることができますが、「リッチメニュー」も C# で作ることができます。 XAML Rich Menu Maker 下記の記事にあるとおり、Visual Studio の拡張機能でリッチメニューを XAML で組めます。 pier…

【Uno Platform】WebAssembly 実行時の JavaScript 相互運用

Uno Platform は、UWP を iOS/Android や WebAssembly で動くようにするものですが、WebAssembly で Uno を動かすときには、C#/XAML で足りない部分を補ったり、既存の JavaScript ライブラリ/コードを併用したりするために、C# と JavaScript を相互に呼び…

#技術書典 8 にて「牛めし警察で学ぶ Uno Platform」を頒布します!

「ひらりん, ちょまど, かずき」というサークル名で、 技術書典8 (IT や機械工作などの技術書を専門とする同人誌即売会) で本を出します! techbookfest.org サークル名の由来 ご覧のとおりです!私(ひらりん)と、Microsoft の ちょまどさん、かずきさん。…

Azure Functions の DI でエラー

この記事は Microsoft Azure Advent Calendar 2019 の 17日目の記事…ではありません(笑) qiita.com アドカレ記事は別途書いてます。今日中には上げます! [追記] 書きました↓ Durable Functions を使ってコードのみでアンケート回答に便利な LINE Bot を簡…

C# によるスマートスピーカースキルのクロスプラットフォーム開発ライブラリ「XPlat.VUI」の紹介

本記事は、Qiita「スマートスピーカー Advent Calendar 2019」の3日目のエントリです。 qiita.com この記事について 現在個人的に開発をして公開している、C# で Googleアシスタント、Alexa、Clova に対応したクロスプラットフォームなスキルを効率よく開発…

スマートスピーカーを遊びたおす会 vol.8 で少しだけしゃべりました

半月以上たってしまいますが、下記イベントにて、少しだけ話しました。 kotodama.connpass.com 以前、XPlat.VUI という C# でAlexa / Google Assistant / Clova スキルをクロスプラットフォームで開発できる共通化ライブラリを作って公開しましたが、それを…

クロスプラットフォームスマートスピーカースキル開発ライブラリ「XPlat.VUI」をリリースしました

はじめに 技術書典7 で本を出しました。この振り返りはまたのちほどしますが… techbookfest.org ※電子版はここに置いてます: Microsoft AzureでつくるクロスプラットフォームAIアシスタントスキル - himanago - BOOTH これのなかで、C# で Googleアシスタン…

CEK.CSharp がアップデートで便利になりました

はじめに だいぶ前になりますが、@kenakamu108さんに誘われて、LINE Developer Community の C# SDK 開発にかかわらせてもらっています。 自分は、いつも使っている Clovaスキル開発用のSDKである CEK.CSharp のアップデートをやらせてもらえることになり、…

Googleアシスタントでも ShouldEndSession = true; したい

はじめに ちょっと間が空いてしまいましたが、技術書典7に向けて執筆していた中で見つけたスマートスピーカースキル開発まわりの小ネタを書きます。 今回もGoogleアシスタント+C#です。 ShouldEndSession タイトルに書いた通りなんですが、Alexa と Clova …

Googleアシスタント対応バックエンドを C#+Azure Functions で「簡単に」作る(ProtcolBufJsonResult不要論)

はじめに 今日もスマートスピーカースキル開発まわりの小ネタを。 今日はGoogleアシスタントでいきます。 ProtcolBufJsonResult 的なクラス Googleアシスタント用のバックエンドを C# + Azure Functionsで作るときの話です。 Azure Functionsでバックエンド…

Alexa.NET を使うなら ResponseBuilder がおすすめ

前置き 技術書典7 で本を出します! Azure && (C# || ノンコーディング) でクロスプラットフォームなスマートスピーカースキル開発する本です。 techbookfest.org いままで試してきたことをまとめたいなぁと思って書いていたのですが、書いているといろいろ…

CEK裏技「無音無限ループ」スキルをストア公開するためには?

はじめに 前回こんな記事を書きました。 himanago.hatenablog.com 今回はその続編として、裏技である「無音無限ループ」を使用した腹話術スキルをストア公開した際の話を書きます。 特に無音無限ループは使い方によっては非常に危険なので、安全性が要求され…

Durable FunctionsとCEK裏技「無音無限ループ」で「テキスト腹話術」を開発しました

はじめに 先日書いた下記記事の、詳細解説その1です。 まずは開発したきっかけとメインの機能の解説です(公開の話はまた次回)。 himanago.hatenablog.com この記事では、 LINE Developer Community : 第 2 回 ボット自慢 LT 大会でLT登壇した資料 Clova腹…

Clovaスキル「テキスト腹話術」の開発とそれにまつわる登壇、ストア公開までの道のり

はじめに 平成最後の月である2019年4月に、スマートスピーカースキルの開発と、それにあわせた登壇をいくつか行いました。 本当は、登壇後すぐにブログを書いておきたかったのですが、4月の終わりごろに自宅に住めなくなり、引っ越し先として契約した家もま…

Python3エンジニア認定基礎試験に合格したので振り返り(C#er目線で感想など)

はじめに タイトルの通りです。昨年末、12/27のことですが、駆け込みで試験を受けてきました。その振り返りです。 「Python 3 エンジニア認定基礎試験」です。 www.pythonic-exam.com 経緯 昨今のPythonの人気・需要の高まりから、「Pythonを勉強したい」と…

LINE BOOT AWARDS 2018にエントリーしてみました&その話を.NET Conf 2018 Tokyoでしてきました

はじめに ここに書くのはだいぶ久しぶりです… 先日、LINE BOOT AWARDS 2018にClovaスキル&LINE Botを開発してエントリーしたので、そのことと、 それについて.NET Conf 2018 TokyoのUnconference枠で話をしてきたので、それについて書いておこうと思います…

【Xamarin.Forms+Cognitive Services】飯テロ防止Twitterクライアント作ってみた

はじめに はやいものでもう11月になってしまいました。今年もあと2か月弱。 研修などが土曜に多い関係上、なかなか土曜に休むことができない日々が続き、土曜の面白そうな技術系イベントにあまり出られず、ちょっと最近フラストレーションがたまっています…

JAZUG 7周年総会で「社内でIoT&AIな農業系チャットボット開発講座をやってみて」というテーマで登壇してきました

はじめに 先日、9/9(土)に行われたJAZUG 7周年総会にて、50分のセッションで登壇させていただきました。 そしてこのたび、そのときのセッション動画が公開されましたので、少し間が空いてしまいましたが、簡単に内容の紹介と振り返りを書いておきたいと思い…

MCP試験(70-483:C#によるプログラミング)を受けてきました

はじめに 先月末、Microsoftの認定資格であるMCPの、「C#によるプログラミング(70-483)」を受けてきました。 今回は受けるにあたっての準備と実際の試験についてなどを書き残しておこうと思います。 動機 この試験をなぜ受けたか、というと理由は3つです。…