C#에서 만든 Alexa 스킬의 엔드포인트에서 DynamoDB에 데이터 저장을 용이하게 하는 NuGet 패키지를 공개했다.

2932 단어 C#알렉사DynamoDB

소개



Visual Studio에서 NuGet 패키지를 만들고 게시하는 이야기를 이 그 때 설명용 이미지로 사용하고 있었던 것이 이번에 이야기하는 NuGet 패키지입니다.

어떤 식으로 유용합니까?



C#에서 DynamoDB에 액세스하려면 Amazon에서 제공하는 AWSSDK for .NET 라이브러리를 사용하는 것이 가장 쉽습니다.
이것은 NuGet 패키지로도 제공되므로 Visual Studio를 사용하여 개발할 때 매우 쉽게 설치하고 사용할 수 있습니다.

그 중에서도 低レベルAPI高レベルAPI 가 있어, 고레벨 API는 세세한 부분이 꽤 추상화되어 있어 꽤 간단하게 DynamoDB의 테이블에 데이터를 추가할 수 있습니다.

단, 그래도 Alexa 스킬에 한정했을 경우에, 그 범용적인 API는 사용시에 조금이나 번거로움을 느낍니다.

이 Nuget 패키지는 Alexa 스킬의 개발에 용도를 한정하는 것으로, 보다 간단하게 DynamoDB에 데이터를 추가할 수 있도록 한 것입니다.

어떤 경우에 사용합니까?



Alexa 기술에서 세션 내에서 또는 세션을 가로질러 데이터를 보유하고 싶을 때가 있습니다.
동일한 세션 내이면 사용자의 발화에서 얻은 데이터를 세션 애트리뷰트의 형태로 교환되는 JSON 내에 갖게 함으로써 유지할 수 있습니다.
그러나 세션을 넘으면 외부 저장소에 저장해야 하기 때문입니다. Lambda에는 상태가 없으므로 데이터를 계속 유지할 수 없습니다.

그래서 만들었습니다.



NuGet 관리자에서 AlexaPersistentAttributesManager를 검색하여 설치합니다.



사용법은 간단합니다.
//このインスタンス化でテーブルが作られます。
//userIdはセッション情報から取得します。
//これがプライマリキー(id)として使われます。
var attrManager=new AttributesManager(userId,_tableName);

//
//ユーザーの星座情報をsignをキーにしてセット。
//任意のキーで数値、文字列、一次元のリストや配列を格納することができます。
//ここではまだ変数に追加しているだけ。
attrManager.SetPersistentAttributes("sign", "ふたご座");
//セットした情報をDynamoDBに保存。
//ここでDynamoDBに追加!
attrManager.SavePersistentAttributes();

//値の取得
var attr=attrManager.GetPersistentAttributes();
var sign = attr["sign"];

라는 사용법이되고 있습니다.

네, 삭제는?

미실장입니다…

좋은 웹페이지 즐겨찾기