https://d226lax1qjow5r.cloudfront.net/blog/blogposts/multi-channel-tone-analysis-in-php-with-amazon-comprehend/Social_Sentiment-Analysis_Voice_1200x627-1.png

Amazon Comprehendを使用したPHPによるマルチチャンネル・トーン分析

最終更新日 May 4, 2021

所要時間:1 分

この投稿では AWS Lambda関数を更新します。 RDS.この例の目的は Amazon Comprehendを使用して、チャンネルごとに会話全体のトーン分析を取得し、その結果を RDSMySQL データベースインスタンスに追加することです。

参照 を参照してください。および を参照してください。を参照してください。

Vonage API Account

To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.

前提条件

セットアップ方法

コードをデプロイした状態で、nexmo-community/aws-voice-transcription-rds-callback-phpコードをデプロイした状態で、以下の方法で index.phpファイルを更新する必要があります:

  • AWS Comprehendのimport文を、他のimportと一緒にファイルの先頭に追加する。

use Aws\Comprehend\ComprehendClient;
  • 54行目から62行目まで $conn-insert()内容を更新して sentimentフィールドを追加する。

$conn->insert('transcriptions', [
    'conversation_uuid' => $conversation_uuid,
    'channel' => ($channel['channel_label'] == 'ch_0' ? 'caller' : 'recipient'),
    'start_time' => $startTime,
    'end_time' => $endTime,
    'content' => $item['alternatives'][0]['content'],
    'sentiment' => serialize(getSentiment($conversation['content'])->toArray()),
    'created' => $record_date,
    'modified' => $record_date
]);
  • 次の関数をファイルの最後に追加する。 sentimentを追加します。

function getSentiment(string $content) : Aws\Result {

    $comprehendClient = new ComprehendClient([
        'region' => $_ENV['AWS_REGION'],
        'version' => $_ENV['AWS_VERSION'],
    ]);

    return $comprehendClient->detectSentiment([
        'LanguageCode' => 'en',
        'Text' => $content,
    ]);
}
  • のテーブルを更新する。 conversationsテーブルを更新する。 RDS前の投稿で作成したデータベースのテーブルを更新する。 sentimentの内容を追加します。

USE `voice_transcriptions`;

ALTER TABLE `conversations` ADD COLUMN `sentiment` TEXT AFTER `content`

ラムダへのデプロイ

以上のアップデートが成功したら、次は Serverlessを使ってアプリを AWS Lambda.

serverless deploy

準備完了

アプリがアップデートされ、今後は会話内容にトーン分析が含まれるようになります。

次のステップ

何か質問があったり、問題が発生した場合は、以下までご連絡ください。 までご連絡ください。までご連絡ください。 NexmoコミュニティSlackチームにお問い合わせください。幸運を祈る。

シェア:

https://a.storyblok.com/f/270183/384x384/b3c7ffaf85/adamculp.png
Adam Culpヴォネージの卒業生

アダムは開発者兼コンサルタントで、ウルトラランニング、ブログ、そして指導と支援への飽くなき欲求を持ちながら、他の人々が素晴らしいことを成し遂げるためにテクノロジーを手なずけるのを助けることを楽しんでいる。