class Line::Bot::V2::Liff::LiffApp
Attributes
@!attribute [rw] bot_prompt
@return [String,nil] ('normal'|'aggressive'|'none')
@!attribute [rw] description
@return [String,nil] Name of the LIFF app
@!attribute [rw] features
@return [LiffFeatures,nil]
@!attribute [rw] liff_id
@return [String,nil] LIFF app ID
@!attribute [rw] permanent_link_pattern
@return [String,nil] How additional information in LIFF URLs is handled. concat is returned.
@!attribute [rw] scope
@return [Array['openid','email','profile','chat_message.write']]
@!attribute [rw] view
@return [LiffView,nil]
Public Class Methods
Source
# File lib/line/bot/v2/liff/model/liff_app.rb, line 79 def self.create(args) # steep:ignore symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args) return new(**symbolized_args) # steep:ignore end
Create an instance of the class from a hash @param args [Hash] Hash containing all the required attributes @return [Line::Bot::V2::Liff::LiffApp] Instance of the class
Source
# File lib/line/bot/v2/liff/model/liff_app.rb, line 44 def initialize( liff_id: nil, view: nil, description: nil, features: nil, permanent_link_pattern: nil, scope: nil, bot_prompt: nil, **dynamic_attributes ) @liff_id = liff_id @view = view.is_a?(Line::Bot::V2::Liff::LiffView) || view.nil? ? view : Line::Bot::V2::Liff::LiffView.create(**view) # steep:ignore @description = description @features = features.is_a?(Line::Bot::V2::Liff::LiffFeatures) || features.nil? ? features : Line::Bot::V2::Liff::LiffFeatures.create(**features) # steep:ignore @permanent_link_pattern = permanent_link_pattern @scope = scope @bot_prompt = bot_prompt dynamic_attributes.each do |key, value| self.class.attr_accessor key if value.is_a?(Hash) struct_klass = Struct.new(*value.keys.map(&:to_sym)) struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v } instance_variable_set("@#{key}", struct_klass.new(*struct_values)) else instance_variable_set("@#{key}", value) end end end
@param liff_id
[String,nil] LIFF app ID @param view [LiffView, Hash[Symbol, untyped], nil] @param description [String,nil] Name of the LIFF app @param features [LiffFeatures, Hash[Symbol, untyped], nil] @param permanent_link_pattern
[String,nil] How additional information in LIFF URLs is handled. concat is returned. @param scope [Array,nil] @param bot_prompt
[String,nil] (‘normal’|‘aggressive’|‘none’)
Public Instance Methods
Source
# File lib/line/bot/v2/liff/model/liff_app.rb, line 86 def ==(other) return false unless self.class == other.class instance_variables.all? do |var| instance_variable_get(var) == other.instance_variable_get(var) end end
@param other [Object] Object to compare @return [Boolean] true if the objects are equal, false otherwise
Source
# File lib/line/bot/v2/liff/model/liff_app.rb, line 95 def hash [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash end
@return [Integer] Hash code of the object