docomo Developer supportの 雑談対話APIから自然対話APIへ移行しました
2019/03/23
LINEやSlackのbotで重宝していた、雑談対話APIが終了する、とのことですので、後継の自然対話APIへ移行しました。
(2018年8月時点の情報です。2019年6月に自然対話APIサービスは終了します。)
目次
API利用申請
docomo Developer support のマイページにログインして、新たにAPI利用申請を行いました。
「自然対話:雑談対話」を選択しました。
ユーザー登録
API経由でユーザー登録をして、アプリケーションIDを取得しなければなりません。
初回のみですので、PostmanからPOSTして取得しました。
リクエスト情報
リクエストURL
https://api.apigw.smt.docomo.ne.jp/naturalChatting/v1/registration
リクエストヘッダ
Content-Type : application/json;charset=UTF-8
パラメータ
APIKEY : (API利用申請により発行されたAPI key)
リクエストボディ
1 2 3 4 5 |
{ "botId": "Chatting", "appKind": "Smart Phone" } |
botIdのChattingは固定。
appKindは任意ですが、サンプルのままにしました。
レスポンス
1 2 3 4 |
{ "appId": (アプリケーションID) } |
実装例
Pythonで実装して、API Gateway + Lambdaで動かす想定の実装例です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
import requests, json docom_app_id = '(アプリケーションID)' docomo_api_key = '(API key)' docomo_endpoint = 'https://api.apigw.smt.docomo.ne.jp/naturalChatting/v1/dialogue?APIKEY={api_key}'.format( api_key=docomo_api_key ) headers = { 'Content-type': 'application/json;charset=UTF-8' } payload = { "language": "ja-JP", "botId": "Chatting", "appId": docom_app_id, "voiceText": (発信するテキスト), "appRecvTime": "2018-08-02 22:44:22", "appSendTime": datetime.now().strftime("%Y-%m-%d %H:%M:%S") } response = requests.post( docomo_endpoint, data=json.dumps(payload), headers=headers ) data = response.json() return data['systemText']['expression'] |
無事、動きました。
雑談対話以外にも、FAQ、意図解釈、知識検索、キャラクタ変換?などなどあるみたいなので、今後試してみようと思います。
docomoさん、いつもありがとう。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
![](https://www.sbcr.jp/wp-content/uploads/2023/01/9784815617929-1-407x596.jpg)
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
![](https://www.sbcr.jp/wp-content/uploads/2024/01/9784815625382-3-420x596.jpg)
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
![](https://www.shuwasystem.co.jp//images/book/637791.jpg)
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
![](https://book.mynavi.jp/files/topics/135344_ext_06_0.jpg?v=1673514682)
「AWSではじめるLinux入門ガイド」という本を書きました。
![](https://www.yamamanx.com/wp-content/uploads/2023/12/81Rp5O9We6L._SY522_.jpg)
![@yamamanx](https://www.yamamanx.com/wp-content/plugins/lazy-load/images/1x1.trans.gif)
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました
「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました。 略 …
-
-
SQLAlchemyでシンプルにjoinする
過去のSQLAlchemyでjoinするという記事でPythonのSQLAlch …
-
-
「神戸Pythonの会 #2 meetup」に行ってきました
「神戸Pythonの会 #2 meetup」に行ってきました。 所感など Ato …
-
-
D-IDでTalks APIを使って動的にビデオを作成する
D-IDでは1枚の写真をもとに表情豊かにテキストをしゃべらせることができます。 …
-
-
Redmine REST APIを操作するpython_redmineを試してみた
Redmine のGUIの登録が面倒なのでコマンドで登録、更新、時間の記録が出来 …
-
-
Linux Mint 17 MATE 64bit にTensorFlowをインストールする
勉強会でTensorFlowを使用しますので、Linux Mint 17 MAT …
-
-
PyCharmでテキストを折り返す
超小ネタです。 コーディングしているときは1行でそんなに長いコードを書かないので …
-
-
Rocket.ChatのAPIでユーザーを一括登録する
Rocket.Chatの管理画面にインポートのメニューはあって、どうやらuser …
-
-
feedlyでタグ付けした記事を自動でメール配信する
feedlyを使っていて、良記事や知っておいて欲しい記事とかを部門とかチームとか …
-
-
A3RTのTalk APIエンドポイントが変更していたので修正しました
チャットボットのAPIでA3RTのTalk APIを使った LINEやTeams …