File tree Expand file tree Collapse file tree 2 files changed +32
-19
lines changed
Expand file tree Collapse file tree 2 files changed +32
-19
lines changed Original file line number Diff line number Diff line change 1- #! /bin/sh
2- ENVRC_FILE=" .envrc"
1+ #!/usr/bin/env ruby
32
4- if [ ! -f " $ENVRC_FILE " ]; then
5- echo " $ENVRC_FILE が見つかりません"
6- exit 1
7- fi
3+ require 'connpass_api_v2'
4+ require 'uri'
85
9- source " $ENVRC_FILE "
6+ puts ( 'CONNPASS_API_KEY が設定されていません' ) && exit ( 1 ) if ENV [ 'CONNPASS_API_KEY' ] . empty?
7+ puts ( 'Usage: c-search [CONNPASS_EVENT_URL | CONNPASS_EVENT_ID]' ) && exit ( 1 ) if ARGV . empty?
108
11- if [ -z " $FIXIE_URL " ]; then
12- echo " FIXIE_URL が設定されていません"
13- exit 1
14- fi
9+ input = ARGV [ 0 ]
10+ event_id = nil
11+ if input =~ /^https?:\/ \/ /
12+ # URLからイベントIDを抽出
13+ event_id = URI ( input ) . path [ %r{event/(\d +)} , 1 ]
14+ else
15+ event_id = input . gsub ( /\D / , '' )
16+ end
17+
18+ unless event_id && !event_id . empty?
19+ puts "イベントIDが特定できませんでした: #{ input } "
20+ exit 1
21+ end
22+
23+ client = ConnpassApiV2 . client ( ENV [ 'CONNPASS_API_KEY' ] )
24+ result = client . get_events ( event_id : event_id )
1525
16- if [ $# -eq 0 ]
17- then
18- echo " Usage: c-search [CONNPASS_EVENT_URL | CONNPASS_EVENT_ID]"
26+ if result . results_returned > 0
27+ event = result . events . first
28+ puts event . fetch ( 'id' )
29+ #puts "id: #{event.fetch('id')}"
30+ #puts "title: #{event.fetch('title')}"
31+ #puts "group_id: #{event.fetch('group').fetch('id')}"
32+ #puts "group_name: #{event.fetch('group').fetch('title')}"
1933else
20- id=$( echo $1 | sed -e ' s/[^0-9]//g' )
21- curl -x " $FIXIE_URL " -sL " https://connpass.com/api/v1/event/?event_id=${id} " | jq " .events[].series.id"
22- fi
34+ puts "イベントが見つかりませんでした (event_id: #{ event_id } )"
35+ end
Original file line number Diff line number Diff line change @@ -34,7 +34,7 @@ FileUtils.chdir APP_ROOT do
3434 #today = Time.now.in_time_zone('Tokyo').to_date
3535 #from = (today - 90).strftime('%Y%m')
3636 #to = today.prev_month.strftime('%Y%m')
37- #if ENV['DOORKEEPER_API_TOKEN'] && ENV['FIXIE_URL ']
37+ #if ENV['DOORKEEPER_API_TOKEN'] && ENV['CONNPASS_API_KEY ']
3838 # system! "bin/rails statistics:aggregation[#{from},#{to}]"
3939 # system! 'bin/rails upcoming_events:aggregation'
4040 #elsif ENV['DOORKEEPER_API_TOKEN']
@@ -43,7 +43,7 @@ FileUtils.chdir APP_ROOT do
4343 # system! 'bin/rails upcoming_events:aggregation[connpass]'
4444 #else
4545 # puts <<~MESSAGE
46- # 環境変数 DOORKEEPER_API_TOKEN と FIXIE_URL が設定されていないため、
46+ # 環境変数 DOORKEEPER_API_TOKEN と CONNPASS_API_KEY が設定されていないため、
4747 # Doorkeeper API や connpass API を使ったイベント情報の取得をスキップします。
4848 #
4949 # なお API 経由でイベント情報を取得しなくても、rails server は実行可能です。
You can’t perform that action at this time.
0 commit comments