twilio-ruby 5.61.0 → 5.61.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/.github/workflows/deploy.yml +2 -0
 - data/.github/workflows/test.yml +1 -0
 - data/.gitignore +1 -0
 - data/.rubocop.yml +1 -1
 - data/CHANGES.md +51 -0
 - data/Makefile +1 -1
 - data/README.md +2 -2
 - data/lib/twilio-ruby/rest/api/v2010/account/call.rb +3 -3
 - data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +269 -0
 - data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +8 -0
 - data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +14 -0
 - data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +31 -6
 - data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +84 -3
 - data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +8 -2
 - data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +416 -0
 - data/lib/twilio-ruby/rest/supersim/v1.rb +16 -0
 - data/lib/twilio-ruby/rest/supersim.rb +9 -0
 - data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +8 -2
 - data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +12 -2
 - data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +2 -2
 - data/lib/twilio-ruby/rest/video/v1/room.rb +12 -1
 - data/lib/twilio-ruby/twiml/voice_response.rb +613 -36
 - data/lib/twilio-ruby/version.rb +1 -1
 - metadata +4 -7
 - data/.yardoc/checksums +0 -532
 - data/.yardoc/complete +0 -0
 - data/.yardoc/object_types +0 -0
 - data/.yardoc/objects/root.dat +0 -0
 - data/.yardoc/proxy_types +0 -0
 
| 
         @@ -0,0 +1,416 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ##
         
     | 
| 
      
 2 
     | 
    
         
            +
            # This code was generated by
         
     | 
| 
      
 3 
     | 
    
         
            +
            # \ / _    _  _|   _  _
         
     | 
| 
      
 4 
     | 
    
         
            +
            #  | (_)\/(_)(_|\/| |(/_  v1.0.0
         
     | 
| 
      
 5 
     | 
    
         
            +
            #       /       /
         
     | 
| 
      
 6 
     | 
    
         
            +
            #
         
     | 
| 
      
 7 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            module Twilio
         
     | 
| 
      
 10 
     | 
    
         
            +
              module REST
         
     | 
| 
      
 11 
     | 
    
         
            +
                class Supersim < Domain
         
     | 
| 
      
 12 
     | 
    
         
            +
                  class V1 < Version
         
     | 
| 
      
 13 
     | 
    
         
            +
                    ##
         
     | 
| 
      
 14 
     | 
    
         
            +
                    # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
         
     | 
| 
      
 15 
     | 
    
         
            +
                    class IpCommandList < ListResource
         
     | 
| 
      
 16 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 17 
     | 
    
         
            +
                      # Initialize the IpCommandList
         
     | 
| 
      
 18 
     | 
    
         
            +
                      # @param [Version] version Version that contains the resource
         
     | 
| 
      
 19 
     | 
    
         
            +
                      # @return [IpCommandList] IpCommandList
         
     | 
| 
      
 20 
     | 
    
         
            +
                      def initialize(version)
         
     | 
| 
      
 21 
     | 
    
         
            +
                        super(version)
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                        # Path Solution
         
     | 
| 
      
 24 
     | 
    
         
            +
                        @solution = {}
         
     | 
| 
      
 25 
     | 
    
         
            +
                        @uri = "/IpCommands"
         
     | 
| 
      
 26 
     | 
    
         
            +
                      end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 29 
     | 
    
         
            +
                      # Create the IpCommandInstance
         
     | 
| 
      
 30 
     | 
    
         
            +
                      # @param [String] sim The `sid` or `unique_name` of the {Super
         
     | 
| 
      
 31 
     | 
    
         
            +
                      #   SIM}[https://www.twilio.com/docs/iot/supersim/api/sim-resource] to send the IP
         
     | 
| 
      
 32 
     | 
    
         
            +
                      #   Command to.
         
     | 
| 
      
 33 
     | 
    
         
            +
                      # @param [String] payload The payload to be delivered to the device.
         
     | 
| 
      
 34 
     | 
    
         
            +
                      # @param [String] device_port The device port to which the IP Command will be
         
     | 
| 
      
 35 
     | 
    
         
            +
                      #   sent.
         
     | 
| 
      
 36 
     | 
    
         
            +
                      # @param [ip_command.PayloadType] payload_type Indicates how the payload is
         
     | 
| 
      
 37 
     | 
    
         
            +
                      #   encoded. Either `text` or `binary`. Defaults to `text`.
         
     | 
| 
      
 38 
     | 
    
         
            +
                      # @param [String] callback_url The URL we should call using the `callback_method`
         
     | 
| 
      
 39 
     | 
    
         
            +
                      #   after we have sent the IP Command.
         
     | 
| 
      
 40 
     | 
    
         
            +
                      # @param [String] callback_method The HTTP method we should use to call
         
     | 
| 
      
 41 
     | 
    
         
            +
                      #   `callback_url`. Can be `GET` or `POST`, and the default is `POST`.
         
     | 
| 
      
 42 
     | 
    
         
            +
                      # @return [IpCommandInstance] Created IpCommandInstance
         
     | 
| 
      
 43 
     | 
    
         
            +
                      def create(sim: nil, payload: nil, device_port: nil, payload_type: :unset, callback_url: :unset, callback_method: :unset)
         
     | 
| 
      
 44 
     | 
    
         
            +
                        data = Twilio::Values.of({
         
     | 
| 
      
 45 
     | 
    
         
            +
                            'Sim' => sim,
         
     | 
| 
      
 46 
     | 
    
         
            +
                            'Payload' => payload,
         
     | 
| 
      
 47 
     | 
    
         
            +
                            'DevicePort' => device_port,
         
     | 
| 
      
 48 
     | 
    
         
            +
                            'PayloadType' => payload_type,
         
     | 
| 
      
 49 
     | 
    
         
            +
                            'CallbackUrl' => callback_url,
         
     | 
| 
      
 50 
     | 
    
         
            +
                            'CallbackMethod' => callback_method,
         
     | 
| 
      
 51 
     | 
    
         
            +
                        })
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
                        payload = @version.create('POST', @uri, data: data)
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                        IpCommandInstance.new(@version, payload, )
         
     | 
| 
      
 56 
     | 
    
         
            +
                      end
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 59 
     | 
    
         
            +
                      # Lists IpCommandInstance records from the API as a list.
         
     | 
| 
      
 60 
     | 
    
         
            +
                      # Unlike stream(), this operation is eager and will load `limit` records into
         
     | 
| 
      
 61 
     | 
    
         
            +
                      # memory before returning.
         
     | 
| 
      
 62 
     | 
    
         
            +
                      # @param [String] sim The SID or unique name of the Sim resource that IP Command
         
     | 
| 
      
 63 
     | 
    
         
            +
                      #   was sent to or from.
         
     | 
| 
      
 64 
     | 
    
         
            +
                      # @param [String] sim_iccid The ICCID of the Sim resource that IP Command was sent
         
     | 
| 
      
 65 
     | 
    
         
            +
                      #   to or from.
         
     | 
| 
      
 66 
     | 
    
         
            +
                      # @param [ip_command.Status] status The status of the IP Command. Can be:
         
     | 
| 
      
 67 
     | 
    
         
            +
                      #   `queued`, `sent`, `received` or `failed`. See the {IP Command Status
         
     | 
| 
      
 68 
     | 
    
         
            +
                      #   Values}[https://www.twilio.com/docs/wireless/api/ipcommand-resource#status-values]
         
     | 
| 
      
 69 
     | 
    
         
            +
                      #   for a description of each.
         
     | 
| 
      
 70 
     | 
    
         
            +
                      # @param [ip_command.Direction] direction The direction of the IP Command. Can be
         
     | 
| 
      
 71 
     | 
    
         
            +
                      #   `to_sim` or `from_sim`. The value of `to_sim` is synonymous with the term
         
     | 
| 
      
 72 
     | 
    
         
            +
                      #   `mobile terminated`, and `from_sim` is synonymous with the term `mobile
         
     | 
| 
      
 73 
     | 
    
         
            +
                      #   originated`.
         
     | 
| 
      
 74 
     | 
    
         
            +
                      # @param [Integer] limit Upper limit for the number of records to return. stream()
         
     | 
| 
      
 75 
     | 
    
         
            +
                      #    guarantees to never return more than limit.  Default is no limit
         
     | 
| 
      
 76 
     | 
    
         
            +
                      # @param [Integer] page_size Number of records to fetch per request, when
         
     | 
| 
      
 77 
     | 
    
         
            +
                      #    not set will use the default value of 50 records.  If no page_size is defined
         
     | 
| 
      
 78 
     | 
    
         
            +
                      #    but a limit is defined, stream() will attempt to read the limit with the most
         
     | 
| 
      
 79 
     | 
    
         
            +
                      #    efficient page size, i.e. min(limit, 1000)
         
     | 
| 
      
 80 
     | 
    
         
            +
                      # @return [Array] Array of up to limit results
         
     | 
| 
      
 81 
     | 
    
         
            +
                      def list(sim: :unset, sim_iccid: :unset, status: :unset, direction: :unset, limit: nil, page_size: nil)
         
     | 
| 
      
 82 
     | 
    
         
            +
                        self.stream(
         
     | 
| 
      
 83 
     | 
    
         
            +
                            sim: sim,
         
     | 
| 
      
 84 
     | 
    
         
            +
                            sim_iccid: sim_iccid,
         
     | 
| 
      
 85 
     | 
    
         
            +
                            status: status,
         
     | 
| 
      
 86 
     | 
    
         
            +
                            direction: direction,
         
     | 
| 
      
 87 
     | 
    
         
            +
                            limit: limit,
         
     | 
| 
      
 88 
     | 
    
         
            +
                            page_size: page_size
         
     | 
| 
      
 89 
     | 
    
         
            +
                        ).entries
         
     | 
| 
      
 90 
     | 
    
         
            +
                      end
         
     | 
| 
      
 91 
     | 
    
         
            +
             
     | 
| 
      
 92 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 93 
     | 
    
         
            +
                      # Streams IpCommandInstance records from the API as an Enumerable.
         
     | 
| 
      
 94 
     | 
    
         
            +
                      # This operation lazily loads records as efficiently as possible until the limit
         
     | 
| 
      
 95 
     | 
    
         
            +
                      # is reached.
         
     | 
| 
      
 96 
     | 
    
         
            +
                      # @param [String] sim The SID or unique name of the Sim resource that IP Command
         
     | 
| 
      
 97 
     | 
    
         
            +
                      #   was sent to or from.
         
     | 
| 
      
 98 
     | 
    
         
            +
                      # @param [String] sim_iccid The ICCID of the Sim resource that IP Command was sent
         
     | 
| 
      
 99 
     | 
    
         
            +
                      #   to or from.
         
     | 
| 
      
 100 
     | 
    
         
            +
                      # @param [ip_command.Status] status The status of the IP Command. Can be:
         
     | 
| 
      
 101 
     | 
    
         
            +
                      #   `queued`, `sent`, `received` or `failed`. See the {IP Command Status
         
     | 
| 
      
 102 
     | 
    
         
            +
                      #   Values}[https://www.twilio.com/docs/wireless/api/ipcommand-resource#status-values]
         
     | 
| 
      
 103 
     | 
    
         
            +
                      #   for a description of each.
         
     | 
| 
      
 104 
     | 
    
         
            +
                      # @param [ip_command.Direction] direction The direction of the IP Command. Can be
         
     | 
| 
      
 105 
     | 
    
         
            +
                      #   `to_sim` or `from_sim`. The value of `to_sim` is synonymous with the term
         
     | 
| 
      
 106 
     | 
    
         
            +
                      #   `mobile terminated`, and `from_sim` is synonymous with the term `mobile
         
     | 
| 
      
 107 
     | 
    
         
            +
                      #   originated`.
         
     | 
| 
      
 108 
     | 
    
         
            +
                      # @param [Integer] limit Upper limit for the number of records to return. stream()
         
     | 
| 
      
 109 
     | 
    
         
            +
                      #    guarantees to never return more than limit. Default is no limit.
         
     | 
| 
      
 110 
     | 
    
         
            +
                      # @param [Integer] page_size Number of records to fetch per request, when
         
     | 
| 
      
 111 
     | 
    
         
            +
                      #    not set will use the default value of 50 records. If no page_size is defined
         
     | 
| 
      
 112 
     | 
    
         
            +
                      #    but a limit is defined, stream() will attempt to read the limit with the most
         
     | 
| 
      
 113 
     | 
    
         
            +
                      #    efficient page size, i.e. min(limit, 1000)
         
     | 
| 
      
 114 
     | 
    
         
            +
                      # @return [Enumerable] Enumerable that will yield up to limit results
         
     | 
| 
      
 115 
     | 
    
         
            +
                      def stream(sim: :unset, sim_iccid: :unset, status: :unset, direction: :unset, limit: nil, page_size: nil)
         
     | 
| 
      
 116 
     | 
    
         
            +
                        limits = @version.read_limits(limit, page_size)
         
     | 
| 
      
 117 
     | 
    
         
            +
             
     | 
| 
      
 118 
     | 
    
         
            +
                        page = self.page(
         
     | 
| 
      
 119 
     | 
    
         
            +
                            sim: sim,
         
     | 
| 
      
 120 
     | 
    
         
            +
                            sim_iccid: sim_iccid,
         
     | 
| 
      
 121 
     | 
    
         
            +
                            status: status,
         
     | 
| 
      
 122 
     | 
    
         
            +
                            direction: direction,
         
     | 
| 
      
 123 
     | 
    
         
            +
                            page_size: limits[:page_size],
         
     | 
| 
      
 124 
     | 
    
         
            +
                        )
         
     | 
| 
      
 125 
     | 
    
         
            +
             
     | 
| 
      
 126 
     | 
    
         
            +
                        @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
         
     | 
| 
      
 127 
     | 
    
         
            +
                      end
         
     | 
| 
      
 128 
     | 
    
         
            +
             
     | 
| 
      
 129 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 130 
     | 
    
         
            +
                      # When passed a block, yields IpCommandInstance records from the API.
         
     | 
| 
      
 131 
     | 
    
         
            +
                      # This operation lazily loads records as efficiently as possible until the limit
         
     | 
| 
      
 132 
     | 
    
         
            +
                      # is reached.
         
     | 
| 
      
 133 
     | 
    
         
            +
                      def each
         
     | 
| 
      
 134 
     | 
    
         
            +
                        limits = @version.read_limits
         
     | 
| 
      
 135 
     | 
    
         
            +
             
     | 
| 
      
 136 
     | 
    
         
            +
                        page = self.page(page_size: limits[:page_size], )
         
     | 
| 
      
 137 
     | 
    
         
            +
             
     | 
| 
      
 138 
     | 
    
         
            +
                        @version.stream(page,
         
     | 
| 
      
 139 
     | 
    
         
            +
                                        limit: limits[:limit],
         
     | 
| 
      
 140 
     | 
    
         
            +
                                        page_limit: limits[:page_limit]).each {|x| yield x}
         
     | 
| 
      
 141 
     | 
    
         
            +
                      end
         
     | 
| 
      
 142 
     | 
    
         
            +
             
     | 
| 
      
 143 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 144 
     | 
    
         
            +
                      # Retrieve a single page of IpCommandInstance records from the API.
         
     | 
| 
      
 145 
     | 
    
         
            +
                      # Request is executed immediately.
         
     | 
| 
      
 146 
     | 
    
         
            +
                      # @param [String] sim The SID or unique name of the Sim resource that IP Command
         
     | 
| 
      
 147 
     | 
    
         
            +
                      #   was sent to or from.
         
     | 
| 
      
 148 
     | 
    
         
            +
                      # @param [String] sim_iccid The ICCID of the Sim resource that IP Command was sent
         
     | 
| 
      
 149 
     | 
    
         
            +
                      #   to or from.
         
     | 
| 
      
 150 
     | 
    
         
            +
                      # @param [ip_command.Status] status The status of the IP Command. Can be:
         
     | 
| 
      
 151 
     | 
    
         
            +
                      #   `queued`, `sent`, `received` or `failed`. See the {IP Command Status
         
     | 
| 
      
 152 
     | 
    
         
            +
                      #   Values}[https://www.twilio.com/docs/wireless/api/ipcommand-resource#status-values]
         
     | 
| 
      
 153 
     | 
    
         
            +
                      #   for a description of each.
         
     | 
| 
      
 154 
     | 
    
         
            +
                      # @param [ip_command.Direction] direction The direction of the IP Command. Can be
         
     | 
| 
      
 155 
     | 
    
         
            +
                      #   `to_sim` or `from_sim`. The value of `to_sim` is synonymous with the term
         
     | 
| 
      
 156 
     | 
    
         
            +
                      #   `mobile terminated`, and `from_sim` is synonymous with the term `mobile
         
     | 
| 
      
 157 
     | 
    
         
            +
                      #   originated`.
         
     | 
| 
      
 158 
     | 
    
         
            +
                      # @param [String] page_token PageToken provided by the API
         
     | 
| 
      
 159 
     | 
    
         
            +
                      # @param [Integer] page_number Page Number, this value is simply for client state
         
     | 
| 
      
 160 
     | 
    
         
            +
                      # @param [Integer] page_size Number of records to return, defaults to 50
         
     | 
| 
      
 161 
     | 
    
         
            +
                      # @return [Page] Page of IpCommandInstance
         
     | 
| 
      
 162 
     | 
    
         
            +
                      def page(sim: :unset, sim_iccid: :unset, status: :unset, direction: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
         
     | 
| 
      
 163 
     | 
    
         
            +
                        params = Twilio::Values.of({
         
     | 
| 
      
 164 
     | 
    
         
            +
                            'Sim' => sim,
         
     | 
| 
      
 165 
     | 
    
         
            +
                            'SimIccid' => sim_iccid,
         
     | 
| 
      
 166 
     | 
    
         
            +
                            'Status' => status,
         
     | 
| 
      
 167 
     | 
    
         
            +
                            'Direction' => direction,
         
     | 
| 
      
 168 
     | 
    
         
            +
                            'PageToken' => page_token,
         
     | 
| 
      
 169 
     | 
    
         
            +
                            'Page' => page_number,
         
     | 
| 
      
 170 
     | 
    
         
            +
                            'PageSize' => page_size,
         
     | 
| 
      
 171 
     | 
    
         
            +
                        })
         
     | 
| 
      
 172 
     | 
    
         
            +
             
     | 
| 
      
 173 
     | 
    
         
            +
                        response = @version.page('GET', @uri, params: params)
         
     | 
| 
      
 174 
     | 
    
         
            +
             
     | 
| 
      
 175 
     | 
    
         
            +
                        IpCommandPage.new(@version, response, @solution)
         
     | 
| 
      
 176 
     | 
    
         
            +
                      end
         
     | 
| 
      
 177 
     | 
    
         
            +
             
     | 
| 
      
 178 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 179 
     | 
    
         
            +
                      # Retrieve a single page of IpCommandInstance records from the API.
         
     | 
| 
      
 180 
     | 
    
         
            +
                      # Request is executed immediately.
         
     | 
| 
      
 181 
     | 
    
         
            +
                      # @param [String] target_url API-generated URL for the requested results page
         
     | 
| 
      
 182 
     | 
    
         
            +
                      # @return [Page] Page of IpCommandInstance
         
     | 
| 
      
 183 
     | 
    
         
            +
                      def get_page(target_url)
         
     | 
| 
      
 184 
     | 
    
         
            +
                        response = @version.domain.request(
         
     | 
| 
      
 185 
     | 
    
         
            +
                            'GET',
         
     | 
| 
      
 186 
     | 
    
         
            +
                            target_url
         
     | 
| 
      
 187 
     | 
    
         
            +
                        )
         
     | 
| 
      
 188 
     | 
    
         
            +
                        IpCommandPage.new(@version, response, @solution)
         
     | 
| 
      
 189 
     | 
    
         
            +
                      end
         
     | 
| 
      
 190 
     | 
    
         
            +
             
     | 
| 
      
 191 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 192 
     | 
    
         
            +
                      # Provide a user friendly representation
         
     | 
| 
      
 193 
     | 
    
         
            +
                      def to_s
         
     | 
| 
      
 194 
     | 
    
         
            +
                        '#<Twilio.Supersim.V1.IpCommandList>'
         
     | 
| 
      
 195 
     | 
    
         
            +
                      end
         
     | 
| 
      
 196 
     | 
    
         
            +
                    end
         
     | 
| 
      
 197 
     | 
    
         
            +
             
     | 
| 
      
 198 
     | 
    
         
            +
                    ##
         
     | 
| 
      
 199 
     | 
    
         
            +
                    # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
         
     | 
| 
      
 200 
     | 
    
         
            +
                    class IpCommandPage < Page
         
     | 
| 
      
 201 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 202 
     | 
    
         
            +
                      # Initialize the IpCommandPage
         
     | 
| 
      
 203 
     | 
    
         
            +
                      # @param [Version] version Version that contains the resource
         
     | 
| 
      
 204 
     | 
    
         
            +
                      # @param [Response] response Response from the API
         
     | 
| 
      
 205 
     | 
    
         
            +
                      # @param [Hash] solution Path solution for the resource
         
     | 
| 
      
 206 
     | 
    
         
            +
                      # @return [IpCommandPage] IpCommandPage
         
     | 
| 
      
 207 
     | 
    
         
            +
                      def initialize(version, response, solution)
         
     | 
| 
      
 208 
     | 
    
         
            +
                        super(version, response)
         
     | 
| 
      
 209 
     | 
    
         
            +
             
     | 
| 
      
 210 
     | 
    
         
            +
                        # Path Solution
         
     | 
| 
      
 211 
     | 
    
         
            +
                        @solution = solution
         
     | 
| 
      
 212 
     | 
    
         
            +
                      end
         
     | 
| 
      
 213 
     | 
    
         
            +
             
     | 
| 
      
 214 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 215 
     | 
    
         
            +
                      # Build an instance of IpCommandInstance
         
     | 
| 
      
 216 
     | 
    
         
            +
                      # @param [Hash] payload Payload response from the API
         
     | 
| 
      
 217 
     | 
    
         
            +
                      # @return [IpCommandInstance] IpCommandInstance
         
     | 
| 
      
 218 
     | 
    
         
            +
                      def get_instance(payload)
         
     | 
| 
      
 219 
     | 
    
         
            +
                        IpCommandInstance.new(@version, payload, )
         
     | 
| 
      
 220 
     | 
    
         
            +
                      end
         
     | 
| 
      
 221 
     | 
    
         
            +
             
     | 
| 
      
 222 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 223 
     | 
    
         
            +
                      # Provide a user friendly representation
         
     | 
| 
      
 224 
     | 
    
         
            +
                      def to_s
         
     | 
| 
      
 225 
     | 
    
         
            +
                        '<Twilio.Supersim.V1.IpCommandPage>'
         
     | 
| 
      
 226 
     | 
    
         
            +
                      end
         
     | 
| 
      
 227 
     | 
    
         
            +
                    end
         
     | 
| 
      
 228 
     | 
    
         
            +
             
     | 
| 
      
 229 
     | 
    
         
            +
                    ##
         
     | 
| 
      
 230 
     | 
    
         
            +
                    # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
         
     | 
| 
      
 231 
     | 
    
         
            +
                    class IpCommandContext < InstanceContext
         
     | 
| 
      
 232 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 233 
     | 
    
         
            +
                      # Initialize the IpCommandContext
         
     | 
| 
      
 234 
     | 
    
         
            +
                      # @param [Version] version Version that contains the resource
         
     | 
| 
      
 235 
     | 
    
         
            +
                      # @param [String] sid The SID of the IP Command resource to fetch.
         
     | 
| 
      
 236 
     | 
    
         
            +
                      # @return [IpCommandContext] IpCommandContext
         
     | 
| 
      
 237 
     | 
    
         
            +
                      def initialize(version, sid)
         
     | 
| 
      
 238 
     | 
    
         
            +
                        super(version)
         
     | 
| 
      
 239 
     | 
    
         
            +
             
     | 
| 
      
 240 
     | 
    
         
            +
                        # Path Solution
         
     | 
| 
      
 241 
     | 
    
         
            +
                        @solution = {sid: sid, }
         
     | 
| 
      
 242 
     | 
    
         
            +
                        @uri = "/IpCommands/#{@solution[:sid]}"
         
     | 
| 
      
 243 
     | 
    
         
            +
                      end
         
     | 
| 
      
 244 
     | 
    
         
            +
             
     | 
| 
      
 245 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 246 
     | 
    
         
            +
                      # Fetch the IpCommandInstance
         
     | 
| 
      
 247 
     | 
    
         
            +
                      # @return [IpCommandInstance] Fetched IpCommandInstance
         
     | 
| 
      
 248 
     | 
    
         
            +
                      def fetch
         
     | 
| 
      
 249 
     | 
    
         
            +
                        payload = @version.fetch('GET', @uri)
         
     | 
| 
      
 250 
     | 
    
         
            +
             
     | 
| 
      
 251 
     | 
    
         
            +
                        IpCommandInstance.new(@version, payload, sid: @solution[:sid], )
         
     | 
| 
      
 252 
     | 
    
         
            +
                      end
         
     | 
| 
      
 253 
     | 
    
         
            +
             
     | 
| 
      
 254 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 255 
     | 
    
         
            +
                      # Provide a user friendly representation
         
     | 
| 
      
 256 
     | 
    
         
            +
                      def to_s
         
     | 
| 
      
 257 
     | 
    
         
            +
                        context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
         
     | 
| 
      
 258 
     | 
    
         
            +
                        "#<Twilio.Supersim.V1.IpCommandContext #{context}>"
         
     | 
| 
      
 259 
     | 
    
         
            +
                      end
         
     | 
| 
      
 260 
     | 
    
         
            +
             
     | 
| 
      
 261 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 262 
     | 
    
         
            +
                      # Provide a detailed, user friendly representation
         
     | 
| 
      
 263 
     | 
    
         
            +
                      def inspect
         
     | 
| 
      
 264 
     | 
    
         
            +
                        context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
         
     | 
| 
      
 265 
     | 
    
         
            +
                        "#<Twilio.Supersim.V1.IpCommandContext #{context}>"
         
     | 
| 
      
 266 
     | 
    
         
            +
                      end
         
     | 
| 
      
 267 
     | 
    
         
            +
                    end
         
     | 
| 
      
 268 
     | 
    
         
            +
             
     | 
| 
      
 269 
     | 
    
         
            +
                    ##
         
     | 
| 
      
 270 
     | 
    
         
            +
                    # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
         
     | 
| 
      
 271 
     | 
    
         
            +
                    class IpCommandInstance < InstanceResource
         
     | 
| 
      
 272 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 273 
     | 
    
         
            +
                      # Initialize the IpCommandInstance
         
     | 
| 
      
 274 
     | 
    
         
            +
                      # @param [Version] version Version that contains the resource
         
     | 
| 
      
 275 
     | 
    
         
            +
                      # @param [Hash] payload payload that contains response from Twilio
         
     | 
| 
      
 276 
     | 
    
         
            +
                      # @param [String] sid The SID of the IP Command resource to fetch.
         
     | 
| 
      
 277 
     | 
    
         
            +
                      # @return [IpCommandInstance] IpCommandInstance
         
     | 
| 
      
 278 
     | 
    
         
            +
                      def initialize(version, payload, sid: nil)
         
     | 
| 
      
 279 
     | 
    
         
            +
                        super(version)
         
     | 
| 
      
 280 
     | 
    
         
            +
             
     | 
| 
      
 281 
     | 
    
         
            +
                        # Marshaled Properties
         
     | 
| 
      
 282 
     | 
    
         
            +
                        @properties = {
         
     | 
| 
      
 283 
     | 
    
         
            +
                            'sid' => payload['sid'],
         
     | 
| 
      
 284 
     | 
    
         
            +
                            'account_sid' => payload['account_sid'],
         
     | 
| 
      
 285 
     | 
    
         
            +
                            'sim_sid' => payload['sim_sid'],
         
     | 
| 
      
 286 
     | 
    
         
            +
                            'sim_iccid' => payload['sim_iccid'],
         
     | 
| 
      
 287 
     | 
    
         
            +
                            'status' => payload['status'],
         
     | 
| 
      
 288 
     | 
    
         
            +
                            'direction' => payload['direction'],
         
     | 
| 
      
 289 
     | 
    
         
            +
                            'device_ip' => payload['device_ip'],
         
     | 
| 
      
 290 
     | 
    
         
            +
                            'device_port' => payload['device_port'].to_i,
         
     | 
| 
      
 291 
     | 
    
         
            +
                            'payload_type' => payload['payload_type'],
         
     | 
| 
      
 292 
     | 
    
         
            +
                            'payload' => payload['payload'],
         
     | 
| 
      
 293 
     | 
    
         
            +
                            'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
         
     | 
| 
      
 294 
     | 
    
         
            +
                            'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
         
     | 
| 
      
 295 
     | 
    
         
            +
                            'url' => payload['url'],
         
     | 
| 
      
 296 
     | 
    
         
            +
                        }
         
     | 
| 
      
 297 
     | 
    
         
            +
             
     | 
| 
      
 298 
     | 
    
         
            +
                        # Context
         
     | 
| 
      
 299 
     | 
    
         
            +
                        @instance_context = nil
         
     | 
| 
      
 300 
     | 
    
         
            +
                        @params = {'sid' => sid || @properties['sid'], }
         
     | 
| 
      
 301 
     | 
    
         
            +
                      end
         
     | 
| 
      
 302 
     | 
    
         
            +
             
     | 
| 
      
 303 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 304 
     | 
    
         
            +
                      # Generate an instance context for the instance, the context is capable of
         
     | 
| 
      
 305 
     | 
    
         
            +
                      # performing various actions.  All instance actions are proxied to the context
         
     | 
| 
      
 306 
     | 
    
         
            +
                      # @return [IpCommandContext] IpCommandContext for this IpCommandInstance
         
     | 
| 
      
 307 
     | 
    
         
            +
                      def context
         
     | 
| 
      
 308 
     | 
    
         
            +
                        unless @instance_context
         
     | 
| 
      
 309 
     | 
    
         
            +
                          @instance_context = IpCommandContext.new(@version, @params['sid'], )
         
     | 
| 
      
 310 
     | 
    
         
            +
                        end
         
     | 
| 
      
 311 
     | 
    
         
            +
                        @instance_context
         
     | 
| 
      
 312 
     | 
    
         
            +
                      end
         
     | 
| 
      
 313 
     | 
    
         
            +
             
     | 
| 
      
 314 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 315 
     | 
    
         
            +
                      # @return [String] The unique string that identifies the resource
         
     | 
| 
      
 316 
     | 
    
         
            +
                      def sid
         
     | 
| 
      
 317 
     | 
    
         
            +
                        @properties['sid']
         
     | 
| 
      
 318 
     | 
    
         
            +
                      end
         
     | 
| 
      
 319 
     | 
    
         
            +
             
     | 
| 
      
 320 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 321 
     | 
    
         
            +
                      # @return [String] The SID of the Account that created the resource
         
     | 
| 
      
 322 
     | 
    
         
            +
                      def account_sid
         
     | 
| 
      
 323 
     | 
    
         
            +
                        @properties['account_sid']
         
     | 
| 
      
 324 
     | 
    
         
            +
                      end
         
     | 
| 
      
 325 
     | 
    
         
            +
             
     | 
| 
      
 326 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 327 
     | 
    
         
            +
                      # @return [String] The SID of the Super SIM that this IP Command was sent to or from
         
     | 
| 
      
 328 
     | 
    
         
            +
                      def sim_sid
         
     | 
| 
      
 329 
     | 
    
         
            +
                        @properties['sim_sid']
         
     | 
| 
      
 330 
     | 
    
         
            +
                      end
         
     | 
| 
      
 331 
     | 
    
         
            +
             
     | 
| 
      
 332 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 333 
     | 
    
         
            +
                      # @return [String] The ICCID of the Super SIM that this IP Command was sent to or from
         
     | 
| 
      
 334 
     | 
    
         
            +
                      def sim_iccid
         
     | 
| 
      
 335 
     | 
    
         
            +
                        @properties['sim_iccid']
         
     | 
| 
      
 336 
     | 
    
         
            +
                      end
         
     | 
| 
      
 337 
     | 
    
         
            +
             
     | 
| 
      
 338 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 339 
     | 
    
         
            +
                      # @return [ip_command.Status] The status of the IP Command
         
     | 
| 
      
 340 
     | 
    
         
            +
                      def status
         
     | 
| 
      
 341 
     | 
    
         
            +
                        @properties['status']
         
     | 
| 
      
 342 
     | 
    
         
            +
                      end
         
     | 
| 
      
 343 
     | 
    
         
            +
             
     | 
| 
      
 344 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 345 
     | 
    
         
            +
                      # @return [ip_command.Direction] The direction of the IP Command
         
     | 
| 
      
 346 
     | 
    
         
            +
                      def direction
         
     | 
| 
      
 347 
     | 
    
         
            +
                        @properties['direction']
         
     | 
| 
      
 348 
     | 
    
         
            +
                      end
         
     | 
| 
      
 349 
     | 
    
         
            +
             
     | 
| 
      
 350 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 351 
     | 
    
         
            +
                      # @return [String] The IP address of the device that the IP Command was sent to or received from
         
     | 
| 
      
 352 
     | 
    
         
            +
                      def device_ip
         
     | 
| 
      
 353 
     | 
    
         
            +
                        @properties['device_ip']
         
     | 
| 
      
 354 
     | 
    
         
            +
                      end
         
     | 
| 
      
 355 
     | 
    
         
            +
             
     | 
| 
      
 356 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 357 
     | 
    
         
            +
                      # @return [String] The port that the IP Command either originated from or was sent to
         
     | 
| 
      
 358 
     | 
    
         
            +
                      def device_port
         
     | 
| 
      
 359 
     | 
    
         
            +
                        @properties['device_port']
         
     | 
| 
      
 360 
     | 
    
         
            +
                      end
         
     | 
| 
      
 361 
     | 
    
         
            +
             
     | 
| 
      
 362 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 363 
     | 
    
         
            +
                      # @return [ip_command.PayloadType] The payload type of the IP Command
         
     | 
| 
      
 364 
     | 
    
         
            +
                      def payload_type
         
     | 
| 
      
 365 
     | 
    
         
            +
                        @properties['payload_type']
         
     | 
| 
      
 366 
     | 
    
         
            +
                      end
         
     | 
| 
      
 367 
     | 
    
         
            +
             
     | 
| 
      
 368 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 369 
     | 
    
         
            +
                      # @return [String] The payload of the IP Command sent to or from the Super SIM
         
     | 
| 
      
 370 
     | 
    
         
            +
                      def payload
         
     | 
| 
      
 371 
     | 
    
         
            +
                        @properties['payload']
         
     | 
| 
      
 372 
     | 
    
         
            +
                      end
         
     | 
| 
      
 373 
     | 
    
         
            +
             
     | 
| 
      
 374 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 375 
     | 
    
         
            +
                      # @return [Time] The ISO 8601 date and time in GMT when the resource was created
         
     | 
| 
      
 376 
     | 
    
         
            +
                      def date_created
         
     | 
| 
      
 377 
     | 
    
         
            +
                        @properties['date_created']
         
     | 
| 
      
 378 
     | 
    
         
            +
                      end
         
     | 
| 
      
 379 
     | 
    
         
            +
             
     | 
| 
      
 380 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 381 
     | 
    
         
            +
                      # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
         
     | 
| 
      
 382 
     | 
    
         
            +
                      def date_updated
         
     | 
| 
      
 383 
     | 
    
         
            +
                        @properties['date_updated']
         
     | 
| 
      
 384 
     | 
    
         
            +
                      end
         
     | 
| 
      
 385 
     | 
    
         
            +
             
     | 
| 
      
 386 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 387 
     | 
    
         
            +
                      # @return [String] The absolute URL of the IP Command resource
         
     | 
| 
      
 388 
     | 
    
         
            +
                      def url
         
     | 
| 
      
 389 
     | 
    
         
            +
                        @properties['url']
         
     | 
| 
      
 390 
     | 
    
         
            +
                      end
         
     | 
| 
      
 391 
     | 
    
         
            +
             
     | 
| 
      
 392 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 393 
     | 
    
         
            +
                      # Fetch the IpCommandInstance
         
     | 
| 
      
 394 
     | 
    
         
            +
                      # @return [IpCommandInstance] Fetched IpCommandInstance
         
     | 
| 
      
 395 
     | 
    
         
            +
                      def fetch
         
     | 
| 
      
 396 
     | 
    
         
            +
                        context.fetch
         
     | 
| 
      
 397 
     | 
    
         
            +
                      end
         
     | 
| 
      
 398 
     | 
    
         
            +
             
     | 
| 
      
 399 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 400 
     | 
    
         
            +
                      # Provide a user friendly representation
         
     | 
| 
      
 401 
     | 
    
         
            +
                      def to_s
         
     | 
| 
      
 402 
     | 
    
         
            +
                        values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
         
     | 
| 
      
 403 
     | 
    
         
            +
                        "<Twilio.Supersim.V1.IpCommandInstance #{values}>"
         
     | 
| 
      
 404 
     | 
    
         
            +
                      end
         
     | 
| 
      
 405 
     | 
    
         
            +
             
     | 
| 
      
 406 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 407 
     | 
    
         
            +
                      # Provide a detailed, user friendly representation
         
     | 
| 
      
 408 
     | 
    
         
            +
                      def inspect
         
     | 
| 
      
 409 
     | 
    
         
            +
                        values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
         
     | 
| 
      
 410 
     | 
    
         
            +
                        "<Twilio.Supersim.V1.IpCommandInstance #{values}>"
         
     | 
| 
      
 411 
     | 
    
         
            +
                      end
         
     | 
| 
      
 412 
     | 
    
         
            +
                    end
         
     | 
| 
      
 413 
     | 
    
         
            +
                  end
         
     | 
| 
      
 414 
     | 
    
         
            +
                end
         
     | 
| 
      
 415 
     | 
    
         
            +
              end
         
     | 
| 
      
 416 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -17,6 +17,7 @@ module Twilio 
     | 
|
| 
       17 
17 
     | 
    
         
             
                      @version = 'v1'
         
     | 
| 
       18 
18 
     | 
    
         
             
                      @commands = nil
         
     | 
| 
       19 
19 
     | 
    
         
             
                      @fleets = nil
         
     | 
| 
      
 20 
     | 
    
         
            +
                      @ip_commands = nil
         
     | 
| 
       20 
21 
     | 
    
         
             
                      @networks = nil
         
     | 
| 
       21 
22 
     | 
    
         
             
                      @network_access_profiles = nil
         
     | 
| 
       22 
23 
     | 
    
         
             
                      @sims = nil
         
     | 
| 
         @@ -54,6 +55,21 @@ module Twilio 
     | 
|
| 
       54 
55 
     | 
    
         
             
                      end
         
     | 
| 
       55 
56 
     | 
    
         
             
                    end
         
     | 
| 
       56 
57 
     | 
    
         | 
| 
      
 58 
     | 
    
         
            +
                    ##
         
     | 
| 
      
 59 
     | 
    
         
            +
                    # @param [String] sid The SID of the IP Command resource to fetch.
         
     | 
| 
      
 60 
     | 
    
         
            +
                    # @return [Twilio::REST::Supersim::V1::IpCommandContext] if sid was passed.
         
     | 
| 
      
 61 
     | 
    
         
            +
                    # @return [Twilio::REST::Supersim::V1::IpCommandList]
         
     | 
| 
      
 62 
     | 
    
         
            +
                    def ip_commands(sid=:unset)
         
     | 
| 
      
 63 
     | 
    
         
            +
                      if sid.nil?
         
     | 
| 
      
 64 
     | 
    
         
            +
                          raise ArgumentError, 'sid cannot be nil'
         
     | 
| 
      
 65 
     | 
    
         
            +
                      end
         
     | 
| 
      
 66 
     | 
    
         
            +
                      if sid == :unset
         
     | 
| 
      
 67 
     | 
    
         
            +
                          @ip_commands ||= IpCommandList.new self
         
     | 
| 
      
 68 
     | 
    
         
            +
                      else
         
     | 
| 
      
 69 
     | 
    
         
            +
                          IpCommandContext.new(self, sid)
         
     | 
| 
      
 70 
     | 
    
         
            +
                      end
         
     | 
| 
      
 71 
     | 
    
         
            +
                    end
         
     | 
| 
      
 72 
     | 
    
         
            +
             
     | 
| 
       57 
73 
     | 
    
         
             
                    ##
         
     | 
| 
       58 
74 
     | 
    
         
             
                    # @param [String] sid The SID of the Network resource to fetch.
         
     | 
| 
       59 
75 
     | 
    
         
             
                    # @return [Twilio::REST::Supersim::V1::NetworkContext] if sid was passed.
         
     | 
| 
         @@ -46,6 +46,15 @@ module Twilio 
     | 
|
| 
       46 
46 
     | 
    
         
             
                    self.v1.fleets(sid)
         
     | 
| 
       47 
47 
     | 
    
         
             
                  end
         
     | 
| 
       48 
48 
     | 
    
         | 
| 
      
 49 
     | 
    
         
            +
                  ##
         
     | 
| 
      
 50 
     | 
    
         
            +
                  # @param [String] sid The unique string that we created to identify the IP Command
         
     | 
| 
      
 51 
     | 
    
         
            +
                  #   resource.
         
     | 
| 
      
 52 
     | 
    
         
            +
                  # @return [Twilio::REST::Supersim::V1::IpCommandInstance] if sid was passed.
         
     | 
| 
      
 53 
     | 
    
         
            +
                  # @return [Twilio::REST::Supersim::V1::IpCommandList]
         
     | 
| 
      
 54 
     | 
    
         
            +
                  def ip_commands(sid=:unset)
         
     | 
| 
      
 55 
     | 
    
         
            +
                    self.v1.ip_commands(sid)
         
     | 
| 
      
 56 
     | 
    
         
            +
                  end
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
       49 
58 
     | 
    
         
             
                  ##
         
     | 
| 
       50 
59 
     | 
    
         
             
                  # @param [String] sid The unique string that we created to identify the Network
         
     | 
| 
       51 
60 
     | 
    
         
             
                  #   resource.
         
     | 
| 
         @@ -35,9 +35,15 @@ module Twilio 
     | 
|
| 
       35 
35 
     | 
    
         
             
                        #   external system, such as your user's UUID, GUID, or SID.
         
     | 
| 
       36 
36 
     | 
    
         
             
                        # @param [access_token.FactorTypes] factor_type The Type of this Factor. Eg.
         
     | 
| 
       37 
37 
     | 
    
         
             
                        #   `push`
         
     | 
| 
      
 38 
     | 
    
         
            +
                        # @param [String] factor_friendly_name The friendly name of the factor that is
         
     | 
| 
      
 39 
     | 
    
         
            +
                        #   going to be created with this access token
         
     | 
| 
       38 
40 
     | 
    
         
             
                        # @return [AccessTokenInstance] Created AccessTokenInstance
         
     | 
| 
       39 
     | 
    
         
            -
                        def create(identity: nil, factor_type: nil)
         
     | 
| 
       40 
     | 
    
         
            -
                          data = Twilio::Values.of({ 
     | 
| 
      
 41 
     | 
    
         
            +
                        def create(identity: nil, factor_type: nil, factor_friendly_name: :unset)
         
     | 
| 
      
 42 
     | 
    
         
            +
                          data = Twilio::Values.of({
         
     | 
| 
      
 43 
     | 
    
         
            +
                              'Identity' => identity,
         
     | 
| 
      
 44 
     | 
    
         
            +
                              'FactorType' => factor_type,
         
     | 
| 
      
 45 
     | 
    
         
            +
                              'FactorFriendlyName' => factor_friendly_name,
         
     | 
| 
      
 46 
     | 
    
         
            +
                          })
         
     | 
| 
       41 
47 
     | 
    
         | 
| 
       42 
48 
     | 
    
         
             
                          payload = @version.create('POST', @uri, data: data)
         
     | 
| 
       43 
49 
     | 
    
         | 
| 
         @@ -219,8 +219,12 @@ module Twilio 
     | 
|
| 
       219 
219 
     | 
    
         
             
                          #   Must be between 3 and 8, inclusive
         
     | 
| 
       220 
220 
     | 
    
         
             
                          # @param [factor.TotpAlgorithms] config_alg The algorithm used to derive the TOTP
         
     | 
| 
       221 
221 
     | 
    
         
             
                          #   codes. Can be `sha1`, `sha256` or `sha512`
         
     | 
| 
      
 222 
     | 
    
         
            +
                          # @param [String] config_notification_platform The transport technology used to
         
     | 
| 
      
 223 
     | 
    
         
            +
                          #   generate the Notification Token. Can be `apn`, `fcm` or `none`.
         
     | 
| 
      
 224 
     | 
    
         
            +
                          #
         
     | 
| 
      
 225 
     | 
    
         
            +
                          #   Required when `factor_type` is `push`.
         
     | 
| 
       222 
226 
     | 
    
         
             
                          # @return [FactorInstance] Updated FactorInstance
         
     | 
| 
       223 
     | 
    
         
            -
                          def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset, config_time_step: :unset, config_skew: :unset, config_code_length: :unset, config_alg: :unset)
         
     | 
| 
      
 227 
     | 
    
         
            +
                          def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset, config_time_step: :unset, config_skew: :unset, config_code_length: :unset, config_alg: :unset, config_notification_platform: :unset)
         
     | 
| 
       224 
228 
     | 
    
         
             
                            data = Twilio::Values.of({
         
     | 
| 
       225 
229 
     | 
    
         
             
                                'AuthPayload' => auth_payload,
         
     | 
| 
       226 
230 
     | 
    
         
             
                                'FriendlyName' => friendly_name,
         
     | 
| 
         @@ -230,6 +234,7 @@ module Twilio 
     | 
|
| 
       230 
234 
     | 
    
         
             
                                'Config.Skew' => config_skew,
         
     | 
| 
       231 
235 
     | 
    
         
             
                                'Config.CodeLength' => config_code_length,
         
     | 
| 
       232 
236 
     | 
    
         
             
                                'Config.Alg' => config_alg,
         
     | 
| 
      
 237 
     | 
    
         
            +
                                'Config.NotificationPlatform' => config_notification_platform,
         
     | 
| 
       233 
238 
     | 
    
         
             
                            })
         
     | 
| 
       234 
239 
     | 
    
         | 
| 
       235 
240 
     | 
    
         
             
                            payload = @version.update('POST', @uri, data: data)
         
     | 
| 
         @@ -419,8 +424,12 @@ module Twilio 
     | 
|
| 
       419 
424 
     | 
    
         
             
                          #   Must be between 3 and 8, inclusive
         
     | 
| 
       420 
425 
     | 
    
         
             
                          # @param [factor.TotpAlgorithms] config_alg The algorithm used to derive the TOTP
         
     | 
| 
       421 
426 
     | 
    
         
             
                          #   codes. Can be `sha1`, `sha256` or `sha512`
         
     | 
| 
      
 427 
     | 
    
         
            +
                          # @param [String] config_notification_platform The transport technology used to
         
     | 
| 
      
 428 
     | 
    
         
            +
                          #   generate the Notification Token. Can be `apn`, `fcm` or `none`.
         
     | 
| 
      
 429 
     | 
    
         
            +
                          #
         
     | 
| 
      
 430 
     | 
    
         
            +
                          #   Required when `factor_type` is `push`.
         
     | 
| 
       422 
431 
     | 
    
         
             
                          # @return [FactorInstance] Updated FactorInstance
         
     | 
| 
       423 
     | 
    
         
            -
                          def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset, config_time_step: :unset, config_skew: :unset, config_code_length: :unset, config_alg: :unset)
         
     | 
| 
      
 432 
     | 
    
         
            +
                          def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset, config_time_step: :unset, config_skew: :unset, config_code_length: :unset, config_alg: :unset, config_notification_platform: :unset)
         
     | 
| 
       424 
433 
     | 
    
         
             
                            context.update(
         
     | 
| 
       425 
434 
     | 
    
         
             
                                auth_payload: auth_payload,
         
     | 
| 
       426 
435 
     | 
    
         
             
                                friendly_name: friendly_name,
         
     | 
| 
         @@ -430,6 +439,7 @@ module Twilio 
     | 
|
| 
       430 
439 
     | 
    
         
             
                                config_skew: config_skew,
         
     | 
| 
       431 
440 
     | 
    
         
             
                                config_code_length: config_code_length,
         
     | 
| 
       432 
441 
     | 
    
         
             
                                config_alg: config_alg,
         
     | 
| 
      
 442 
     | 
    
         
            +
                                config_notification_platform: config_notification_platform,
         
     | 
| 
       433 
443 
     | 
    
         
             
                            )
         
     | 
| 
       434 
444 
     | 
    
         
             
                          end
         
     | 
| 
       435 
445 
     | 
    
         | 
| 
         @@ -56,8 +56,8 @@ module Twilio 
     | 
|
| 
       56 
56 
     | 
    
         
             
                          #
         
     | 
| 
       57 
57 
     | 
    
         
             
                          #   Required when `factor_type` is `push`.
         
     | 
| 
       58 
58 
     | 
    
         
             
                          # @param [new_factor.NotificationPlatforms] config_notification_platform The
         
     | 
| 
       59 
     | 
    
         
            -
                          #   transport technology used to generate the Notification Token. Can be `apn 
     | 
| 
       60 
     | 
    
         
            -
                          #   `fcm`.
         
     | 
| 
      
 59 
     | 
    
         
            +
                          #   transport technology used to generate the Notification Token. Can be `apn`,
         
     | 
| 
      
 60 
     | 
    
         
            +
                          #   `fcm` or `none`.
         
     | 
| 
       61 
61 
     | 
    
         
             
                          #
         
     | 
| 
       62 
62 
     | 
    
         
             
                          #   Required when `factor_type` is `push`.
         
     | 
| 
       63 
63 
     | 
    
         
             
                          # @param [String] config_notification_token For APN, the device token. For FCM,
         
     | 
| 
         @@ -60,8 +60,11 @@ module Twilio 
     | 
|
| 
       60 
60 
     | 
    
         
             
                      # @param [Boolean] audio_only When set to true, indicates that the participants in
         
     | 
| 
       61 
61 
     | 
    
         
             
                      #   the room will only publish audio. No video tracks will be allowed. Group rooms
         
     | 
| 
       62 
62 
     | 
    
         
             
                      #   only.
         
     | 
| 
      
 63 
     | 
    
         
            +
                      # @param [String] max_participant_duration The maximum number of seconds a
         
     | 
| 
      
 64 
     | 
    
         
            +
                      #   Participant can be connected to the room. The maximum possible value is 86400
         
     | 
| 
      
 65 
     | 
    
         
            +
                      #   seconds (24 hours). The default is 14400 seconds (4 hours).
         
     | 
| 
       63 
66 
     | 
    
         
             
                      # @return [RoomInstance] Created RoomInstance
         
     | 
| 
       64 
     | 
    
         
            -
                      def create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset, recording_rules: :unset, audio_only: :unset)
         
     | 
| 
      
 67 
     | 
    
         
            +
                      def create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset, recording_rules: :unset, audio_only: :unset, max_participant_duration: :unset)
         
     | 
| 
       65 
68 
     | 
    
         
             
                        data = Twilio::Values.of({
         
     | 
| 
       66 
69 
     | 
    
         
             
                            'EnableTurn' => enable_turn,
         
     | 
| 
       67 
70 
     | 
    
         
             
                            'Type' => type,
         
     | 
| 
         @@ -74,6 +77,7 @@ module Twilio 
     | 
|
| 
       74 
77 
     | 
    
         
             
                            'MediaRegion' => media_region,
         
     | 
| 
       75 
78 
     | 
    
         
             
                            'RecordingRules' => Twilio.serialize_object(recording_rules),
         
     | 
| 
       76 
79 
     | 
    
         
             
                            'AudioOnly' => audio_only,
         
     | 
| 
      
 80 
     | 
    
         
            +
                            'MaxParticipantDuration' => max_participant_duration,
         
     | 
| 
       77 
81 
     | 
    
         
             
                        })
         
     | 
| 
       78 
82 
     | 
    
         | 
| 
       79 
83 
     | 
    
         
             
                        payload = @version.create('POST', @uri, data: data)
         
     | 
| 
         @@ -364,6 +368,7 @@ module Twilio 
     | 
|
| 
       364 
368 
     | 
    
         
             
                            'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
         
     | 
| 
       365 
369 
     | 
    
         
             
                            'type' => payload['type'],
         
     | 
| 
       366 
370 
     | 
    
         
             
                            'max_participants' => payload['max_participants'].to_i,
         
     | 
| 
      
 371 
     | 
    
         
            +
                            'max_participant_duration' => payload['max_participant_duration'].to_i,
         
     | 
| 
       367 
372 
     | 
    
         
             
                            'max_concurrent_published_tracks' => payload['max_concurrent_published_tracks'] == nil ? payload['max_concurrent_published_tracks'] : payload['max_concurrent_published_tracks'].to_i,
         
     | 
| 
       368 
373 
     | 
    
         
             
                            'record_participants_on_connect' => payload['record_participants_on_connect'],
         
     | 
| 
       369 
374 
     | 
    
         
             
                            'video_codecs' => payload['video_codecs'],
         
     | 
| 
         @@ -467,6 +472,12 @@ module Twilio 
     | 
|
| 
       467 
472 
     | 
    
         
             
                        @properties['max_participants']
         
     | 
| 
       468 
473 
     | 
    
         
             
                      end
         
     | 
| 
       469 
474 
     | 
    
         | 
| 
      
 475 
     | 
    
         
            +
                      ##
         
     | 
| 
      
 476 
     | 
    
         
            +
                      # @return [String] The maximum number of seconds a Participant can be connected to the room
         
     | 
| 
      
 477 
     | 
    
         
            +
                      def max_participant_duration
         
     | 
| 
      
 478 
     | 
    
         
            +
                        @properties['max_participant_duration']
         
     | 
| 
      
 479 
     | 
    
         
            +
                      end
         
     | 
| 
      
 480 
     | 
    
         
            +
             
     | 
| 
       470 
481 
     | 
    
         
             
                      ##
         
     | 
| 
       471 
482 
     | 
    
         
             
                      # @return [String] The maximum number of published tracks allowed in the room at the same time
         
     | 
| 
       472 
483 
     | 
    
         
             
                      def max_concurrent_published_tracks
         
     |