module ChatWork::Client::MessageMethods
Public Instance Methods
Add new message to the chat
@see developer.chatwork.com/ja/endpoint_rooms.html#POST-rooms-room_id-messages @see download.chatwork.com/ChatWork_API_Documentation.pdf
@param room_id [Integer] @param body [String] message body @param self_unread [Boolean] Whether to add the added message as unread by looking at it from myself
@yield [response_body, response_header] if block was given, return response body and response header through block arguments @yieldparam response_body [Hashie::Mash] response body @yieldparam response_header [Hash<String, String>] response header (e.g. X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset)
@return [Hashie::Mash]
@example response format
{ "message_id": "1234" }
# File lib/chatwork/client/message_methods.rb, line 55 def create_message(room_id:, body:, self_unread: false, &block) post("/rooms/#{room_id}/messages", body: body, self_unread: boolean_to_integer(self_unread), &block) end
Destroy the specified message
@see developer.chatwork.com/ja/endpoint_rooms.html#PUT-rooms-room_id-messages-message_id @see download.chatwork.com/ChatWork_API_Documentation.pdf
@param room_id [Integer] @param message_id [String]
@yield [response_body, response_header] if block was given, return response body and response header through block arguments @yieldparam response_body [Hashie::Mash] response body @yieldparam response_header [Hash<String, String>] response header (e.g. X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset)
@return [Hashie::Mash]
@example response format
{ "message_id": "1234" }
# File lib/chatwork/client/message_methods.rb, line 176 def destroy_message(room_id:, message_id:, &block) delete("/rooms/#{room_id}/messages/#{message_id}", &block) end
Get information about the specified message
@see developer.chatwork.com/ja/endpoint_rooms.html#GET-rooms-room_id-messages-message_id @see download.chatwork.com/ChatWork_API_Documentation.pdf
@param room_id [Integer] @param message_id [String]
@yield [response_body, response_header] if block was given, return response body and response header through block arguments @yieldparam response_body [Hashie::Mash] response body @yieldparam response_header [Hash<String, String>] response header (e.g. X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset)
@return [Hashie::Mash]
@example response format
{ "message_id": "5", "account": { "account_id": 123, "name": "Bob", "avatar_image_url": "https://example.com/ico_avatar.png" }, "body": "Hello Chatwork!", "send_time": 1384242850, "update_time": 0 }
# File lib/chatwork/client/message_methods.rb, line 131 def find_message(room_id:, message_id:, &block) get("/rooms/#{room_id}/messages/#{message_id}", &block) end
Get all messages associated with the specified chat (returns up to 100 entries).
If the parameter is not set, it returns the next 100 entries from previous call.
@see developer.chatwork.com/ja/endpoint_rooms.html#GET-rooms-room_id-messages @see download.chatwork.com/ChatWork_API_Documentation.pdf
@param room_id [Integer] @param force [Boolean, Integer] Flag which forces to get 100 newest entries regardless of previous calls.
@yield [response_body, response_header] if block was given, return response body and response header through block arguments @yieldparam response_body [Array<Hashie::Mash>] response body @yieldparam response_header [Hash<String, String>] response header (e.g. X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset)
@return [Array<Hashie::Mash>]
@example response format
[ { "message_id": "5", "account": { "account_id": 123, "name": "Bob", "avatar_image_url": "https://example.com/ico_avatar.png" }, "body": "Hello Chatwork!", "send_time": 1384242850, "update_time": 0 } ]
# File lib/chatwork/client/message_methods.rb, line 32 def get_messages(room_id:, force: nil, &block) get("/rooms/#{room_id}/messages", force: boolean_to_integer(force), &block) end
Mark messages as read
@see developer.chatwork.com/ja/endpoint_rooms.html#PUT-rooms-room_id-messages-read @see download.chatwork.com/ChatWork_API_Documentation.pdf
@param room_id [Integer] @param message_id [String]
@yield [response_body, response_header] if block was given, return response body and response header through block arguments @yieldparam response_body [Hashie::Mash] response body @yieldparam response_header [Hash<String, String>] response header (e.g. X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset)
@return [Hashie::Mash]
@example response format
{ "unread_num": 461, "mention_num": 0 }
# File lib/chatwork/client/message_methods.rb, line 78 def read_message(room_id:, message_id: nil, &block) put("/rooms/#{room_id}/messages/read", message_id: message_id, &block) end
Mark messages as unread
@see developer.chatwork.com/ja/endpoint_rooms.html#PUT-rooms-room_id-messages-unread @see download.chatwork.com/ChatWork_API_Documentation.pdf
@param room_id [Integer] @param message_id [String]
@yield [response_body, response_header] if block was given, return response body and response header through block arguments @yieldparam response_body [Hashie::Mash] response body @yieldparam response_header [Hash<String, String>] response header (e.g. X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset)
@return [Hashie::Mash]
@example response format
{ "unread_num": 3, "mention_num": 0 }
# File lib/chatwork/client/message_methods.rb, line 101 def unread_message(room_id:, message_id:, &block) put("/rooms/#{room_id}/messages/unread", message_id: message_id, &block) end
Update the specified message
@see developer.chatwork.com/ja/endpoint_rooms.html#PUT-rooms-room_id-messages-message_id @see download.chatwork.com/ChatWork_API_Documentation.pdf
@param room_id [Integer] @param message_id [String] @param body [String] message body
@yield [response_body, response_header] if block was given, return response body and response header through block arguments @yieldparam response_body [Hashie::Mash] response body @yieldparam response_header [Hash<String, String>] response header (e.g. X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset)
@return [Hashie::Mash]
@example response format
{ "message_id": "1234" }
# File lib/chatwork/client/message_methods.rb, line 154 def update_message(room_id:, message_id:, body:, &block) put("/rooms/#{room_id}/messages/#{message_id}", body: body, &block) end