Lingara Lingara بەڵگەنامەکان ڕێنماییەکان API کتێبخانەکان ئەپەکان دروستکردن ئەپی وێب
زمان: سۆرانی

Ruby

ئەم پەڕەیە لە ئینگلیزییەوە وەرگێڕدراوە. ئەگەر هەردووکیان جیاواز بوون، پەڕە ئینگلیزییەکە ڕاستە. پەڕە ئینگلیزییەکە بخوێنەوە

کتێبخانەی Ruby بریتییە لە gemـی lingara لەسەر RubyGems. پێویستی بە Ruby 3.3 یان نوێترە و Net::HTTP لە کتێبخانەی ستاندارد بەکار دەهێنێت، بەبێ هیچ gemـێکی تر.

لە کرداردا چۆنە

  • بانگکردنەکان هاوکاتن. یەک کلاینت دەتوانرێت لە نێوان دەزووەکاندا هاوبەش بکرێت، و بە درێژایی fork دروست دەمێنێتەوە.
  • بلۆکێک بدە بە بانگکردنێکی ستریم و هەر ڕووداوێک پێی دەدرێت. بەبێ بلۆک لە جیاتی ئەوە ستریمێکی Enumerable وەردەگریت، کە تەمەڵە: داواکارییەکە لە یەکەم each یان nextـدا دەنێردرێت. ستریمێک کە بە next بخوێندرێتەوە پێویستی بە closeـێکی ڕاشکاوە.
  • ڕووداوەکان بە case و in یەکبخە.
  • بۆ وەستاندنی ستریمێک بە زوویی، بە break لە بلۆکەکە دەرچۆ، یان close بانگ بکە.
  • هەڵەکان لە Lingara::Error میرات دەگرن. retry_after ژمارەیەک چرکەیە، یان nil کاتێک API هیچ چاوەڕوانییەکی دیاری نەکردبێت.
  • کلاینتێک بە ئارگیومێنتی کلیلدار بۆ Lingara::Client.new دروست بکە. هەڵبژاردەکانی Net::HTTP دەچنە ناو net_http_options؛ ماوەی خوێندنەوەکەی هەمان ماوەی بێکاری ستریمەکەشە.

نموونەکانی خوارەوە gemـەکە دادەمەزرێنن، کلاینتێک دروست دەکەن، لیستێکی وشەسازی ستریم دەکەن و هەڵەیەک چارەسەر دەکەن.

Ruby

gem install lingara -v 0.1.0-alpha.6

Ruby

require "lingara"

client = Lingara::Client.new(client_id: client_id, client_secret: client_secret)

Ruby

client.generate_vocabulary(level: 2, source_lang: "en", target_lang: "zh", count: 8) do |event|
  case event
  in Lingara::GenerateVocabularyEventItem => item then puts "#{item.data.word}: #{item.data.translation}"
  else nil
  end
end

Ruby

begin
  client.get_usage
rescue Lingara::ApiError => e
  # A refusal from the API: status, code (stable) and message (localised).
  puts "#{e.status} #{e.code}: #{e.message}"
  puts "retry after #{e.retry_after}s" if e.retry_after
rescue Lingara::OAuthError => e
  # The token endpoint refused the credentials or the scopes.
  puts "#{e.status} #{e.error}: #{e.description}"
rescue Lingara::MaintenanceError => e
  puts "under maintenance"
  puts "retry after #{e.retry_after}s" if e.retry_after
rescue Lingara::TransportError => e
  # No usable answer: :connect, :tls, :reset, :timeout, and so on.
  puts "transport: #{e.kind}"
end

ئەم پەڕەیە چی دەپێچێتەوە