সেশন স্টোরেজ

আপনি সেশন স্টোরেজে একটি কথোপকথনের মধ্যে একটি নির্দিষ্ট ব্যবহারকারীর জন্য প্যারামিটার মান সংরক্ষণ করতে পারেন। আপনার অ্যাকশন সেই সঞ্চিত মানগুলিকে পরবর্তীতে প্রম্পট এবং শর্তে ব্যবহার করতে পারে এবং আপনার ওয়েবহুক কোড প্রয়োজনে কথোপকথনের জন্য সেশন স্টোরেজে মানগুলি অ্যাক্সেস করতে পারে।

কথোপকথনের সময়, প্রকারগুলি ব্যবহার করে সংগৃহীত যে কোনও ডেটা সেশন স্টোরেজে সংরক্ষণ করা হয়। এছাড়াও আপনি ওয়েবহুক কল ব্যবহার করে সেশন স্টোরেজে ডেটার সাথে ইন্টারঅ্যাক্ট করতে পারেন। ওয়েবহুক কলের জন্য, সেশন স্টোরেজের অবস্থা একটি app.handle() অনুরোধে পাস করা হয় এবং session অবজেক্টে সংরক্ষণ করা হয়।

একটি কথোপকথন শেষ হলে সেশন স্টোরেজে সংরক্ষিত ডেটার মেয়াদ শেষ হয়ে যায়।

সেশন স্টোরেজে ডেটা পড়ুন এবং লিখুন

সেশন সঞ্চয়স্থানে একটি নতুন মান আপডেট করতে বা সেট করতে, ওয়েবহুক কলে session অবজেক্টের params ফিল্ডে মান নির্ধারণ করুন। নিম্নলিখিত উদাহরণটি সেশন স্টোরেজে "exampleColor" কে "লাল" এ সেট করে:

Node.js

// Assign color to session storage
app.handle('storeColor', conv => {
  let color = 'red';
  conv.session.params.exampleColor = color;
});
    

JSON

{
  "responseJson": {
    "session": {
      "id": "12345678901234567890",
      "params": {
        "exampleColor": "red"
      }
    },
    "prompt": {
      "override": false
    }
  }
}
    

সেশন স্টোরেজে সংরক্ষিত ডেটা অ্যাক্সেস করতে, এটি একটি ওয়েবহুক কলের একটি ভেরিয়েবলে বরাদ্দ করুন। নিম্নলিখিত উদাহরণটি সেশন স্টোরেজে "exampleColor" থেকে একটি মান পুনরুদ্ধার করে:

Node.js

// Retrieve color from session storage
app.handle('getStoredColor', conv => {
  let color = conv.session.params.exampleColor;
});
    

JSON

{
  "responseJson": {
    "session": {
      "id": "12345678901234567890",
      "params": {
        "exampleColor": "red"
      }
    },
    "prompt": {
      "override": false
    }
  }
}
    

একটি পূর্বে সংরক্ষিত মান সাফ করতে, একটি ওয়েবহুক কলে মানটিকে null সেট করুন৷ নিম্নলিখিত উদাহরণটি সেশন স্টোরেজে "exampleColor" এর মান পরিষ্কার করে:

Node.js

// Clear color from session storage
app.handle('clearStoredColor', conv => {
  conv.session.params.exampleColor = null;
});
    

JSON

{
  "responseJson": {
    "session": {
      "id": "12345678901234567890",
      "params": {}
    },
    "prompt": {
      "override": false
    }
  }
}
    

প্রম্পটের মধ্যে সংরক্ষিত মান উল্লেখ করুন

আপনি একটি প্রম্পটে সেশন স্টোরেজে সংরক্ষিত মান উল্লেখ করতে পারেন। মান উল্লেখ করতে, $session.params. PARAMETER_NAME সিনট্যাক্স, যেখানে প্যারামিটার সেট করার সময় PARAMETER_NAME ওয়েবহুকে দেওয়া নাম।

উদাহরণ স্বরূপ, আপনি পূর্বে সেশন স্টোরেজে একটি রঙের মান সঞ্চয় করেছিলেন প্যারামিটার exampleColor হিসাবে। একটি প্রম্পটে সেই মানটি অ্যাক্সেস করতে, আপনি $session.params.exampleColor ব্যবহার করে সেই মানটি উল্লেখ করেন :

JSON

{
  "candidates": [{
    "first_simple": {
      "variants": [{
        "speech": "Your favorite color is $session.params.exampleColor."
      }]
    }
  }]
}
    

শর্তের মধ্যে সংরক্ষিত মান উল্লেখ করুন

আপনি শর্তে সেশন স্টোরেজে সঞ্চিত মানগুলিও উল্লেখ করতে পারেন। মান উল্লেখ করতে, session.params. PARAMETER_NAME সিনট্যাক্স, যেখানে প্যারামিটার সেট করার সময় PARAMETER_NAME ওয়েবহুকে দেওয়া নাম।

উদাহরণ স্বরূপ, আপনি পূর্বে সেশন স্টোরেজে একটি রঙের মানকে প্যারামিটার হিসেবে সঞ্চয় করেছিলেন exampleColor , এবং আপনি এটিকে একটি শর্তে "লাল" মানের সাথে মেলাতে চান। আপনার অবস্থায়, আপনি session.params.exampleColor ব্যবহার করে সঞ্চিত মান উল্লেখ করুন। আপনার অবস্থার অভিব্যক্তি তারপর এই মত দেখায়:

কন্ডিশন সিনট্যাক্স

session.params.exampleColor == "red"