Morning Girl

Web API, Windows, C#, .NET, Dynamics 365/CRM etc..

CallConnect REST API を使って、PowerBI で通話対応分析レポートを作成してみる(CData REST ODBC Driver)

前回の記事で CallConnect REST をざっと触ってみました。

kageura.hatenadiary.jp

今回は、Microsoft PowerBI と を組み合わせて、レポートを作成しています。

Power BI | 対話型のデータ視覚化 BI ツール

CData REST Driver

f:id:sugimomoto:20190729105724p:plain

続きを読む

CallConnect REST APIを触ってみる

久しぶりに機能・API両面で気になるクラウドサービスがあったので、触ってみました。

コールセンターを手軽に始めることができるSaaS型のクラウドサービスである「CallConnect」です。

https://www.callconnect.jp/

f:id:sugimomoto:20190715234521p:plain

この記事ではざっくりとAPI情報周りのまとめと認証方法、HTTPリクエスト(Postman)からのリクエスト方法についてまとめています。

次の記事では、Microsoft PowerBI から接続する方法について投稿する予定。(準備中)

続きを読む

地方エンジニアが実践するアウトプット継続のための2つの戦略

7月25日(木)に仙台の「タガヤス:東北のITを盛り上げて行きたい!」という志のもと集まった団体で『好きな技術の学び方(ナレッジのI/O)』というテーマで1セッション担当することになりました。

tagayas.connpass.com

はじめは「へー、ちょっとおもしろそう」みたいな感じだったのですが、改めて私の情報発信・アウトプット戦略の棚卸ししたら少し面白いかもなぁと思いながら、これをまとめています。

誰に向けて?

これはあくまで「私」の経験と考え方に基づく、より良い「学び方」「情報発信」「アウトプット」、そして「継続」のための戦略です。それは私が考えるエンジニアとしての生存戦略でもあります。

なので身近に存在している一般的(?)な地方エンジニアの一例として聞くのが吉ですが、なかなかアウトプットを継続できない、アウトプットがうまくできない、と悩んでいる方の一助になればとも思い書いています。なのでどちらかといえば、若手エンジニアや新入社員向けだと思います。

ちなみに、私がどんなアウトプットをしているのか、は以下の記事でざっくりまとめています。

kageura.hatenadiary.jp

続きを読む

Dynamics 365 / CDS ActivityLog(活動ログ)を触ってみる:June 2019 Monthly Update

Dynamics 365 Monthly Update-June で Activity Log(活動ログ)というものが追加されていました!

結構面白い機能なので、記事として残しておきたいと思います。

community.dynamics.com

続きを読む

新しいデータ可視化ソリューション「Reveal」を使ってみた(#Dynamics365 for CE に接続)

UIコンポーネントベンダーであるインフラジスティックス(https://jp.infragistics.com/)から新しいデータ可視化ソリューション「Reveal」の提供が開始されました!

他のデータ可視化ツール(BIツール等)とは違って、自社サービスやアプリケーションに組み込むことを前提に提供されているのが、大きく違う点ですねー!(ここはすごくインフラジスティックスさんらしい。)

どんなソリューションなのか、実際にWeb上で触ってみることができたので、記事としてまとめてみました。

公式サイトは以下から。ここからトライアルも可能です。

revealbi.io

f:id:sugimomoto:20190702125938p:plain

ちなみに、今回の記事では組み込みではなく、シンプルにWeb版で提供されているアプリケーションとしてどんな感じのものか触ってた記録になります。でも、これだけでも組み込んだ時のイメージが結構湧きますね。

https://cdatajbuilds.s3-ap-northeast-1.amazonaws.com/sugimototest/Reveal3.gif

なお、日本ではインフラジスティックスジャパン主催のイベント「Distinct 2019」で正式発表になるみたいです。(と言いながら、このBlogを書いている数時間後に開催です)

connpass.com

続きを読む

#decode19 に参加&登壇してきましたレポート

年に1回開催される Microsoft の技術者向けカンファレンスであるdecode 2019 に参加&登壇してきました!

https://www.microsoft.com/ja-jp/events/decode/2019/default.aspx

f:id:sugimomoto:20190603214538p:plain

本当は去年 CData Software Japan のスポンサー枠で出展・登壇する予定だったのですが、私用で急遽参加できなくなっていたので、リベンジも兼ねて行ってきました!

  • 私のセッション:誰のための API?
  • 私が参加したセッション:1日目
    • 基調講演 #KN01
    • Azure Data Services で実現するエンタープライズ データ分析基盤解説 #DP04
    • HoloLens を活用した働き方改革! Dynamics 365 Guides・Remote Assist 活用手法と環境構築を解説します #CM05
    • SNS 分析を 20 分で作成! Power Platform の活用術 #PR81
  • 私が参加したセッション:2日目
    • .NET とクラウド ネイティブ ~ 本格化するクラウド移行とそのアーキテクチャ (前編) #DT07
    • デモで魅せます! 近未来の企業システム #SP04
    • SQL Server 2019 Big Data Cluster 入門 #DP01
    • C# ドキドキ・ライブコーディング対決 @ de:code - ONLY C#!! Blazor Web 開発バトル - #MW51
  • おわりに
続きを読む

LogicAppsでHTTPコネクタを使う時、SwaggerSpec(OpenAPI)を挟むと楽ができるよというお話

SwaggerってなんとなくAPIを開発する側やAPIを使ってプログラミングする側が嬉しいよねー、っていうシチュエーションで語られることが多いと思うんですが、今ローコードな界隈でも結構役立ちます。

Swagger なにそれ? みたいな方は以下の記事をどうぞ。

bit.ly

その一例がMicrosoftが提供している「LogicApps」での活用です。

https://azure.microsoft.com/ja-jp/services/logic-apps/

f:id:sugimomoto:20190524232549p:plain

LogicAppsではフローチャートを描くようにGUIベースでデータ統合処理を開発することができる、PaaS基盤です。

標準のHTTPコネクタはこんな感じ

LogicAppsは標準でも数多くのSaaSクラウドサービス・DBに接続するためのコネクタが提供されていますが、標準提供以外のWeb APIなどと連携するために「HTTP」コネクタが用意されています。

コネクタを開くと、おそらくPostmanなどを普段使う人にとっては馴染み深い画面が表示されます。 「あー、Method選んで、URI書いて、ヘッダー書いて、URLパラメータとしてクエリ書けばいいのね。ふむふむ」みたいな人はこれで済みますが、そういったことに馴染みが薄い人はなかなか大変です。

(知っている人でもちまちまドキュメントからコピペしてくるのは面倒だと思う)

f:id:sugimomoto:20190524232558p:plain

せっかくなのでこのAPIを通じてCustomer情報を取得して、Dynamics 365 に取引先担当者を作るための処理をGIF動画に撮ってみました。

https://s3-ap-northeast-1.amazonaws.com/cdatajbuilds/sugimototest/LogicApps/NormalHTTPRequest.gif

URLやヘッダー、パラメータを手打ちしなければいけず、また取得した本文も一度JSON解析をしなければいけないのが若干面倒ですね。(慣れてしまえばそんなことも無いかもだけど)

そこで HTTP + Swagger を使おう

そこで、Swagger ベースで公開されている API であればさくっとHTTPリクエストが使えるようになる「HTTP + Swagger」を使ってみます。

f:id:sugimomoto:20190524232616p:plain

https://s3-ap-northeast-1.amazonaws.com/cdatajbuilds/sugimototest/LogicApps/SwaggerHTTPRequest.gif

今回使うAPIは以下のとおりです。顧客情報であるCustomerリソースを取得・作成・更新・削除するエンドポイントを備えています。

https://decodeapiserverdemo.azurewebsites.net/api.rst

f:id:sugimomoto:20190524232624p:plain

このAPIの作り方は、以下のURLから。

kageura.hatenadiary.jp

このAPIではSwaggerで作られているのと同時にSwagger Specを取得するためのエンドポイントもサポートしています。以下のURLでアクセス可能。

https://decodeapiserverdemo.azurewebsites.net/api.rsc/@1q0E5n7v8V1k4r1U5g0e/$swagger

f:id:sugimomoto:20190524232711p:plain

これを「HTTP+Swagger」に取り込むと

f:id:sugimomoto:20190524232717p:plain

こんな感じで、APIの機能をリストアップ

f:id:sugimomoto:20190524232725p:plain

URLパラメータや認証処理なんかもさくっと選択して入力することができます。

f:id:sugimomoto:20190524232745p:plain

また予めレスポンスオブジェクトのフォーマットがわかっているのでそのままValueを取り出して、値を設定することができます。

f:id:sugimomoto:20190524232753p:plain

注意点

Swaggerを取り込むためのURLはCORSが許可されていないとLogicAppsがアクセスできないです。

もし、CORSが許可されていない場合は、Azure Storeageに配置してCORSを許可する方法があります。(ただちょっと面倒か)

Reference

docs.microsoft.com