https://d226lax1qjow5r.cloudfront.net/blog/blogposts/announcing-the-vonage-node-sdk-v3-0-0/node_sdk-updates.png

Vonage Node SDK v3.0.0の発表

最終更新日 November 23, 2022

所要時間:1 分

その通りだ、 v3がリリースされました。長い間待ち望まれていた機能がリリースされ、SDKをより小さなコンポーネントに分割することで、チームがより迅速に新機能をリリースできるようになりました。

変化への対応

約束

すべての関数のコールバックは削除されました。今後は async/awaitまたは .then/.catch.これでコールバック地獄を避けることができ、コードがすっきりするはずだ。例えば

const Vonage = require('@vonage/server-sdk')

const vonage = new Vonage({
    apiKey: VONAGE_API_KEY,
    apiSecret: VONAGE_API_SECRET,
})

const from = VONAGE_BRAND_NAME;
const to = TO_NUMBER;
const text = 'A text message sent using the Vonage SMS API'

vonage.message.sendSms(from, to, text, (err, responseData) => {
    if (err) {
        console.log(err);
        return;
    }

    if(responseData.messages[0]['status'] === "0") {
        console.log("Message sent successfully.");
        return;
    } 
    
    console.log(`Message failed with error: ${responseData.messages[0]['error-text']}`);
})

と書くことができる:

const { Vonage } = require('@vonage/server-sdk')

const vonage = new Vonage({
    apiKey: VONAGE_API_KEY,
    apiSecret: VONAGE_API_SECRET,
})

const from = VONAGE_BRAND_NAME;
const to = TO_NUMBER;
const text = 'A text message sent using the Vonage SMS API';

const sendSMS = async () {
    try {
        const response = await vonage.sms.send({to, from, text});
        console.log(response);
    } catch (err) {
        console.log('There was an error sending the messages.'); 
        console.error(err);
    }
};

パラメーター更新

関数も更新され、関数の引数の代わりにパラメータ・オブジェクトを使用するようになりました。これにより、多くのオプションパラメータを持つ関数をより管理しやすくなります。どの関数が更新されたかをより詳しく説明する、各パッケージの移行ドキュメントを公開しました。

移住ガイド

各パッケージのマイグレーションガイドはこちらでご覧いただけます:

小型パッケージとタイプスクリプト

バージョン3は タイプスクリプトを使用し、お好みのIDEでのコード補完を支援します。しかし、さらに大きな改善点は モノレポス.モノレポは、依存関係ツリーをそのままに、コードベースを小さなパッケージに分割します。これで、アプリケーションで特定のパッケージを使用することができます。この変更は、メインの開発ブランチを止めずにベータ版の機能や修正をリリースできるようにするために戦略的に行いました。その一例が新しい Video API パッケージです。 OpenTok SDK):

import { Auth } from '@vonage/auth';
import { Video } from '@vonage/video';

const credentials = new Auth({
    apiKey: VONAGE_API_KEY,
    apiSecret: VONAGE_API_SECRET,
});

const video = new Video(credentials);

const getVideoSession = async () => {
    try {
        const session = await video.createSession({ mediaMode: 'routed' });
        console.log('Session created', session);
        return session;
    } catch (error) {
        console.log('Failed to create session');
        console.error(error);
        throw error;
    }
}

ベータ版SDKパッケージを使用し、安定版パッケージを維持することができます。

サポート

フォロー サポートの文書に従い、我々はバージョン2のサポートをさらに6ヶ月間継続し、2023年5月頃までサポートする予定である。新機能の追加は行わず、修正のみを行う予定です。

より詳細な情報については、SDKドキュメントをご覧になるか、コード・スニペットをご覧ください。お問い合わせは Vonage Developer Slackをフォローしてください。 VonageDevをフォローしてください。

シェア:

https://a.storyblok.com/f/270183/400x400/5003a9e2e2/chuck-reeves.png
Chuck ReevesシニアJavaScriptデベロッパー

昔、GoogleやStackOverflowが登場する前の暗黒時代に、チャックはプログラミングを学んだ。ドキュメントやソースコードだけが頼りだった時代だ。Jr.フルスタックデベロッパーとして謙虚にスタートしたチャックは、現在のデベロッパーに成長し、仲間のデベロッパーに素晴らしい製品を生み出す力を与えるツールを作り上げた。新しいツールを作っているとき以外は、山に登ったり、自転車に乗ったりしている。