chatwork API の使い方 (Ruby)


chatwork へのメッセージの書き込みと、読み取りです。

書き込み
APIトークン と room_id は書き換えて下さい。

send_message.rb
#! /usr/bin/ruby
# -*- encoding: utf-8 -*-
#
#   send_message.rb
#
#                   Nov/22/2018
#
# ---------------------------------------------------------------------
require 'faraday'
require 'json'
#
# ---------------------------------------------------------------------
STDERR.puts "*** 開始 ***"
#
URL="https://api.chatwork.com/v2/rooms/11111178/messages"
#
#args = {}
message = "今は、午後3時半です。\n"
message += "日が差してきました。\n"
con = Faraday.new 
res = con.post do |req|
    req.url URL
    req.headers['X-ChatWorkToken'] = 'e12321ef233d8a92deb1cc15bc09b79e'
    req.body = {
    :body => message
  }
#   req.body = JSON.pretty_generate(args)
end

puts    res
puts    res.status
puts    res.body

json_str = res.body

dict_data=JSON.parse(json_str)
#
#puts   "Host:\t" + dict_data['headers']['Host']
#puts   "origin:\t" + dict_data['origin']
#puts   "url:\t" + dict_data['url']
#
STDERR.puts "*** 終了 ***"
# ---------------------------------------------------------------------

読み込み

get_message.rb
#! /usr/bin/ruby
# -*- encoding: utf-8 -*-
#
#   get_message.rb
#
#                   Nov/22/2018
#
# ---------------------------------------------------------------------
require 'faraday'
require 'json'
#
# ---------------------------------------------------------------------
STDERR.puts "*** 開始 ***"
#
URL="https://api.chatwork.com/v2/rooms/11111178/messages?force=1"
#
con = Faraday.new
res = con.get do |req|
    req.url URL
    req.headers['X-ChatWorkToken'] = 'e12321ef233d8a92deb1cc15bc09b79e'
end
#

STDERR.puts res.status

puts    res.body

json_str = res.body

dict_data=JSON.parse(json_str)
#
#puts   "Host:\t" + dict_data['headers']['Host']
#puts   "origin:\t" + dict_data['origin']
#puts   "url:\t" + dict_data['url']
#
STDERR.puts "*** 終了 ***"
# ---------------------------------------------------------------------

メッセージの削除

delete_message.rb
#! /usr/bin/ruby
# -*- encoding: utf-8 -*-
#
#   delete_message.rb
#
#                   Nov/22/2018
#
# ---------------------------------------------------------------------
require 'faraday'
require 'json'
#
# ---------------------------------------------------------------------
STDERR.puts "*** 開始 ***"
#
MESSAGE_ID = "1117341951608324096"
URL="https://api.chatwork.com/v2/rooms/11111178/messages/" + MESSAGE_ID
#
con = Faraday.new
res = con.delete do |req|
    req.url URL
    req.headers['X-ChatWorkToken'] = 'e12321ef233d8a92deb1cc15bc09b79e'
end
#

STDERR.puts res.status

puts    res.body

json_str = res.body
#
#
STDERR.puts "*** 終了 ***"
# ---------------------------------------------------------------------