Overview

Namespaces

  • LINE
    • LINEBot
      • Constant
      • Event
        • MessageEvent
        • Parser
      • Exception
      • HTTPClient
      • ImagemapActionBuilder
      • MessageBuilder
        • Imagemap
        • TemplateBuilder
      • TemplateActionBuilder

Classes

  • LINE\LINEBot
  • LINE\LINEBot\Constant\ActionType
  • LINE\LINEBot\Constant\EventSourceType
  • LINE\LINEBot\Constant\HTTPHeader
  • LINE\LINEBot\Constant\MessageType
  • LINE\LINEBot\Constant\Meta
  • LINE\LINEBot\Constant\TemplateType
  • LINE\LINEBot\Event\BaseEvent
  • LINE\LINEBot\Event\BeaconDetectionEvent
  • LINE\LINEBot\Event\FollowEvent
  • LINE\LINEBot\Event\JoinEvent
  • LINE\LINEBot\Event\LeaveEvent
  • LINE\LINEBot\Event\MessageEvent
  • LINE\LINEBot\Event\MessageEvent\AudioMessage
  • LINE\LINEBot\Event\MessageEvent\ImageMessage
  • LINE\LINEBot\Event\MessageEvent\LocationMessage
  • LINE\LINEBot\Event\MessageEvent\StickerMessage
  • LINE\LINEBot\Event\MessageEvent\TextMessage
  • LINE\LINEBot\Event\MessageEvent\VideoMessage
  • LINE\LINEBot\Event\Parser\EventRequestParser
  • LINE\LINEBot\Event\PostbackEvent
  • LINE\LINEBot\Event\UnfollowEvent
  • LINE\LINEBot\HTTPClient\Curl
  • LINE\LINEBot\HTTPClient\CurlHTTPClient
  • LINE\LINEBot\ImagemapActionBuilder\AreaBuilder
  • LINE\LINEBot\ImagemapActionBuilder\ImagemapMessageActionBuilder
  • LINE\LINEBot\ImagemapActionBuilder\ImagemapUriActionBuilder
  • LINE\LINEBot\MessageBuilder\AudioMessageBuilder
  • LINE\LINEBot\MessageBuilder\Imagemap\BaseSizeBuilder
  • LINE\LINEBot\MessageBuilder\ImagemapMessageBuilder
  • LINE\LINEBot\MessageBuilder\ImageMessageBuilder
  • LINE\LINEBot\MessageBuilder\LocationMessageBuilder
  • LINE\LINEBot\MessageBuilder\MultiMessageBuilder
  • LINE\LINEBot\MessageBuilder\StickerMessageBuilder
  • LINE\LINEBot\MessageBuilder\TemplateBuilder\ButtonTemplateBuilder
  • LINE\LINEBot\MessageBuilder\TemplateBuilder\CarouselColumnTemplateBuilder
  • LINE\LINEBot\MessageBuilder\TemplateBuilder\CarouselTemplateBuilder
  • LINE\LINEBot\MessageBuilder\TemplateBuilder\ConfirmTemplateBuilder
  • LINE\LINEBot\MessageBuilder\TemplateMessageBuilder
  • LINE\LINEBot\MessageBuilder\TextMessageBuilder
  • LINE\LINEBot\MessageBuilder\VideoMessageBuilder
  • LINE\LINEBot\Response
  • LINE\LINEBot\SignatureValidator
  • LINE\LINEBot\TemplateActionBuilder\MessageTemplateActionBuilder
  • LINE\LINEBot\TemplateActionBuilder\PostbackTemplateActionBuilder
  • LINE\LINEBot\TemplateActionBuilder\UriTemplateActionBuilder

Interfaces

  • LINE\LINEBot\HTTPClient
  • LINE\LINEBot\ImagemapActionBuilder
  • LINE\LINEBot\MessageBuilder
  • LINE\LINEBot\MessageBuilder\TemplateBuilder
  • LINE\LINEBot\TemplateActionBuilder

Exceptions

  • LINE\LINEBot\Exception\CurlExecutionException
  • LINE\LINEBot\Exception\InvalidEventRequestException
  • LINE\LINEBot\Exception\InvalidEventSourceException
  • LINE\LINEBot\Exception\InvalidSignatureException
  • LINE\LINEBot\Exception\UnknownEventTypeException
  • LINE\LINEBot\Exception\UnknownMessageTypeException
  • Overview
  • Namespace
  • Class
  1: <?php
  2: 
  3: /**
  4:  * Copyright 2016 LINE Corporation
  5:  *
  6:  * LINE Corporation licenses this file to you under the Apache License,
  7:  * version 2.0 (the "License"); you may not use this file except in compliance
  8:  * with the License. You may obtain a copy of the License at:
  9:  *
 10:  *   https://www.apache.org/licenses/LICENSE-2.0
 11:  *
 12:  * Unless required by applicable law or agreed to in writing, software
 13:  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 14:  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 15:  * License for the specific language governing permissions and limitations
 16:  * under the License.
 17:  */
 18: 
 19: namespace LINE\LINEBot;
 20: 
 21: /**
 22:  * A class represents API response.
 23:  *
 24:  * @package LINE\LINEBot
 25:  */
 26: class Response
 27: {
 28:     /** @var int */
 29:     private $httpStatus;
 30:     /** @var string */
 31:     private $body;
 32:     /** @var string[] */
 33:     private $headers;
 34: 
 35:     /**
 36:      * Response constructor.
 37:      *
 38:      * @param int $httpStatus HTTP status code of response.
 39:      * @param string $body Request body.
 40:      * @param string[] $headers
 41:      */
 42:     public function __construct($httpStatus, $body, $headers = [])
 43:     {
 44:         $this->httpStatus = $httpStatus;
 45:         $this->body = $body;
 46:         $this->headers = $headers;
 47:     }
 48: 
 49:     /**
 50:      * Returns HTTP status code of response.
 51:      *
 52:      * @return int HTTP status code of response.
 53:      */
 54:     public function getHTTPStatus()
 55:     {
 56:         return $this->httpStatus;
 57:     }
 58: 
 59:     /**
 60:      * Returns request is succeeded or not.
 61:      *
 62:      * @return bool Request is succeeded or not.
 63:      */
 64:     public function isSucceeded()
 65:     {
 66:         return $this->httpStatus === 200;
 67:     }
 68: 
 69:     /**
 70:      * Returns raw response body.
 71:      *
 72:      * @return string Raw request body.
 73:      */
 74:     public function getRawBody()
 75:     {
 76:         return $this->body;
 77:     }
 78: 
 79:     /**
 80:      * Returns response body as array (it means, returns JSON decoded body).
 81:      *
 82:      * @return array Request body that is JSON decoded.
 83:      */
 84:     public function getJSONDecodedBody()
 85:     {
 86:         return json_decode($this->body, true);
 87:     }
 88: 
 89:     /**
 90:      * Returns the value of the specified response header.
 91:      *
 92:      * @param string $name A String specifying the header name.
 93:      * @return string|null A response header string, or null if the response does not have a header of that name.
 94:      */
 95:     public function getHeader($name)
 96:     {
 97:         if (array_key_exists($name, $this->headers)) {
 98:             return $this->headers[$name];
 99:         }
100:         return null;
101:     }
102: 
103:     /**
104:      * Returns all of response headers.
105:      *
106:      * @return string[] All of the response headers.
107:      */
108:     public function getHeaders()
109:     {
110:         return $this->headers;
111:     }
112: }
113: 
line-bot-sdk-php API documentation generated by ApiGen