ヤマムギ

growing hard days.

*

LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (3)Lambdaからkintoneへレコードを登録する

      2017/08/18

作る部分

Lambdaからkintoneへレコードを登録する部分を作成します。

kintoneテンプレートからアプリを作成する

こちらからkintoneアプリテンプレートをダウンロードしてください。

kintoneにログインします。

※もしもkintoneの開発者ライセンスが間に合わなかった方はkintone30日間トライアルよりトライアル環境を取得してください。

右上の歯車のアイコンから[kintoneシステム管理]をクリックします。

[アプリテンプレート]をクリックします。

[読み込む]をクリックします。

[参照]からダウンロードしたアプリテンプレートのzipファイルを指定して、[読み込む]をクリックします。

アプリが読み込まれました。

家のアイコンをクリックしてポータル画面に戻ります。

画面右の[アプリ] – [+]をクリックしてアプリを新規作成します。

[テンプレートから作成]をクリックします。

先ほど読み込んだアプリがあるので[アプリを作成]をクリックします。

アプリが作成されました。

アプリIDの確認とアプリトークンの発行

作成したアプリを開いてブラウザのURLバーを確認します。

https://****.cybozu.com/k の後にある数字がアプリIDですので控えておきます。
画像の例では 77 がアプリIDです。
「****.cybozu.com」も後で使うのでテキストエディタにコピーしておきます。

アプリの右側にある歯車アイコンをクリックします。

[アイコンと説明]をクリックします。

アプリグループが[Private]になっている場合は[Public]にして[保存]をクリックします。
すでに[Public]になっている場合は[保存]、[キャンセル]、[アプリの設定]のいずれかをクリックして[アプリの設定画面]に戻ってください。

[APIトークン]をクリックします。

[生成する]をクリックして生成されたAPIトークンをテキストエディタにコピーしておきます。
アクセス権は[レコード追加]のみにチェックして[保存]をクリックします。

[アプリを更新]をクリックします。

プログラムのダウンロード

Github-yamamugi_handson_to_kintoneにあります。

こちらのダウンロードリンクからダウンロードしてください。

プログラム解説

一部抜粋

  • StepFunctionsから受け取ったデータを取得します。
  • kintoneに追加するデータをinsert_recordにセットします。
  • requestsモジュールを使ってkintoneのAPI URLにPOSTしています。
  • post_record関数の戻り値を登録したレコードのレコードNoにしているのでそれをStepFunctionsへ返します。

Lambda関数の作成

AWSマネジメントコンソールでLambdaを開いて、[関数の作成]をクリックします。

何も選択せず、[一から作成]をクリックします。

何も選択せず、[次へ]をクリックします。

名前 : 2_1_to_kintone
説明 : ヤマムギハンズオン kintoneへレコード登録
ランタイム : Python 3.6

コードエントリタイプは「.zipファイルをアップロード」でyamamugi_handson_to_kintoneからダウンロードしたZIPファイルをアップロードします。

環境変数
* KINTONE_APP : kintoneアプリのアプリID(例では77)
* KINTONE_DOMAIN : kintoneのドメイン(****.cybozu.comを****だけじゃなくて全部入れてください。)
* KINTONE_TOKEN : kintoneで生成したAPIトークン
* LOG_LEVEL : DEBUG(ログを減らしたい場合は ERRORかINFOを設定します)

既存のロールから手順1と同じlambda_basic_executionを選択します。

必要ないとは思いますが、念のためタイムアウトを5分にしておきます。
[次へ]をクリックします。

[関数の作成]をクリックします。

右上の[テスト]をクリックします。

テストイベントを上記で設定して[保存してテスト]をクリックします。

実行結果に kintone_url として、登録されたkintoneレコードのURLが出力されれば成功です。

そのURLをコピーしてブラウザで表示してみます。

パラメータで渡した電話番号とLINE IDが登録されたレコードが編集モードで開きました。

目次

(1)LambdaからSlackへ通知する1

(2)LambdaからSlackへ通知する2

(3)Lambdaからkintoneへレコードを登録する ←今ここ

(4)Step Functionsで複数のLambdaを実行制御する

(5)LINEからの投稿へ返信と登録処理

(6)Twilioからの電話受付と登録処理

(7)ラッキーコンテンツ


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - event, study , , ,

ad

ad

  関連記事

「JAWS-UG京都 最新のAIを本気で学ぼう」に参加しました

前日 京都タワーの地下のフードホールで運営メンバーのみなさんとご飯食べてました。 …

AWS Summit 2016 Tokyoに参加してきました (Day2)

馬込は非常に良い天気です。 泊まっている部屋が2Fでしたので窓を明けると歩いてい …

ヤマムギ vol.6(勉強会) 「LINEとAWS(Lambda,Step Functions,API Gateway)とTwilioとkintoneでBOTを作ってみるハンズオン」を開催しました

2017/8/18に ヤマムギ vol.6 「LINEとAWS(Lambda,S …

Alexa Day 2018で「kokexaの話」を聞いてきました

スピーカーはサバワ坂本さん これは、私、山下の勝手な印象とか思い込みですが、坂本 …

「JAWS-UG大阪 第18回勉強会 サーバーレス」の運営をしました

JAWS-UG大阪 第18回勉強会 サーバーレスを開催、運営しました〜。 事の発 …

「GitLab Meetup Tokyo #7: 新年度応援&GitLab 11.0」にSNS & ブログ枠で参加しました

GitLabのミートアップがあるのか!さすが大東京! GitLabのもとユーザと …

Alexa Day 2018で「Alexa and Machine Learning on AWS」を聞きました

Photo by 金春さん 20180211 alexa day 2018 Al …

Java SE 7 Silver対策勉強をしながらメモ 2015/2/11

練習問題4日目。 とりあえずひと通り終了。 317問中288問正解、90.85% …

JAWS DAYS 2018 振り返り(特にコミュニティフレンドシップ)

JAWS DAYS 2018を振り返りたいと思います。 やったこと コミュニティ …

Developers Summit 2024「マーケットインアプローチで挑む新規プロダクトの立ち上げ」を見ました

株式会社ベリサーブ 研究企画開発部 サービス開発課 田中 志弥さん ソフトウェア …