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.6Ruby
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
endRuby
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