cafe_basics 0.0.37 → 0.0.50

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cafe_basics.rb +60 -18
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9076d66ab295d8bff24c25d9c6ef9491188a8fe2ec1ef0a580230989a527f8b3
4
- data.tar.gz: ca38f98b1421f51f08d80a1c2218e7b2ac7e44dd2f4e41722a1ddb2102b88d8c
3
+ metadata.gz: c0d42592e75b24fb39c3052fc0bd7ff55cb1af18d95dd46a7acc0228decbee2b
4
+ data.tar.gz: 1365b7e16a2225dd5ceeda0ec6298eb4497fbc26a039c4bb09d6e2a13739ce69
5
5
  SHA512:
6
- metadata.gz: af0cd6a2b838c835838022be97e9aabd69b6bfffce34e95919e2d7ca042edeeccf8f28108d321a4dd23100fbd9be9336da14d3dfed43618779f72cce836e7898
7
- data.tar.gz: be1fcfc56e05eab719f71678019bd5bb8f8ff7d40c2b7e5634a182dc4fa015afad72f4c13ea80cbe50a31a79ae43a7025f1c1dfa209df2535aaa47a9ab5bdeed
6
+ metadata.gz: 96f4f2074dbbbf3ff2000b7938352bbd104e4b8ca008ddb6ded5fdea24694e52a84e47e1eb1c8f8ed005caaacb92c1d9c3800286f5eee0242ea986690d1bed32
7
+ data.tar.gz: 7a46539da88ca48ae1345d141e08084736cb037b940646948bfe9646d87fcdddf146760cd9f8ff994f1df1a16a189c3e384433bbc769424165d4e4c3c5414658
data/lib/cafe_basics.rb CHANGED
@@ -2122,36 +2122,78 @@ class Wordpress
2122
2122
  puts table[10]
2123
2123
  if table[7].to_i > table[10].to_i
2124
2124
  if @data['포스트설정']['테더링'].checked?
2125
- puts 'tedering ip change...'
2125
+ puts 'tethering ip change...'
2126
+
2127
+ # ADB devices 확인
2126
2128
  stdout, stderr, status = Open3.capture3('./adb devices')
2127
- if status.success?
2128
- device_id = stdout.split("\n")[1].split("\t")[0]
2129
- puts device_id
2130
- puts 'adb -s '+device_id+' shell svc data disable'
2131
- stdout2, stderr2, status2 = Open3.capture3('./adb -s '+device_id+' shell svc data disable')
2129
+ if status.success?
2130
+ device_id = stdout.split("\n")[1].split("\t")[0]
2131
+ puts device_id
2132
+
2133
+ # ADB 서버 초기화
2134
+ puts 'adb kill-server'
2135
+ Open3.capture3('adb kill-server')
2136
+ sleep(2)
2137
+
2138
+ # 다시 ADB 서버 실행
2139
+ puts 'adb start-server'
2140
+ Open3.capture3('adb start-server')
2141
+ sleep(2)
2142
+
2143
+ # 데이터를 끄고 켜기
2144
+ puts 'adb -s ' + device_id + ' shell svc data disable'
2145
+ stdout2, stderr2, status2 = Open3.capture3('./adb -s ' + device_id + ' shell svc data disable')
2146
+
2147
+ if status2.success?
2132
2148
  sleep(3)
2133
- puts 'adb -s '+device_id+' shell svc data enable'
2134
- Open3.capture3('./adb -s '+device_id+' shell svc data enable')
2149
+ puts 'adb -s ' + device_id + ' shell svc data enable'
2150
+ Open3.capture3('./adb -s ' + device_id + ' shell svc data enable')
2135
2151
  sleep(3)
2136
2152
  puts 'adb ok'
2137
2153
  sleep(8)
2138
- robot_ip = lambda do
2154
+
2155
+ # IP 확인 및 재시도 (반복문 사용)
2156
+ retry_count = 0
2157
+ max_retries = 5
2158
+ current_ip = nil
2159
+
2160
+ # 무한 루프 방지
2161
+ while retry_count < max_retries
2162
+ begin
2139
2163
  http = HTTP.get('https://www.findip.kr/')
2140
2164
  noko = Nokogiri::HTML(http.to_s)
2141
- if noko.xpath('/html/body/header/h2').text != @my_ip
2142
- @my_ip = noko.xpath('/html/body/header/h2').text
2165
+ new_ip = noko.xpath('/html/body/header/h2').text.strip
2166
+
2167
+ puts "Current IP: #{@my_ip}, New IP: #{new_ip}"
2168
+
2169
+ # IP가 변경되었으면 @my_ip를 갱신하고 종료
2170
+ if new_ip != @my_ip
2171
+ @my_ip = new_ip
2172
+ puts "IP 변경됨: #{@my_ip}"
2173
+ break
2143
2174
  else
2144
- puts @my_ip
2145
- puts '재시도...'
2146
- sleep(3)
2147
- robot_ip[]
2175
+ puts 'IP가 변경되지 않음. 재시도...'
2176
+ retry_count += 1
2177
+ sleep(3) # 3초 후 재시도
2148
2178
  end
2179
+ rescue => e
2180
+ retry_count += 1
2181
+ sleep(3) # 3초 후 재시도
2182
+ end
2183
+
2184
+ # 최대 재시도 횟수를 초과하면 예외 발생시키기
2185
+ if retry_count >= max_retries
2186
+ raise "최대 재시도 횟수 초과. IP 변경 실패."
2187
+ end
2149
2188
  end
2150
- robot_ip[]
2189
+ else
2190
+ puts 'Failed to disable data. Error: ' + stderr2
2191
+ end
2151
2192
  else
2152
- puts 'adb error pass'
2193
+ puts 'adb error, unable to get devices. Error: ' + stderr
2153
2194
  end
2154
- end
2195
+ end
2196
+
2155
2197
 
2156
2198
  check_success = 1
2157
2199
  @data['table'][index][-1] = 0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cafe_basics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.37
4
+ version: 0.0.50
5
5
  platform: ruby
6
6
  authors:
7
7
  - zon